Multi-cloud storage bucket discovery via certificate transparency monitoring
Project description
CloudVault - AWS S3 Bucket Scanner & Cloud Security Tool
๐ Find exposed AWS S3 buckets, Google Cloud Storage & Azure Blob containers with advanced vulnerability detection
๐ฏ AWS S3 Bucket Scanner | Cloud Security Scanner | Bucket Enumeration Tool
CloudVault is a powerful AWS S3 bucket scanner, Google Cloud Storage enumeration tool, and Azure Blob vulnerability scanner. Discover exposed cloud storage buckets, detect security misconfigurations, and identify vulnerabilities across AWS S3, GCP Storage, and Azure Blob containers through real-time certificate transparency monitoring.
๐ Why Choose CloudVault?
The AWS S3 Bucket Scanner for Cloud Security Professionals
CloudVault is the most comprehensive cloud storage security scanner available, designed for penetration testers, bug bounty hunters, and security researchers. Our tool monitors certificate transparency logs in real-time to discover publicly accessible cloud storage buckets across AWS S3, Google Cloud Storage, and Azure Blob Storage.
๐ฏ Perfect For:
- Bug Bounty Hunters - Find exposed S3 buckets and cloud storage misconfigurations
- Penetration Testers - Comprehensive cloud security assessment toolkit
- Security Researchers - Advanced OSINT and reconnaissance capabilities
- DevSecOps Teams - Continuous cloud security monitoring
- Cybersecurity Professionals - Enterprise-grade vulnerability scanning
โจ Core Features - S3 Bucket Scanner & Cloud Security Tools
๐ AWS S3 & Multi-Cloud Bucket Discovery
- AWS S3 Bucket Scanner - Find exposed S3 buckets with authenticated & unauthenticated access
- Google Cloud Storage Scanner - Comprehensive GCS bucket enumeration and vulnerability detection
- Azure Blob Storage Scanner - Advanced container discovery with account enumeration
- Multi-Cloud Support - Simultaneous scanning across all major cloud providers
๐ Real-time Certificate Transparency Monitoring
- Live CT Log Monitoring - Real-time domain discovery for immediate bucket scanning
- WebSocket Integration - Async connections with automatic reconnection capabilities
- Domain Intelligence - Advanced domain extraction and bucket name permutation
- Zero-Day Discovery - Find newly registered domains and their associated buckets
๐ง Intelligent S3 Bucket Enumeration
- Smart Permutation Engine - Advanced bucket name generation with provider-specific rules
- Keyword-Based Detection - Identify sensitive content and interesting files automatically
- Rate Limit Evasion - Built-in quota management and intelligent throttling
- Custom Wordlists - Support for custom dictionary-based bucket enumeration
๐ Enterprise Security Reporting
- Detailed Vulnerability Reports - Comprehensive security assessment documentation
- Multi-Format Output - JSON, CSV, and structured logging capabilities
- Slack Integration - Real-time notifications for critical findings
- Executive Dashboards - High-level security metrics and progress tracking
๐ Quick Start - Install AWS S3 Bucket Scanner
๐ฆ Installation Options
# Install CloudVault - Complete S3 Bucket Scanner
pip install cloudvault4
# Full installation with all cloud providers (AWS S3, GCP, Azure)
pip install cloudvault4[all]
# Provider-specific installations for targeted scanning
pip install cloudvault4[aws] # AWS S3 bucket scanner only
pip install cloudvault4[gcp] # Google Cloud Storage scanner only
pip install cloudvault4[azure] # Azure Blob Storage scanner only
# Security researcher edition with all exploitation features
pip install cloudvault4[full]
๐ง Basic S3 Bucket Scanning Usage
# Initialize CloudVault configuration
cloudvault --init-config
# Start real-time S3 bucket discovery via certificate transparency
cloudvault
# Scan specific domains for S3 buckets and cloud storage
cloudvault --source target-domains.txt
# AWS S3 bucket scanner mode only
cloudvault --aws-only
# Find only interesting/sensitive buckets
cloudvault --only-interesting
# Advanced S3 vulnerability scanning
cloudvault --scan-vulnerabilities --download-content
๐ Advanced Cloud Security Scanning
# Stealth mode S3 bucket scanning (avoid detection)
cloudvault --stealth --proxy-rotation --anti-forensics
# Comprehensive security assessment
cloudvault --metadata-extraction --stego-detection --subdomain-takeover
# Database credential testing with custom wordlist
cloudvault --database-testing --db-wordlist passwords.txt
# Network pivoting and lateral movement
cloudvault --network-pivoting --credential-harvesting
โ๏ธ Configuration
The tool uses a YAML configuration file (config.yaml) for all settings:
# General Settings
queue_size: 1000
update_interval: 30
log_level: INFO
# AWS S3 Configuration
aws:
enabled: true
access_key: 'YOUR_ACCESS_KEY'
secret_key: 'YOUR_SECRET_KEY'
region: us-east-1
max_threads: 20
# Google Cloud Storage Configuration
gcp:
enabled: true
service_account_path: '/path/to/service-account.json'
project_id: 'your-project-id'
max_threads: 15
# Azure Blob Storage Configuration
azure:
enabled: true
account_name: 'your-storage-account'
account_key: 'YOUR_ACCOUNT_KEY'
max_threads: 15
Environment Variables
You can also use environment variables instead of storing credentials in the config:
# AWS
export AWS_ACCESS_KEY_ID="your_access_key"
export AWS_SECRET_ACCESS_KEY="your_secret_key"
# Google Cloud
export GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account.json"
export GOOGLE_CLOUD_PROJECT="your-project-id"
# Azure
export AZURE_STORAGE_ACCOUNT="your_account_name"
export AZURE_STORAGE_KEY="your_account_key"
๐ Command Line Options
cloudvault [OPTIONS]
Configuration:
-c, --config FILE Configuration file path (default: config.yaml)
--init-config Create a default configuration file
Input:
-s, --source FILE Process static domain list instead of live stream
-p, --permutations FILE Custom permutation patterns file
--keywords-file FILE Keywords for interesting content detection
Workers:
-t, --threads N Override number of worker threads per provider
Filtering:
--only-interesting Only report buckets with interesting content
--skip-lets-encrypt Skip Let's Encrypt certificates
Output:
-l, --log-to-file Log found buckets to file
-v, --verbose Enable verbose logging
Providers:
--aws-only Only check AWS S3 buckets
--gcp-only Only check Google Cloud Storage buckets
--azure-only Only check Azure Blob Storage containers
Advanced Features:
--stealth Enable stealth mode with evasion techniques
--scan-vulnerabilities Perform vulnerability scanning on discovered buckets
--download-content Download and analyze bucket contents
--dns-enum Enable DNS-based bucket enumeration
--db-wordlist FILE Use wordlist for database credential testing
Stealth Options:
--proxy-rotation Enable proxy rotation for anonymity
--traffic-shaping TYPE Shape traffic (mobile/residential/datacenter)
--geo-country CODE Simulate traffic from specific country
--anti-forensics Enable anti-forensics and evidence cleanup
--process-masking Hide process from monitoring tools
Security Analysis:
--metadata-extraction Extract metadata from discovered files
--stego-detection Scan for steganography in images and files
--subdomain-takeover Check for subdomain takeover vulnerabilities
--database-testing Test databases with default/weak credentials
--network-pivoting Attempt lateral movement with found credentials
๐ฏ Example Output
Starting CloudVault .0
Providers: aws, gcp, azure | Workers: 50 | Patterns: 127
Connected to certificate transparency stream!
Found AWS bucket: https://company-backup.s3.amazonaws.com [PUBLIC_READ] (Owner: company-admin) - 3 interesting files!
Found GCP bucket: https://storage.googleapis.com/company-logs [PUBLIC_READ]
Found AZURE container: https://companydata.blob.core.windows.net/backups [PRIVATE]
Status: 1,247 checked (42.3/s), 3 found, 2 public, 1 interesting
aws: 856 checked, 2 found, 1 public
gcp: 234 checked, 1 found, 1 public
azure: 157 checked, 0 found, 0 public
๐ง Advanced Usage
Custom Permutation Patterns
Create custom bucket name patterns in permutations/custom.txt:
{domain}-backup
{domain}-data
{domain}-storage
backup-{domain}
data-{domain}
{domain}001
{domain}prod
Keywords for Interesting Content
Define keywords in keywords.txt to identify sensitive files:
password
config
secret
backup
.sql
.env
credentials
private
Slack Integration
Add your Slack webhook URL to the configuration for real-time notifications:
slack_webhook: 'https://hooks.slack.com/services/YOUR/WEBHOOK/URL'
๐๏ธ Architecture
CloudVault follows a modern, modular architecture:
cloudvault_discovery/
โโโ core/ # Core functionality
โ โโโ config.py # Configuration management
โ โโโ cert_stream.py # Certificate transparency monitoring
โ โโโ queue_manager.py # Thread-safe queue management
โ โโโ worker.py # Base worker classes
โ โโโ permutations.py # Bucket name generation
โโโ providers/ # Cloud provider implementations
โ โโโ aws_s3.py # AWS S3 support
โ โโโ gcp_storage.py # Google Cloud Storage support
โ โโโ azure_blob.py # Azure Blob Storage support
โโโ cli.py # Command-line interface
Key Components
- Certificate Stream Monitor: Async WebSocket client for real-time CT log monitoring
- Queue Manager: Thread-safe, provider-specific queues with rate limiting
- Provider Workers: Modular cloud storage implementations with authentication
- Permutation Generator: Smart bucket name generation from domains
- Result Handler: Unified output formatting and logging
๐ก๏ธ Security Considerations
Responsible Disclosure
This tool is designed for security research and authorized testing only. Always ensure you have permission before testing against any infrastructure.
Rate Limiting
- Built-in rate limiting for all cloud providers
- Exponential backoff for rate limit responses
- Configurable request delays and timeouts
Authentication
- Supports both authenticated and unauthenticated modes
- Higher thread limits and better access control detection when authenticated
- Secure credential handling via environment variables
๐ค Contributing
We welcome contributions! Please see our Contributing Guide for details.
Development Setup
# Clone the repository
git clone https://github.com/ibrahmsql/CloudVault.git
cd cloudvault
# Install in development mode with all dependencies
pip install -e .[dev,all]
# Run tests
pytest
# Format code
black cloudvault_discovery/
# Type checking
mypy cloudvault_discovery/
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
- Certificate Transparency community for their excellent work
- Cloud security research community
- Open source security tools ecosystem
โ ๏ธ Disclaimer
This tool is for educational and authorized security research purposes only. Users are responsible for complying with applicable laws and regulations. The authors are not responsible for any misuse or damage caused by this tool.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cloudvault4-1.0.1.tar.gz.
File metadata
- Download URL: cloudvault4-1.0.1.tar.gz
- Upload date:
- Size: 67.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
77d06bc456a9dac241299009f920b9d876178d8da7e66457f1a0eec88a19d4af
|
|
| MD5 |
358e73f2e6fe85306075353c17825239
|
|
| BLAKE2b-256 |
7d058dc2c72d8e11847673ef798ae1a5152cf7ac59121a61a25e39cfc5f6fc2d
|
File details
Details for the file cloudvault4-1.0.1-py3-none-any.whl.
File metadata
- Download URL: cloudvault4-1.0.1-py3-none-any.whl
- Upload date:
- Size: 77.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b18ccc795d32cd80aa189aeb3f884255c0b217cbeac240d1227d179fb2dce809
|
|
| MD5 |
bfa357e53f3793991bb9510a64d662d0
|
|
| BLAKE2b-256 |
70f2faf332612bf848d2def17e8ff4bbab937e5dfd7f34a8e69bd2b4a1a2284c
|