Advanced Web Crawler & XSS Vulnerability Detection Framework
Features β’ Installation β’ Usage β’ Examples β’ Legal Notice
FOR AUTHORIZED TESTING ONLY
This tool is designed EXCLUSIVELY for:
- β Authorized penetration testing
- β Security research and education
- β Testing systems you own or have explicit written permission to test
Unauthorized use is ILLEGAL and may violate computer crime laws. Always obtain proper written authorization before conducting any security testing!
- Features
- Architecture
- Installation
- Usage
- Testing Modes
- Examples
- Advanced Features
- Output Reports
- Contributing
- Social Media
- π·οΈ Intelligent Web Crawler - Automatic discovery of URLs and parameters
- π― Multi-Type XSS Detection - Reflected, Stored, and DOM-based XSS
- π‘οΈ WAF Detection & Bypass - Automatic WAF identification and evasion techniques
- π Blind XSS Detection - Out-of-band XSS payload tracking
- π Form Auto-Testing - Automatic form discovery and testing
- πͺ Cookie Testing - XSS vulnerability testing in cookies
- π Professional Reporting - HTML and JSON reports with detailed analysis
- β‘ 1000+ XSS Payloads - Extensive payload library with encoding variations
- 𧬠Smart Payload Encoding - URL, Base64, HTML entity encoding
- π¨ SVG-Based Payloads - Advanced SVG XSS vectors
- π Multi-Threading - Fast concurrent testing
- π Confidence Scoring - Intelligent vulnerability rating system
- π― Parameter Analysis - Deep parameter injection testing
- π Custom Headers Testing - User-Agent, Referer, and custom header injection
- π΄ Reflected XSS Tester - GET/POST parameter reflection analysis
- πΎ Stored XSS Tester - Persistent payload detection with verification
- π₯οΈ DOM XSS Tester - Client-side vulnerability analysis
- π‘οΈ WAF Detector - Identifies 15+ major WAF solutions
XSSROOTX/
βββ main.py # Main application entry point
βββ requirements.txt # Python dependencies
βββ payloads.txt # XSS payload database (1000+ payloads)
βββ modules/
β βββ core.py # Core utilities and configuration
β βββ crawler.py # Web crawling engine
β βββ tester.py # Main testing controller
β βββ reflected.py # Reflected XSS detection
β βββ stored.py # Stored XSS detection
β βββ dom.py # DOM-based XSS detection
β βββ waf_detector.py # WAF detection and bypass
β βββ payload.py # Payload management
β βββ reporter.py # Report generation
β βββ form_handler.py # Form processing
β βββ colors.py # Terminal color output
βββ results/ # Output directory
β βββ *.html # HTML reports
β βββ *.json # JSON reports
βββ logs/ # Execution logs
- Python 3.6 or higher
- pip (Python package manager)
- Git
# Clone the repository
git clone https://github.com/Rootx202/XSSRootX.git
# Navigate to the directory
cd XSSRootX
# Install required dependencies
pip install -r requirements.txt
# Or using pip3
pip3 install -r requirements.txtUsing a virtual environment keeps dependencies isolated and prevents conflicts:
# Clone the repository
git clone https://github.com/Rootx202/XSSRootX.git
# Navigate to the directory
cd XSSRootX
# Create a virtual environment
python3 -m venv venv
# Activate the virtual environment
source venv/bin/activate
# Your prompt should now show (venv) at the beginning
# Install dependencies inside the virtual environment
pip install -r requirements.txt
# Run the tool
python3 main.py --help
# When finished, deactivate the virtual environment
deactivateNote for Windows Users:
# Activate virtual environment on Windows
venv\Scripts\activate# Install dependencies manually
pip install requests beautifulsoup4 lxml colorama urllib3
# Or using pip3
pip3 install requests beautifulsoup4 lxml colorama urllib3# Check Python version
python3 --version
# Test the tool
python3 main.py --helppython3 main.py -u <target_url> [options]| Option | Description | Default |
|---|---|---|
-u, --url |
Target URL to test (required) | - |
-p, --payloads |
Custom payload file path | payloads.txt |
-m, --model |
XSS type to test: reflected, stored, dom, all |
all |
-o, --output |
Output directory for results | results |
-t, --threads |
Number of concurrent threads | 5 |
--max-depth |
Maximum crawling depth | 3 |
--max-urls |
Maximum URLs to crawl | 100 |
--delay |
Delay between requests (seconds) | 0.5 |
--timeout |
Request timeout (seconds) | 5 |
-v, --verbose |
Enable verbose/debug output | False |
| Option | Description |
|---|---|
--test-headers |
Test HTTP headers (User-Agent, Referer, etc.) |
--test-cookies |
Test cookie parameters for XSS |
--test-forms |
Enable POST form auto-testing |
--waf-bypass |
Enable WAF bypass mode |
--blind-xss |
Enable Blind XSS detection |
--blind-xss-url |
Callback URL for Blind XSS (e.g., yoursubdomain.xss.ht) |
--all-tests |
Enable all advanced testing features |
--tag |
Custom tag for XSS payloads |
--user-agent |
Custom User-Agent string |
Tests for immediate reflection of malicious payloads in the response.
python3 main.py -u https://example.com -m reflectedDetects persistent XSS vulnerabilities that are stored server-side.
python3 main.py -u https://example.com -m storedAnalyzes client-side JavaScript for DOM manipulation vulnerabilities.
python3 main.py -u https://example.com -m domTests all XSS types simultaneously.
python3 main.py -u https://example.com -m allSimple scan of a target website:
python3 main.py -u https://testphp.vulnweb.comUse your own payload list:
python3 main.py -u https://example.com -p /path/to/custom_payloads.txtCrawl deeper with a custom XSS tag:
python3 main.py -u https://example.com --max-depth 5 --max-urls 200 --tag "MyXSSTest"Fast, multi-threaded testing:
python3 main.py -u https://example.com -t 10 --delay 0.2Full testing with all features enabled:
python3 main.py -u https://example.com --all-tests --max-depth 4 -t 8 -vTest with WAF evasion techniques:
python3 main.py -u https://protected-site.com --waf-bypass -vTest for out-of-band XSS:
python3 main.py -u https://example.com --blind-xss --blind-xss-url yourdomain.xss.htTest injection in headers and cookies:
python3 main.py -u https://example.com --test-headers --test-cookies --test-formsTest specific XSS type with custom output directory:
python3 main.py -u https://example.com -m reflected -o /path/to/results --verboseSlow, stealthy testing to avoid detection:
python3 main.py -u https://example.com -t 1 --delay 2 --timeout 10XSSROOTX automatically detects major Web Application Firewalls:
- Cloudflare
- AWS WAF
- Akamai
- Imperva (Incapsula)
- ModSecurity
- Sucuri
- F5 BIG-IP
- Barracuda
- Citrix NetScaler
- And more...
Automatic payload encoding variations:
- Raw
- URL Encoding
- Double URL Encoding
- HTML Entity Encoding
- Base64 Encoding
- Unicode Encoding
- Mixed Encoding
- Smart Payload Sorting: Most effective payloads tested first
- Early Stopping: Stops testing redundant parameters after finding vulnerabilities
- Reflection Analysis: Analyzes how input is reflected in the response
- Context-Aware Testing: Adapts payloads based on injection context
Professional, interactive HTML report with:
- Executive summary
- Vulnerability details with severity ratings
- Proof-of-concept payloads
- Remediation recommendations
- Color-coded severity levels
Location: results/xss_report_YYYYMMDD_HHMMSS.html
Machine-readable JSON format for integration:
- Full vulnerability data
- Test statistics
- Payload information
- Crawl results
Location: results/xss_report_YYYYMMDD_HHMMSS.json
Text file with all discovered URLs and parameters:
Location: results/crawl_results.txt
Detailed execution logs for debugging:
Location: logs/xss_test_YYYYMMDD_HHMMSS.log
Issue: ModuleNotFoundError: No module named 'requests'
# Solution: Install dependencies
pip3 install -r requirements.txtIssue: Permission denied when running
# Solution: Make executable
chmod +x main.pyIssue: No payloads found
# Solution: Ensure payloads.txt is in the same directory
ls -la payloads.txtIssue: Connection timeout errors
# Solution: Increase timeout
python3 main.py -u https://example.com --timeout 15- Always Get Permission: Never test systems without explicit authorization
- Start Small: Use
--max-urls 50for initial reconnaissance - Use Verbose Mode: Enable
-vfor troubleshooting and learning - Respect Rate Limits: Increase
--delayto avoid overwhelming the target - Review Reports: Always manually verify automated findings
- Keep Updated: Regularly update payload database
- Legal Compliance: Document authorization before testing
Stay connected and get updates:
- π΅ TikTok: @rootx.202
- π¬ Telegram: @rootx.202
- π» GitHub: Rootx202/XSSRootX
This project is licensed under the MIT License - see the LICENSE file for details.
This tool is provided for educational and authorized testing purposes only. The developers assume no liability and are not responsible for any misuse or damage caused by this program.
By using XSSROOTX, you agree to:
- Use it only on systems you own or have explicit permission to test
- Comply with all applicable local, state, and federal laws
- Take full responsibility for your actions
Unauthorized access to computer systems is illegal!
- Security researchers and ethical hackers worldwide
- The open-source community
- Bug bounty hunters who help make the web safer
Made with β€οΈ by RootX
β Star this repository if you find it helpful!