| name | cis-aws-foundations-4.5 |
| description | Ensure CloudTrail logs are encrypted at rest using KMS CMKs |
| category | cis-logging |
| version | 7.0.0 |
| author | cyberstrike-official |
| tags | ["cis","aws","logging","cloudtrail","kms","encryption","sse-kms","cmk"] |
| cis_id | 4.5 |
| cis_benchmark | CIS AWS Foundations Benchmark v7.0.0 |
| tech_stack | ["aws"] |
| cwe_ids | [] |
| chains_with | ["cis-aws-foundations-4.1","cis-aws-foundations-4.6"] |
| prerequisites | [] |
| severity_boost | {} |
Ensure CloudTrail logs are encrypted at rest using KMS CMKs
Description
AWS CloudTrail is a web service that records AWS API calls for an account and makes those logs available to users and resources in accordance with IAM policies. AWS Key Management Service (KMS) is a managed service that helps create and control the encryption keys used to encrypt account data, and uses Hardware Security Modules (HSMs) to protect the security of encryption keys. CloudTrail logs can be configured to leverage server side encryption (SSE) and KMS customer-created master keys (CMK) to further protect CloudTrail logs. It is recommended that CloudTrail be configured to use SSE-KMS.
Rationale
Configuring CloudTrail to use SSE-KMS provides additional confidentiality controls on log data, as a given user must have S3 read permission on the corresponding log bucket and must be granted decrypt permission by the CMK policy.
Impact
Customer-created keys incur an additional cost. See https://aws.amazon.com/kms/pricing/ for more information.
Audit Procedure
Using AWS Console
- Sign in to the AWS Management Console and open the CloudTrail console at https://console.aws.amazon.com/cloudtrail.
- In the left navigation pane, choose
Trails.
- Select a trail.
- In the
General details section, select Edit to edit the trail configuration.
- Ensure the box at
Log file SSE-KMS encryption is checked and that a valid AWS KMS alias of a KMS key is entered in the respective text box.
Using AWS CLI
- Run the following command:
aws cloudtrail describe-trails
- For each trail listed, SSE-KMS is enabled if the trail has a
KmsKeyId property defined.
Expected Result
All CloudTrail trails have a KmsKeyId property defined, indicating SSE-KMS encryption is enabled.
Remediation
Using AWS Console
- Sign in to the AWS Management Console and open the CloudTrail console at https://console.aws.amazon.com/cloudtrail.
- In the left navigation pane, choose
Trails.
- Click on a trail.
- Under the
S3 section, click the edit button (pencil icon).
- Click .