
An advanced vulnerability scanner for detecting **CVE-2025-55182** and **CVE-2025-66478** - critical Remote Code Execution (RCE) vulnerabilities in Next.js applications using React Server Components (RSC).
A powerful and easy-to-use scanner for detecting critical RCE vulnerabilities in Next.js applications
An advanced vulnerability scanner for detecting CVE-2025-55182 and CVE-2025-66478 - critical Remote Code Execution (RCE) vulnerabilities in Next.js applications using React Server Components (RSC).
This enhanced tool builds upon the excellent research by Assetnote Security Team with improved detection, ease of use, and comprehensive reporting.
test_urls.txt in the same directoryconfig.jsonThese vulnerabilities affect Next.js applications using React Server Components through improper handling of multipart form-data requests:
Exploit Mechanism: The vulnerability exploits the RSC protocol's multipart parsing to inject arbitrary JavaScript code that executes server-side, allowing attackers to run system commands.
Windows:
setup.bat
Linux/macOS:
chmod +x setup.sh
./setup.sh
git clone https://github.com/yourusername/nextjs-rce-scanner.git
cd nextjs-rce-scanner
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/macOS
source venv/bin/activate
pip install -r requirements.txt
The simplest way to start scanning:
Windows:
scan.bat
Linux/macOS:
./scan.sh
Or directly:
python quick_scan.py
What happens:
test_urls.txt if presentpython quick_scan.py
# When prompted, enter: 1
# Enter URL: https://target.com
Create test_urls.txt in the same directory:
https://example1.com
https://example2.com
https://example3.com
Run scanner:
python quick_scan.py
# Auto-detects test_urls.txt and scans all URLs
python nextjs_rce_scanner.py --url https://target.com --payload-type rce
Options:
--url: Single target URL--file: Path to file with URLs (one per line)--payload-type: Payload variant (rce, safe, waf_bypass, vercel_bypass, custom)--output: Report file path--format: Report format (json, csv, html)--gui: Launch graphical interface--timeout: Request timeout in seconds--max-redirects: Maximum redirects to follow--verbose: Detailed outputExample:
python nextjs_rce_scanner.py --file targets.txt --format html --output scan_results.html --verbose
═══════════════════════════════════════════════════════════
🔍 Next.js RCE Scanner - Triple Layer Detection
═══════════════════════════════════════════════════════════
[*] Auto-detected file: test_urls.txt
[*] Loading URLs from file...
[*] Loaded 5 URLs
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[1/5] Scanning: https://example.com
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[✓] RCE Payload Test → Secure
[✓] Safe Payload Test → Secure
[✓] Vercel Bypass Test → Secure
Status: ✅ SECURE (0/3 payloads detected vulnerability)
Response: 405 (Method Not Allowed)
JSON Report:
{
"scan_timestamp": "2025-01-15T10:30:00",
"total_targets": 5,
"vulnerable": 0,
"results": [...]
}
HTML Report: Professional formatted report with color-coded results, scan statistics, and detailed findings.
Customize scanner behavior via config.json:
{
"scanner_settings": {
"timeout": 30,
"max_redirects": 5,
"verify_ssl": false
},
"payloads": {
"rce_commands": {
"unix_test": "echo $((41*271))",
"windows_test": "powershell -c \"41*271\""
}
},
"detection": {
"rce_patterns": [".*/login\\?a=11111.*"],
"safe_error_codes": [500]
},
"rate_limiting": {
"enabled": true,
"requests_per_second": 2
}
}
X-Action-Redirect header with specific patternnextjs-rce-scanner/
├── nextjs_rce_scanner.py # Main scanner engine (full features)
├── quick_scan.py # Simple interactive wrapper
├── config.json # Configuration file
├── requirements.txt # Python dependencies
├── test_urls.txt # URL list for bulk scanning
├── setup.sh # Linux/Mac installation script
├── setup.bat # Windows installation script
├── scan.sh # Linux/Mac quick launcher
├── scan.bat # Windows quick launcher
├── README.md # This file
└── LICENSE # MIT License
Test against known vulnerable environments (ethical testing only):
python quick_scan.py
Enter test URL when prompted. The scanner will:
FOR EDUCATIONAL AND AUTHORIZED TESTING ONLY
This tool is provided for security research, vulnerability assessment, and authorized penetration testing. Users must:
The authors assume NO LIABILITY for misuse or damage caused by this tool.
By using this software, you agree to use it in a legal and responsible manner.
MIT License - See LICENSE file for details
Contributions are welcome! Please:
git checkout -b feature/improvement)git commit -am 'Add new feature')git push origin feature/improvement)For security issues or questions:
⭐ If this tool helped you, please consider giving it a star! ⭐
Made with ❤️ for the security community