工作流编排平台 Orkes Conductor 被披露一个 CVSS 评分 9.8 的未认证远程代码执行漏洞 CVE-2026-58138,根因是 GraalVM 求值器未做沙箱化。Fortinet 威胁情报已确认该漏洞在野利用:9 月 2 日至 9 日拦截近 7000 次利用尝试,9 月 9 日单日拦截 1290 次,比此前日均高出 132%。官方修复版本为 3.30.2。
事件概述
Orkes Conductor 是从 Netflix Conductor 继承而来的编排引擎商业发行版,负责把 API 调用、脚本与判断逻辑串成可执行工作流,在金融、医疗、制造等受监管行业被大量用于自动化流水线。其定位决定了它天然持有高价值权限:内部数据库、业务 API 与 CI/CD 流水线往往都挂在这套系统上。
漏洞影响 3.21.21 至 3.30.2 之前的版本。厂商已于 2026 年 6 月发布 3.30.2 修复,漏洞 6 月 30 日进入 NVD,8 月出现公开概念验证代码,9 月即演变为大规模扫描与利用,中间仅隔约三个月,而这段时间正是多数部署未能完成升级的窗口。
技术细节:未沙箱化的 GraalVM 求值器
问题出在 Conductor 对工作流定义中表达式的求值方式。Conductor 支持多种会执行用户自定义表达式的任务类型,包括 INLINE、LAMBDA、DO_WHILE 与 SWITCH,这些表达式由 GraalVM 多语言运行时求值,而受影响的实现把执行上下文配置成了不受限制的形态,典型设置是 HostAccess.ALL 或 allowAllAccess(true)。
- 宿主访问限制被关闭后,脚本即可触及宿主 JVM 的任意类与方法;
- 通过一次反射调用 java.lang.Runtime.getRuntime().exec(…),工作流表达式就能变成系统命令;
- 认证边界在处理这些任务类型时并未生效,攻击者可直接提交恶意工作流定义;
- 命令以 Conductor 服务账号权限执行,若该进程以 root 运行,等同于直接拿到 root。
NVD 给出的向量为 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H,对应 CWE-94 代码注入;EPSS 评估其被利用概率为 9.26%,处于第 95 百分位。
影响评估
Fortinet 遥测显示利用来源覆盖德国、中国香港、印尼、阿联酋与印度等地的基础设施;Previdian 报告自 7 月 24 日起其蜜罐遭到三次尝试,来自法国与美国两个 IP;Empirical Security 则在 8 月 21 日观测到在野利用。多家厂商的独立观测指向同一结论:这是持续性的机会型扫描活动。
危害不止于执行一条命令。编排引擎通常与内部应用、API 和数据库保持高权限连接,被攻陷的实例会成为进入内网的跳板,可用于安装持久化后门、窃取应用凭证与环境密钥、篡改业务工作流并向其他系统横向移动;服务以过高权限运行时,风险进一步放大。
修复建议
- 升级到 3.30.2 或更高版本:唯一的根治手段,升级后核实实际安装版本并按需重启相关服务;
- 收敛网络暴露面:工作流管理 API 不应直接暴露公网,应置于防火墙或带鉴权的 API 网关之后;
- 不要用网络隔离替代补丁:限制访问只能降低暴露概率,无法消除漏洞本身;
- 假定已被利用并取证:长期暴露且未升级的实例应视为可能已被入侵,重点排查异常工作流定义与可疑子进程;
- 降权运行:避免 Conductor 进程以 root 权限执行,减少单点沦陷后的爆炸半径。