
Scanner to detect the presence of CVE-2025-55182 & CVE-2025-66478 on targeted web services.
A safe, non-invasive scanner for detecting React Server Components (RSC) and Next.js Remote Code Execution vulnerabilities (CVE-2025-55182 & CVE-2025-66478).
This scanner helps organizations identify whether their web services are vulnerable to the React2Shell vulnerability, which affects applications using React Server Components and Next.js. The vulnerability allows attackers to achieve remote code execution through specially crafted multipart form data.
Important: This scanner uses only safe side-channel detection methods and does not execute code on target systems.
Safe Detection Method
Flexible Scanning Options
/_next, /api)Output Options
pip install -r requirements.txt
Or install manually:
pip install requests tqdm urllib3
Scan a single URL:
python scanner.py -u https://example.com
Scan multiple hosts from a file:
python scanner.py -l hosts.txt
Scan with custom paths:
python scanner.py -u https://example.com --path /_next --path /api
Scan with paths from file:
python scanner.py -u https://example.com --path-file paths.txt
Custom headers:
python scanner.py -u https://example.com -H "Authorization: Bearer token" -H "X-Custom: value"
Multi-threaded scanning:
python scanner.py -l hosts.txt -t 20
Export results to JSON:
python scanner.py -l hosts.txt -o results.json
Export all results (including non-vulnerable):
python scanner.py -l hosts.txt -o results.json --all-results
Verbose mode (show details for all hosts):
python scanner.py -l hosts.txt -v
Quiet mode (only show vulnerable hosts):
python scanner.py -l hosts.txt -q
Disable colors:
python scanner.py -l hosts.txt --no-color
One host per line. Lines starting with # are ignored.
https://example.com
http://test.example.org
another-site.com
# This is a comment
One path per line. Paths will be automatically prefixed with / if not present.
/_next
/api
/actions
# Comment lines are ignored
| Option | Description |
|---|---|
-u, --url URL | Single URL to scan |
-l, --list FILE | File containing list of hosts to scan |
-t, --threads N | Number of concurrent threads (default: 10) |
--timeout N | Request timeout in seconds (default: 10) |
-o, --output FILE | Output file for results (JSON format) |
--all-results | Save all results, not just vulnerable hosts |
-k, --insecure | Disable SSL certificate verification |
-H, --header HEADER | Custom header (can be used multiple times) |
-v, --verbose | Verbose output (show details for all hosts) |
-q, --quiet | Quiet mode (only show vulnerable hosts) |
--no-color | Disable colored output |
--path PATH | Custom path to test (can be used multiple times) |
--path-file FILE | File containing list of paths to test |
The scanner uses a non-invasive detection method that:
JavaScript Error Messages
SyntaxError - Indicates improper JSON parsing of form dataUnexpected token - Suggests vulnerable RSC deserializationReferenceError / TypeError - Reveals unsafe object property accessRSC-Specific Error Responses
text/x-component content typeVary: RSC, Next-Router-State-Tree){"digest":"..."})$@, error objects)The scanner detects both verbose error messages (older versions) and structured RSC error responses (newer versions), ensuring comprehensive coverage across different Next.js implementations.
Important: This method does NOT execute any code on the target system. It only detects whether the system is vulnerable by observing error responses.
python scanner.py -u https://myapp.com
# Create hosts file with all your domains
python scanner.py -l organization-hosts.txt -t 20 -o scan-results.json
# Create paths.txt with common Next.js endpoints
python scanner.py -l hosts.txt --path-file paths.txt -o results.json
python scanner.py -u https://myapp.com -H "Cookie: session=abc123" -H "Authorization: Bearer token"
The scanner will mark a host as VULNERABLE if it detects:
When the scanner detects a vulnerability, it means:
0: No vulnerabilities found1: One or more vulnerabilities detected-t) to avoid overwhelming targetsIf your application is found vulnerable:
Immediate Actions:
Long-term Security:
References:
This tool is for authorized security testing only. Unauthorized access to computer systems is illegal. The authors are not responsible for misuse or damage caused by this program.