Check ID:
Provider: AWS
Service:
Severity: LOW
Categories:
Resource type:
cloudfront_distributions_field_level_encryption_enabledProvider: AWS
Service:
cloudfrontSeverity: LOW
Categories:
encryptionResource type:
AwsCloudFrontDistributionWhat this check verifies
CloudFront distributions have the default cache behavior associated with Field-Level Encryption viafield_level_encryption_id, targeting specified request fields for edge encryption.
Risk
Absent field-level encryption, sensitive inputs (PII, payment data, credentials) may surface in origin paths, logs, or middleware in plaintext. This undermines confidentiality, enables data exfiltration and insider misuse, and can lead to session or account compromise if tokens are captured.Recommendation
Enable Field-Level Encryption for sensitive request fields and bind it to relevant cache behaviors. Apply least privilege to decryption keys, rotate and monitor keys, and separate duties. As defense in depth, minimize data collection, avoid logging secrets, require HTTPS end-to-end, and validate inputs.Remediation
- CLI
- Terraform
- Native IaC
- Dashboard steps
aws cloudfront create-field-level-encryption-config —field-level-encryption-config file://fle-config.json && aws cloudfront get-distribution-config —id <DISTRIBUTION_ID> —output json > current-config.json && echo ‘Manually edit current-config.json to add FieldLevelEncryptionId to DefaultCacheBehavior, then run:’ && echo ‘aws cloudfront update-distribution —id <DISTRIBUTION_ID> —distribution-config file://current-config.json —if-match $(aws cloudfront get-distribution-config —id <DISTRIBUTION_ID> —query “ETag” —output text)’
References
- https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html
- https://www.trendmicro.com/trendaivisiononecloudriskmanagement/knowledge-base/aws/CloudFront/field-level-encryption-enabled.html
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = cloudfront_distributions_field_level_encryption_enabled. To re-evaluate after a fix, hit Run now on the account’s schedule under Cloud Security → Schedules — the next scan re-checks this control and marks the finding fixed or keeps it persistent.
← Back to AWS checks