Quick Start

Get up and running with s3finder in under 5 minutes.

Your First Scan

Run your first scan with a single command:

bash
s3finder -s your-target-company

Replace your-target-company with the organization you're authorized to test. s3finder generates 780+ bucket name variations automatically. You can also scan directly using a wordlist (-w) or a domain (-d) without a seed.

Understanding the Output

text
     ____  _____  __ _           _
    / ___|___ / / _(_)_ __   __| | ___ _ __
    \___ \ |_ \| |_| | '_ \ / _` |/ _ \ '__|
     ___) |__) |  _| | | | | (_| |  __/ |
    |____/____/|_| |_|_| |_|\__,_|\___|_|
                                        v1.2.4
    AI-Powered S3 Bucket Enumeration Tool
    ─────────────────────────────────────────

Permutation engine generated 780 names
Generated 780 unique bucket names to scan

[PUBLIC] target-backup (objects: 1547, region: us-east-1)
         https://target-backup.s3.amazonaws.com
[PRIVATE] target-internal (region: eu-west-1)

[██████████████████████████████] 100.0% [780/780] Public:1 Private:1 Err:12 145 r/s ETA:0s [45s]

────────────────────────────────────────
Scan completed in 45s
Scanned: 780 | Found: 2 | Public: 1 | Private: 1 | Errors: 12
Results saved to: results.json

Result Types

TagMeaningAction
PUBLIC Bucket is publicly readable URL shown - can browse contents
PRIVATE Bucket exists but access denied Requires credentials
ERROR Request failed (timeout, throttled) Retry with lower RPS

Progress Bar

The progress bar shows real-time scan statistics:

ElementMeaning
[██████]Completion percentage
[780/780]Scanned / Total buckets
Public:1 Private:1 Err:12Discovery counts
145 r/sRequests per second
ETA:0s [45s]Estimated time / Elapsed time

Adding a Wordlist

Combine permutations with a custom wordlist:

bash
s3finder -s target-company -w wordlists/common.txt

The included wordlist has 130 common bucket name patterns.

Using CT Log Discovery

If you know the target's domain, use Certificate Transparency logs to discover real subdomains:

bash
# Discover and scan subdomains as-is
s3finder -d target.com

This queries crt.sh for subdomains like dev.target.com and staging.target.com, which are scanned directly as bucket names.

Enabling AI Generation

For smarter bucket name suggestions:

bash
# Set your API key
export OPENAI_API_KEY=sk-xxxxx

# Run with AI enabled
s3finder -s target-company --ai

High-Speed Scanning

Increase workers and requests per second:

bash
s3finder -s target-company -t 200 --rps 1000
High RPS may trigger AWS rate limiting. The adaptive rate limiter will automatically slow down if throttled.

Viewing Results

Results are saved to results.json by default:

bash
# Pretty print JSON results
cat results.json | jq .

# Or use plain text format
s3finder -s target-company -o results.txt -f txt

Next Steps