1/65
Cloud Spotlight: Insecure Storage
Cloud storage objects may be publicly accessible without intended authorization.
Amazon S3, Google Cloud Storage buckets, and Azure Blob storage.
Simple Storage Service.
Documents, backups, sensitive customer data, or other stored files.
Some services initially allowed public access unless administrators restricted it.
Public access is restricted by default.
T1530.
Data from Cloud Storage Object.
Blocks public access to a newly created bucket.
Yes. An administrator can alter the restrictive policy.
Access Control List.
Misconfiguration, misunderstanding of permissions, or later reuse of public buckets.
falsimentis-media.
HTTP, optionally secured with TLS/HTTPS.
https://s3.amazonaws.com/BUCKETNAME
BUCKETNAME.s3.amazonaws.com
https://www.googleapis.com/storage/v1/b/BUCKETNAME
https://ACCOUNTNAME.blob.core.windows.net/CONTAINERNAME
Storage account name and container name.
Yes.
Try candidate bucket names or account/container combinations at provider URLs.
Bucket Finder (bucket_finder.rb).
Robin Wood.
A text file of candidate bucket names, one per line.
Whether a bucket exists and whether access is allowed or denied.
Downloads content from publicly accessible buckets.
It can retrieve large quantities of potentially sensitive or unwanted data.
Bucket does not exist.
The bucket exists, but the request lacks permission.
No. The analyst supplies a wordlist.
bucket_finder.rb words --download
GCPBucketBrute.
Rhino Security Labs.
Bucket permissions, when enumeration is allowed.
Perform unauthenticated permission checks.
A keyword used to generate candidate bucket names.
Use a supplied list of candidate bucket names.
gcpbucketbrute.py -u -k falsimentis
1,216.
Listing objects within a cloud bucket.
Reading an object in cloud storage.
A bucket permits access without authentication.
No. The book uses gsutil for object access.
gsutil ls gs://falsimentis-dev
Basic Blob Finder (basicblobfinder.py).
accountname:containername, one candidate per line.
It uses the same value for the account and container names.
Publicly accessible Azure blobs and their file listings.
basicblobfinder.py namelist
The storage account name from the container name.
They may miss an organization’s unique naming conventions.
Organization names, abbreviations, products, and common environment suffixes.
dev, files, data, qa, and test.
It reveals names and conventions administrators might use.
Name permutations with prefixes and suffixes.
Cyber Threat Intelligence.
Grayhatwarfare.
Exposed organizational buckets and publicly indexed files.
AWS, Azure, Google Cloud, and DigitalOcean.
https://buckets.grayhatwarfare.com/random/buckets
Fetch the URL in silent mode.
To retain lines matching the listed cloud storage domains.
Anchor the match at the end of a line.
Audit storage configurations and eliminate unintended public permissions.
Both successful and failed access attempts.
They can reveal access to storage endpoints across the organization.