| name | cis-aws-foundations-4.4 |
| description | Ensure that server access logging is enabled on the CloudTrail S3 bucket |
| category | cis-logging |
| version | 7.0.0 |
| author | cyberstrike-official |
| tags | ["cis","aws","logging","cloudtrail","s3","server-access-logging"] |
| cis_id | 4.4 |
| 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.5"] |
| prerequisites | [] |
| severity_boost | {} |
Ensure that server access logging is enabled on the CloudTrail S3 bucket
Description
Server access logging generates a log that contains access records for each request made to your S3 bucket. An access log record contains details about the request, such as the request type, the resources specified in the request worked, and the time and date the request was processed. It is recommended that server access logging be enabled on the CloudTrail S3 bucket.
Rationale
By enabling server access logging on target S3 buckets, it is possible to capture all events that may affect objects within any target bucket. Configuring the logs to be placed in a separate bucket allows access to log information that can be useful in security and incident response workflows. In some environments (e.g., AWS Control Tower), logs may be delivered to the same bucket with appropriate prefixes, which is also an acceptable configuration.
Impact
N/A
Audit Procedure
Using AWS Console
- Go to the Amazon CloudTrail console at https://console.aws.amazon.com/cloudtrail/home.
- In the API activity history pane on the left, click
Trails.
- In the Trails pane, note the bucket names in the S3 bucket column.
- Sign in to the AWS Management Console and open the S3 console at https://console.aws.amazon.com/s3.
- Under
All Buckets click on a target S3 bucket.
- Click on
Properties in the top right of the console.
- Scroll down to
Server access logging.
- Ensure
Server access logging is Enabled.
- Verify the
Target bucket where logs are delivered.
Using AWS CLI
- Get the name of the S3 bucket that CloudTrail is logging to:
aws cloudtrail describe-trails --query 'trailList[*].S3BucketName'
- Ensure logging is enabled on the bucket:
aws s3api get-bucket-logging --bucket <s3-bucket-for-cloudtrail>
Ensure the command does not return an empty output.
Sample output for a bucket with logging enabled:
{
"LoggingEnabled": {