🔍 The Ultimate Guide to Find S3 Buckets: Basic to Advance🔓🔎

Unveiling the Secrets of S3 Buckets: Comprehensive Techniques for Finding and Protecting Your Data Leaks

Qasim Mahmood Khalid
5 min readJul 3, 2023

Introduction

S3 buckets, a popular storage solution provided by Amazon Web Services (AWS), have become a common target for bug bounty hunters and penetration testers. Misconfigurations in these buckets can lead to severe data leaks, exposing sensitive information to the world. Whether you’re conducting bug bounty hunting, pen-testing, or aiming to secure your own buckets, it’s crucial to understand various techniques for discovering and assessing S3 bucket vulnerabilities. In this article, we will explore different methods to identify and interact with S3 buckets, empowering you to enhance your security testing and protection strategies.

Netflix s3 bucket expose

Hacker1 reports on the S3 bucket Misconfiguration

https://hackerone.com/reports/1062803
https://hackerone.com/reports/507097
https://hackerone.com/reports/764243
https://hackerone.com/reports/819278

hacker1 report which gives 100$ to the Security Researcher

Basic Browser Test for Find the AWS S3 bucket🖼️

A simple way to detect an S3 bucket is by examining the URLs associated with its files. When you encounter a file URL like
https://<bucket-name>.s3-us-west-1.amazonaws.com/uploads/image.png
, you can extract the base URL
https://<bucket-name>.s3-us-west-1.amazonaws.com
and browse the corresponding folder at
https://<bucket-name>.s3-us-west-1.amazonaws.com/uploads/.
This method allows you to visually explore the contents of the bucket using a web browser.

Find S3 Bukcket Using AWS CLI 💻

To utilize the power of AWS Command Line Interface (CLI) for interacting with S3 buckets, follow these steps:

Step 1: Create an AWS Account

If you don't have an AWS account, visit the AWS website (https://aws.amazon.com) and create a free account. Follow the registration process to set up your account.

Step 2: Download and Install AWS CLI

Download and install AWS CLI on your system by following the instructions provided in the AWS CLI User Guide (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-download).

Step 3: Configure AWS CLI

Open a terminal or command prompt and run the following command:

aws configure

You will be prompted to enter your AWS Access Key ID and AWS Secret Access Key. These credentials can be obtained from the AWS Management Console. Enter the required information, along with the default region and output format.

Step 4: Interacting with S3 Buckets

Once configured, you can use AWS CLI commands to interact with S3 buckets:

List bucket contents: aws s3 ls s3://bucket-name

Download a file: aws s3 cp s3://bucket-name/file.png ./

Upload a file: aws s3 cp ./localfile.txt s3://bucket-name/poc.txt

Finding S3 Buckets Using Websites 🌐

In my opinion, this is the best way to find the s3 bucket Several websites offer services to discover open S3 buckets and other cloud storage repositories. One such website is https://buckets.grayhatwarfare.com/results/colliershouston
By searching for an organization's name, you can filter and browse through the contents of their open S3 buckets. This approach is valuable for research and identifying exposed data.

🔍 Don’t stop now! The best is yet to come. Keep reading to uncover mind-blowing techniques and insider secrets that will revolutionize your S3 bucket-finding skills. Trust me, it’s worth it! 🚀🔥💡

Tools on GitHub for finding the S3 bucket🔧

GitHub hosts a range of online tools that aid in finding S3 buckets associated with a website. Here are a few notable tools you can explore:

Lazy S3

bucket_finder

AWS Cred Scanner

sandcastle

Mass3

Dumpster Diver

S3 Bucket Finder

S3Scanner

S3 bucket find Using Google Dorks 🌍

Google Dorks are powerful search queries that allow you to find specific information on the internet. You can use Google Dorks to discover S3 buckets associated with Amazon Web Services. Here are a couple of examples:

  • site:http://amazonaws.com inurl:".s3.amazonaws.com/"
  • site:http://s3.amazonaws.com intitle:index.of.bucket

Burp Suite and S3 Bucket Discovery 🕵️‍♀️

Burp Suite, a popular web application testing tool, can be configured to assist in the discovery of S3 buckets. Follow these steps:

  • Configure Burp Suite as a proxy to intercept and analyze web traffic.
  • Set your browser to use Burp Suite as the proxy.
  • Navigate through the target website while Burp Suite captures the requests and responses.
  • Review the responses received from the target website within Burp Suite. Look for URLs or headers that indicate the presence of S3 buckets, such as those containing “s3.amazonaws.com” or headers like “x-am-bucket”.
  • Perform manual testing by directly accessing potential S3 bucket URLs or headers in your browser to confirm their existence.

Another approach using Burp Suite involves capturing the request made when downloading a file:

  • Access the website and initiate the download of the file (e.g., by clicking an image link). Burp Suite will intercept the request.
  • Inspect the captured request in Burp Suite’s Proxy tab, analyzing the headers and URL to determine the source of the file.
  • Look for indications within the request that suggest the file is being served from an S3 bucket, such as a URL containing “s3.amazonaws.com” or any custom domain associated with an S3 bucket.
  • Inspect the response in Burp Suite’s Proxy tab, examining the headers and content to confirm if it is indeed being served from an S3 bucket.

Find Bucket Using Subfinder and HTTPX Tool 🔎

To automate the process of finding S3 buckets associated with a domain, you can use the Subfinder and HTTPX tools. The following commands can be used:

subfinder -d disney.com -all -silent | httpx -silent -webserver -threads 100 | grep -i AmazonS3

subfinder -d disney.com -all -silent | httpx -silent -webserver -threads 100 -match-string "AccessDenied"

Find an S3 bucket with Nuclei Template 🧪

Nuclei, a powerful security scanner, offers a pre-defined template for detecting S3 buckets. You can find the template at https://github.com/projectdiscovery/nuclei-templates/blob/master/technologies/s3-detect.yaml
By using Nuclei with this template, you can identify S3 bucket vulnerabilities quickly.

At the END Here are some tips to secure your S3 bucket:

Set proper access controls

Enable encryption

Use strong access credentials

Implement bucket policies

Enable versioning

Monitor bucket activity

Regularly audit bucket permissions

Implement logging and monitoring

Enable cross-region replication

Thanks for reading this article Follow me on Medium for concise, well-researched, and insightful articles that will save you time and provide you with valuable knowledge. Join my growing community of followers who appreciate high-quality content. Don’t miss out on the opportunity to gain valuable insights with just a click of a button. Follow me now and embark on a journey of informative and engaging articles. Together, let’s dive into the world of knowledge! ✨📖👥
Happy hunting and securing! 🔒🌐

#BugBounty #EthicalHacking #S3BucketFinding #CyberSecurity #InfoSec #PenetrationTesting #HackerCommunity #BugHunting #AWS #CloudSecurity

--

--

Qasim Mahmood Khalid

Software quality Assurance Engineer ,Bug Bounty ,Cyber Security ,Cloud computing