Getting Started
This section provides everything you need to get started with smugglex, from installation to your first scan.
Getting Started with Smugglex
Welcome to the smugglex documentation! This section will guide you through everything you need to know to start testing for HTTP Request Smuggling vulnerabilities.
What You'll Learn
In this section, you'll find:
- Overview: Learn about HTTP Request Smuggling vulnerabilities, how they work, and why smugglex is the tool you need
- Installation: Step-by-step instructions to install smugglex on your system
Quick Start
If you're eager to get started, here's the fastest way to begin:
1. Install Smugglex
cargo install smugglex
2. Run Your First Scan
smugglex https://example.com/
3. Review Results
Smugglex will automatically test for all major HTTP Request Smuggling attack types and report any vulnerabilities found.
Learning Path
We recommend following this learning path:
- Understand the Basics: Read the Overview to understand what HTTP Request Smuggling is and how smugglex detects it
- Install the Tool: Follow the Installation guide to get smugglex up and running
- Run Tests: Start with simple scans on systems you have permission to test
- Explore Options: Experiment with different command-line options and configurations
- Analyze Results: Learn to interpret scan results and understand vulnerability details
Example Workflow
Here's a typical workflow for using smugglex:
# Basic scan
smugglex https://target.com/
# Scan with verbose output and save results
smugglex https://target.com/ -v -o results.json
# Scan with custom headers and timeout
smugglex https://target.com/ -H "Authorization: Bearer token" -t 15
# Scan multiple URLs from a file
cat urls.txt | smugglex -v
# Run specific checks only
smugglex https://target.com/ -c cl-te,te-cl
# Export vulnerable payloads for manual verification
smugglex https://target.com/ --export-payloads ./payloads
Key Concepts
Before you dive in, here are some key concepts to understand:
HTTP Request Smuggling
A technique that exploits discrepancies in how front-end and back-end servers parse HTTP requests. When servers disagree on request boundaries, attackers can "smuggle" malicious requests through security controls.
Attack Types
Smugglex tests for multiple attack types:
- CL.TE: Content-Length vs Transfer-Encoding desynchronization
- TE.CL: Transfer-Encoding vs Content-Length desynchronization
- TE.TE: Transfer-Encoding obfuscation (60+ variations)
- H2C: HTTP/2 Cleartext smuggling
- H2: HTTP/2 protocol-level smuggling
Timing-Based Detection
Smugglex uses sophisticated timing analysis to detect vulnerabilities. By comparing response times between normal requests and attack requests, the tool can reliably identify desynchronization issues.
Prerequisites
To use smugglex effectively, you should have:
- Basic understanding of HTTP protocol
- Knowledge of web application security
- Authorization to test target systems
- Familiarity with command-line tools
Security Notice
⚠️ Important: Smugglex is a powerful security testing tool designed for:
- Authorized penetration testing
- Security research in controlled environments
- Bug bounty hunting on in-scope targets
- Educational purposes in lab settings
Never use smugglex on systems you don't own or don't have explicit written permission to test. Unauthorized testing may be illegal and unethical.
Getting Help
Need assistance?
- Use
smugglex --helpfor command-line help - Check the GitHub repository for examples
- Open an issue if you find bugs
- Follow @hahwul on Twitter for updates
Contributing
Smugglex is open-source and welcomes contributions! If you want to help improve the tool:
- Report bugs and suggest features via GitHub Issues
- Submit pull requests with improvements
- Share your findings and help improve detection methods
- Contribute documentation and examples
Ready to Begin?
Start with the Overview to understand HTTP Request Smuggling, or jump straight to Installation if you're ready to install the tool.