The Persistent Problem of Cloud Storage Exposure
Despite years of high-profile breaches, cloud storage misconfiguration remains one of the most common causes of data exposure. S3 buckets, GCS buckets, and Azure Blob containers continue to leak sensitive data because of default settings, policy misunderstandings, and configuration drift.
Common Misconfigurations
S3 Bucket Public Access
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::company-data/*"
}
ACL Mismanagement
Legacy ACLs granting AllUsers or AuthenticatedUsers (any AWS account) read access.
Static Website Hosting Leaks
Enabling static website hosting on buckets containing private data makes all objects accessible via HTTP.
Logging Bucket Exposure
Access log buckets themselves being publicly accessible, leaking IP addresses, request patterns, and auth tokens.
Real-World Impact
Notable breaches from storage misconfigurations:
- Capital One (2019): 106 million records from misconfigured WAF + S3
- Twitch (2021): Entire source code repository from misconfigured storage
- US Military: Classified data in publicly accessible S3 buckets
Detection and Prevention
Automated Scanning
# Check all S3 buckets for public access
aws s3api list-buckets --query 'Buckets[*].Name' | xargs -I{} aws s3api get-bucket-policy-status --bucket {}
Account-Level Block Public Access
aws s3control put-public-access-block --account-id 123456789012 --public-access-block-configuration BlockPublicAcls=true,IgnorePublicAcls=true, BlockPublicPolicy=true,RestrictPublicBuckets=true
Enable Versioning and MFA Delete
Protect against accidental deletion and ransomware:aws s3api put-bucket-versioning --bucket my-bucket --versioning-configuration Status=Enabled,MFADelete=Enabled
Server-Side Encryption
aws s3api put-bucket-encryption --bucket my-bucket --server-side-encryption-configuration '{"Rules":[{"ApplyServerSideEncryptionByDefault":{"SSEAlgorithm":"aws:kms"}}]}'
Where SuperClue Fits
SuperClue does not connect to AWS, GCP, or Azure accounts, so it does not monitor bucket policies. Its S3 bucket module finds S3 bucket links in your web pages and checks whether those buckets can be listed publicly. Its DAST scanner also tests the web applications and APIs that sit in front of your storage.