Ensure that your Amazon S3 buckets do not allow authenticated AWS accounts or IAM users to modify access control permissions in order to protect your S3 data against unauthorized access. An Amazon S3 bucket that grants authenticated WRITE_ACP (EDIT) access, can allow anyone with an AWS account to edit the bucket permissions and gain full access to your S3 bucket.
This rule can help you with the following compliance standards:
- PCI
- APRA
- MAS
- NIST4
For further details on compliance standards supported by Conformity, see here.
This rule can help you work with the AWS Well-Architected Framework.
This rule resolution is part of the Conformity Security & Compliance tool for AWS.
Granting authenticated WRITE_ACP access to your Amazon S3 buckets can allow signed AWS users to edit bucket permissions in order to view, upload, modify, and delete S3 objects within your buckets. Allowing this type of access is dangerous and can lead to data breach, data loss, or unexpected Amazon S3 charges on your AWS bill. To meet security and compliance requirements, avoid granting WRITE_ACP (EDIT) permissions to the "Authenticated users group (anyone with an AWS account)" grantee in production.
Audit
To determine if your Amazon S3 buckets allow WRITE_ACP access to AWS authenticated users, perform the following operations:
Remediation / Resolution
To remove authenticated WRITE_ACP access permissions from your Amazon S3 bucket ACL, perform the following operations:
Note: An S3 bucket can be deemed compliant if implements either "AccessControl": "Private" or sets the "PublicAccessBlockConfiguration" feature options to true. The following CloudFormation template uses both for added security.References
- AWS Documentation
- Amazon S3 FAQs
- Access Control List (ACL) Overview
- Managing ACLs in the AWS Management Console
- Editing Bucket Permissions
- AWS Command Line Interface (CLI) Documentation
- list-buckets
- get-bucket-acl
- put-bucket-acl
- CloudFormation Documentation
- AccessControl
- Terraform Documentation
- AWS Provider