Skip to main content

More Info:

AWS S3 buckets should not be granting FULL_CONTROL access to authenticated users (i.e. signed AWS accounts or AWS IAM users) in order to prevent unauthorized access. Exposing your S3 buckets to AWS signed accounts or users can lead to data leaks, data loss and unexpected charges for the S3 service.

Risk Level

High

Address

Security

Compliance Standards

  • APRA CPS 234 (Australia)
  • AWS Startup Security Baseline
  • AWS Well Architected Framework
  • BSI C5 (Germany)
  • Brazil LGPD
  • CCPA / CPRA (California)
  • CIS Critical Security Controls v8
  • CMMC 2.0
  • CSA Cloud Controls Matrix v4
  • Cloudanix Best Practice
  • DPDPA
  • Digital Operational Resilience Act (EU)
  • Essential 8
  • ISO/IEC 27017
  • ISO/IEC 27018
  • ISO/IEC 27701
  • KSA PDPL
  • MAS Technology Risk Management (Singapore)
  • MITRE ATT&CK (Cloud)
  • NIST
  • NIST SP 800-171
  • NYDFS 23 NYCRR 500
  • PCI
  • SWIFT Customer Security Controls Framework
  • Sarbanes-Oxley IT General Controls
  • UK NCSC Cyber Assessment Framework

Triage and Remediation

Remediation

Using Console

Sure, here are the step-by-step instructions to remediate the issue of an S3 Bucket allowing FULL_CONTROL access to Authenticated Users in AWS using the AWS console:
  1. Login to your AWS account and go to the S3 console.
  2. Select the bucket for which you want to remediate the issue.
  3. Click on the “Permissions” tab in the top navigation bar.
  4. Under the “Access control list (ACL)” section, locate the “Authenticated Users” group and select it.
  5. Click on the “Actions” button and select “Edit bucket policy”.
  6. In the bucket policy editor, remove the “FULL_CONTROL” permission from the “Authenticated Users” group.
  7. Click on the “Save changes” button to save the updated bucket policy.
After following these steps, the S3 bucket will no longer allow FULL_CONTROL access to Authenticated Users.

To remediate the misconfiguration in AWS, you can follow the below steps using AWS CLI:
  1. Open the AWS CLI and run the following command to list all the S3 buckets in your account:
  2. Identify the S3 bucket that is allowing FULL_CONTROL access to authenticated users.
  3. Run the following command to remove the FULL_CONTROL access for authenticated users:
    Replace <bucket-name> with the name of the S3 bucket that you want to remediate.
  4. Verify that the FULL_CONTROL access for authenticated users has been removed by running the following command:
    This command will display the access control list (ACL) for the specified S3 bucket. Verify that the authenticated users no longer have FULL_CONTROL access.
  5. Repeat the above steps for any other S3 buckets that are allowing FULL_CONTROL access to authenticated users.
By following the above steps, you can remediate the misconfiguration in AWS where S3 bucket is allowing FULL_CONTROL access to authenticated users.
To remediate the misconfiguration “S3 Bucket Should Not Allow FULL_CONTROL Access to Authenticated Users” in AWS using Python, you can follow these steps:
  1. First, you need to identify the S3 buckets that have full control access to authenticated users. You can use the AWS SDK for Python (Boto3) to list all the S3 buckets and their access control lists (ACLs).
  1. Once you have identified the buckets with full control access to authenticated users, you can update their ACLs to remove the FULL_CONTROL permission for authenticated users. You can use the put_bucket_acl method of the S3 client to update the ACL.
This will remove the FULL_CONTROL permission for authenticated users from the ACL of the specified bucket. You can repeat this step for all the buckets that have full control access to authenticated users.
Changing the ACL in this way does NOT force replacement of the bucket itself, but it does overwrite all existing ACL grants on that bucket.To verify, terraform plan should show an aws_s3_bucket_acl resource being created or updated with acl = "private", and no grants to the AuthenticatedUsers group.

Additional Reading: