CloudFront WAF Bypass & Penetration Testing Tool
WAFPierce is a specialized penetration testing tool that identifies WAF (Web Application Firewall) bypass techniques specifically for AWS CloudFront distributions. It automates the discovery of misconfigurations and bypass vectors that could expose backend applications.
Key Features:
- WAF Detection & Fingerprinting - Identifies 17+ WAF vendors (Cloudflare, AWS WAF, Akamai, Imperva, F5, Sucuri, ModSecurity, and more)
- CDN Detection - Detects 12+ CDN providers (CloudFront, Akamai, Fastly, Cloudflare, etc.)
- WAF Bypass Detection - Tests 35+ different bypass techniques
- Smart WAF Bypass - Uses baseline comparison and heuristic analysis (size, hash, status codes) to detect bypasses even when WAFs return 200 OK.
- Payload Evasion Testing - SQLi, XSS, Command Injection, Path Traversal, SSRF bypass payloads
- Protocol-Level Attacks - HTTP Request Smuggling, HTTP/2 Downgrade, WebSocket tunneling
- Rate Limit Detection - Identifies request thresholds and rate limiting behavior
- API Endpoint Discovery - Finds unprotected API routes and debug endpoints
- Directory Enumeration - Discovers hidden paths using successful bypass methods
- Vulnerability Scanning - Tests for XSS and injection points
- AWS Reconnaissance - Enumerates related S3 buckets
- Automated Reporting - Generates detailed markdown reports
- GUI system - Clean and efficient GUI system made for the users comfort
- Optimized Performance - Connection pooling, response caching, and parallel batch testing
-
Results Explorer - New comprehensive results viewer with:
- Left panel showing all scanned sites with finding counts and severity indicators (🔴🟠🟡)
- "All Sites" option to view combined results across all targets
- Results grouped by category (API_DISCOVERY, DNS_HISTORY, etc.)
- Detailed view panel showing full result information when clicked
- Sorting options: Severity (High→Low, Low→High), Technique (A-Z, Z-A), Category, Bypass Status
- Filtering options: All Results, CRITICAL/HIGH/MEDIUM/LOW/INFO only, Bypasses only, Non-bypasses only
- Expand All / Collapse All buttons for quick navigation
- Export View button to save filtered results to JSON
-
Pulsating Results Button - The Results button now:
- Located at the bottom of the output area for better visibility
- Larger size (40px height) with 📊 icon
- Turns green and gently pulsates when scan completes with results
- Changes color on hover (darkens) for better interactivity
- Resets to default gray when results are cleared
-
INFO-Level Results - All scan results now appear in output, not just bypasses:
- LOW and INFO severity findings are now displayed
- Shows reason for blocked requests (e.g., "Blocked: 404")
- Complete visibility into all scan activity
-
Target Tracking - Results Explorer now shows actual target site names instead of "Unknown Target"
- Fixed result filtering to include all findings (CRITICAL, HIGH, MEDIUM, LOW, INFO)
- Added target URL injection into result objects for proper grouping
- Improved URL parsing to extract clean domain names for display
- Added QPropertyAnimation for smooth pulsating effects
- Better stylesheet management with hover states
# Clone repository
git clone https://github.com/K0NGR3SS/WAFPierce.git
cd WAFPierce
# Install dependencies
pip3 install -r requirements.txt
# Install in development mode
pip3 install -e .python3 -m wafpierce.gui wafpierce https://d123abc.cloudfront.net# Specify threads
wafpierce https://target.cloudfront.net -t 20
# Custom output directory
wafpierce https://target.cloudfront.net -o my_results# Run just the bypass scanner
python3 -m wafpierce.pierce https://target.cloudfront.net -t 10WAFPierce tests the following bypass methods:
- Host Header Injection - Manipulates Host header values
- X-Forwarded-For - IP spoofing via proxy headers (127.0.0.1, 10.x, 192.168.x, AWS metadata IP)
- X-Forwarded-Host - Alternative host header injection
- X-Original-URL / X-Rewrite-URL - Path override attempts
- Origin/Referer Manipulation - CORS and origin header bypass
- Custom Header Fuzzing - X-Debug, X-Internal, X-Skip-WAF headers
- True-Client-IP / CF-Connecting-IP - CDN-specific header spoofing
- Path Encoding - URL encoding bypasses (%2e, %252e, etc.)
- Double/Triple Encoding - Advanced encoding evasion
- Case Manipulation - Mixed case payloads (/AdMiN, /WP-ADMIN)
- Comment Injection - SQL/HTML comment insertion
- Whitespace Manipulation - Tabs, newlines, null bytes to break signatures
- Unicode Normalization - Unicode encoding tricks
- Transfer-Encoding Smuggling - CL.TE/TE.TE request smuggling
- HTTP/2 Downgrade - Protocol downgrade attacks
- WebSocket Upgrade - Tunnel through WAFs via WebSocket
- HTTP Pipelining - Connection keep-alive abuse
- Chunked Transfer - Split payloads across chunks
- HTTP Method Bypass - Tests non-standard methods (TRACE, OPTIONS, PUT, DELETE)
- Cache-Control - Cache directive manipulation
- Cache Poisoning - Unkeyed header injection
- Range Header - Partial content bypasses
- SQLi Bypass - WAF-evading SQL injection payloads (comment obfuscation, case variation, encoding)
- XSS Bypass - Cross-site scripting evasion (tag manipulation, event handlers, encoding)
- Command Injection Bypass - OS command injection evasion (IFS, encoding, chaining)
- Path Traversal Bypass - Directory traversal evasion (encoding, null bytes, normalization)
- SSRF Bypass - Server-side request forgery evasion (IP formats, DNS rebinding, protocol smuggling)
- HTTP Parameter Pollution - Duplicate parameters to confuse parsing
- WAF Fingerprinting - Identifies WAF vendor and version (Cloudflare, AWS WAF, Akamai, Imperva, F5, Sucuri, ModSecurity, Barracuda, Fortinet, and more)
- CDN Detection - Identifies CDN provider (CloudFront, Akamai, Fastly, Cloudflare, etc.)
- Rate Limit Detection - Identifies request thresholds
- Bot Detection Evasion - User-Agent rotation, browser fingerprint simulation
- API Endpoint Discovery - Finds unprotected /api/, /graphql, /swagger, /actuator endpoints
- IPv6 Bypass - Direct IPv6 connection attempts
- Content-Type Bypass - MIME type confusion attacks
- Python 3.8+
- PySide6 6.10.1+
- requests library
If you discover vulnerabilities using this tool:
- DO report to the affected organization immediately
- DO give reasonable time for fixes (typically 90 days)
- DO follow coordinated disclosure practices
- DON'T publicly disclose until patched
- DON'T exploit findings for personal gain
This tool is designed for learning. Recommended resources:
- OWASP WAF Testing Guide
- PortSwigger Web Security Academy
- Bug Bounty Platforms (for authorized testing)
- Nazariy Buryak
- Marwan Fayad
FOR AUTHORIZED SECURITY TESTING ONLY
This tool is intended exclusively for authorized penetration testing and security research. You must obtain explicit written permission before testing any system you do not own.
Unauthorized access to computer systems is illegal. Violators may face prosecution under the Computer Fraud and Abuse Act (CFAA), Computer Misuse Act, or equivalent laws in your jurisdiction.
By using this tool, you agree to:
- Only test systems you own or have written authorization to test
- Comply with all applicable laws and regulations
- Accept full responsibility for your actions
The authors assume NO LIABILITY for misuse. This software is provided "AS IS" without warranty of any kind.
If you don't have permission, don't use it.
######There are hidden things in this program, can you find them all?
