Flowise MCP实现存在严重远程代码执行漏洞

安全研究人员发现,开源AI平台Flowise在实现模型上下文协议(MCP)stdio服务器时存在严重漏洞(CVE-2026-40933,CVSS评分9.9)。攻击者可通过恶意导入聊天流,无需保存或运行即可触发远程代码执行,进而获取API密钥、数据库及云资源等敏感信息。该漏洞源于平台允许用户配置含任意命令的MCP stdio服务器。官方已多次修复但均可被绕过,研究人员建议将CUSTOM_MCP_PROTOCOL设为SSE以彻底规避风险。

使用轻量级开源平台Flowise来支撑自托管AI工作负载的企业,如今面临一个新的近满分高危安全问题。

Obsidian Security的研究人员详细披露了一个影响自托管Flowise部署的一键式远程代码执行(RCE)漏洞,该漏洞通过Flowise对模型上下文协议(MCP)标准输入输出(stdio)服务器的实现而触发。

问题的核心在于对攻击者控制的MCP配置沙箱隔离失效,从而导致服务器端代码被执行。

研究人员在一篇博客文章中指出:"Flowise中经身份验证后的RCE漏洞,可在未进行任何保存或运行操作之前,通过导入一个恶意聊天流(chatflow)并单击一次即可触发。官方发布的补丁依赖于输入验证机制,但该机制极易被绕过,且未能解决根本问题。"

Flowise通常被用于开发内部AI助手、检索增强生成(RAG)应用、面向客户的聊天机器人,以及与业务系统相连接的自主智能体。

该漏洞不影响Flowise Cloud版本,因为该版本已禁用stdio MCP功能。对于其他启用了此功能且确有使用需求的部署环境,研究人员解释称,开发者需要充分理解其中的安全与功能权衡,并主动审查服务器配置以识别潜在威胁。

该漏洞被追踪为CVE-2026-40933,影响Flowise对MCP stdio服务器的实现。MCP的stdio机制设计用于启动本地服务器进程,并通过标准输入输出流与之通信,使AI智能体能够与文件、Git仓库、数据库、浏览器及本地凭据进行交互。

根据Obsidian Security的分析,该问题根源在于Flowise允许用户配置包含任意命令的MCP stdio服务器。由于这些命令最终由底层操作系统执行,攻击者可以以Flowise进程的权限实现远程代码执行。

研究人员还指出,在容器化部署场景下,此漏洞可有效获取托管该平台环境的root级别访问权限。

该漏洞被评定为CVSS 9.9分,一旦被成功利用,可能导致API密钥、数据库、云资源、SaaS应用及其他可通过Flowise访问的资产遭到泄露。

披露内容详述了Flowise为限制MCP stdio命令的配置与执行方式所采取的一系列修复措施。然而,Obsidian表示,每一轮修复主要依赖命令验证和过滤机制,在特定条件下仍可被绕过。

研究人员指出:"Flowise似乎已意识到风险,并对Custom MCP进行了多轮加固。其中#5232号更新引入了CUSTOM_MCP_SECURITY_CHECK,这是一个针对Custom MCP配置默认启用的验证层。"但他们同时表示,尽管这些检查减少了明显的命令执行路径,却并未从根本上改变允许用户提供stdio MCP配置所带来的底层威胁。

Obsidian在报告该漏洞后,Flowise在#5741和#5943更新中进一步加固了功能标志验证机制,但这些措施同样未能彻底消除威胁。

当研究人员建议将stdio MCP默认设置为不安全状态、要求用户显式选择启用时,Flowise方面据报道表示,希望"在不完全禁用用户可能依赖的功能的前提下,限制已知的危险行为"。Obsidian随后共享了一个概念验证(POC)漏洞利用程序,演示了现有保护措施仍可被绕过,从而成功实现RCE。

研究人员建议的唯一完整缓解措施是通过设置"CUSTOM_MCP_PROTOCOL=sse"来关闭MCP stdio功能。对于无法在不影响正常运营的情况下关闭该功能的用户,研究人员补充建议:尽可能锁定可信软件包版本,并对来自不可信来源的导入聊天流进行严格审查。

Q&A

Q1:CVE-2026-40933漏洞具体是什么原理?

A:CVE-2026-40933漏洞的核心是Flowise允许用户配置包含任意命令的MCP stdio服务器,而这些命令会直接由底层操作系统执行。攻击者只需导入一个恶意聊天流并单击一次,即可在未保存或运行的情况下触发远程代码执行,以Flowise进程的权限控制服务器,在容器化环境下甚至可获得root级别访问权限。

Q2:Flowise Cloud用户会受到这个漏洞的影响吗?

A:不会。该漏洞不影响Flowise Cloud版本,因为Cloud版本已默认禁用stdio MCP功能。受影响的主要是自托管部署了Flowise且启用了MCP stdio功能的用户和企业,这类场景下的风险较高,需要及时采取安全措施加以应对。

Q3:目前有什么方法可以彻底修复这个Flowise漏洞?

A:目前研究人员推荐的唯一完整缓解措施是通过设置环境变量"CUSTOM_MCP_PROTOCOL=sse"来彻底关闭MCP stdio功能。Flowise官方虽多次发布补丁,但每次修复均依赖命令验证和过滤机制,仍可在特定条件下被绕过。无法关闭该功能的用户,应尽量锁定可信软件包版本并严格审查来自不可信来源的导入聊天流。

来源:InfoWorld

0赞

好文章,需要你的鼓励

2026

06/05

13:52

分享

点赞

邮件订阅