Check ID:
Provider: AWS
Service:
Severity: CRITICAL
Categories:
Resource type:
s3_access_point_public_access_blockProvider: AWS
Service:
s3Severity: CRITICAL
Categories:
internet-exposedResource type:
AwsS3AccessPointWhat this check verifies
Amazon S3 access points have Block Public Access configured with all settings enabled:block_public_acls, ignore_public_acls, block_public_policy, and restrict_public_buckets.
The evaluation inspects each access point’s public access block configuration.
Risk
Without block public access on an access point, ACLs or policies can expose objects publicly despite intended restrictions. This enables unauthorized reads (confidentiality loss), writes or deletions (integrity/availability impact), and supports bulk data exfiltration or destructive actions.Recommendation
Enable all access-point Block Public Access settings (block_public_acls, ignore_public_acls, block_public_policy, restrict_public_buckets).
Apply least privilege, prefer VPC-only access points, and layer account and bucket blocks for defense in depth. Regularly audit for public principals like Principal: *.
Remediation
- Terraform
- Native IaC
- Dashboard steps
References
- https://docs.aws.amazon.com/config/latest/developerguide/s3-access-point-public-access-blocks.html
- https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html#access-points-policies
- https://docs.aws.amazon.com/securityhub/latest/userguide/s3-controls.html#s3-19
Where this check fires
This check runs on every scheduled scan against your AWS account. Findings appear at Cloud Security → Findings filterable byCheck ID = s3_access_point_public_access_block. 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