免责声明: 本仓库及其 PoC 工件严格用于在隔离实验室环境中的教育、研究和防御性安全演示目的。未经授权对系统进行测试是严格禁止的。
本仓库提供了一个可复现的双容器 Docker 环境,旨在分析、利用并验证针对 React Server Components (RSC) Flight Protocol 反序列化漏洞(通常称为 React2Shell / CVE-2025-55182)的缓解措施。该实验室演示了在未打补丁的 Next.js 构建上的利用后影响,并证明了在已打补丁构建上的缓解有效性。
http://127.0.0.1:3001(react2shell-vulnerable 容器)http://127.0.0.1:3002(react2shell-patched 容器)internal: true)。127.0.0.1(localhost),以防止外部局域网访问。DUMMY_SECRET=LAB_VULNERABLE_SECRET_DO_NOT_USE_12345)进行数据外泄测试,以消除敏感数据暴露风险。24.0.0+,Compose v2.20.0+)3.8+ — 仅标准库用于基础自动化)克隆仓库并验证本地环境:
git clone https://github.com/PhanHoangKhang/React2Shell.git
进入 lab/ 目录并初始化两个双构建容器:
cd lab
docker-compose up -d --build
cd ..
在两个实验室中运行检测扫描器:
python src/react2shell_scanner.py lab/patched
python src/react2shell_scanner.py lab/vulnerable
cd lab
docker-compose stop
cd ..
要执行漏洞利用验证测试并验证数据外泄工件,请参阅详细的分步 PoC 指南:
👉 查看 PoC 与漏洞验证指南(poc_reference.md)
package-lock.json(v3 格式)。静态扫描器优先解析 packages["node_modules/next"] 内已解析的依赖树,以实现准确检测。< 15.0.3(包括 15.0.0-rc 构建)标记为易受 RSC Flight Protocol 反序列化影响。| 目标服务 | 框架 / 包 | 已安装版本 | 锁文件格式 |
|---|
易受攻击目标(:3001) | Next.js | 15.0.0-rc.1 | package-lock.json(锁文件版本 3) |
| React / React-DOM | 19.0.0-rc-65a56d0e-20241020 | NPM 注册表版本 | |
已修补目标(:3002) | Next.js | 15.0.3(稳定版) | package-lock.json(锁文件版本 3) |
| React / React-DOM | 19.0.0(稳定版) | NPM 注册表版本 |