CVE-2026-39816Apache NiFi 是一个自动化数据流处理系统。在 2.0.0-M1 至 2.8.0 版本中,其可选扩展组件 TinkerpopClientService 存在安全缺陷。由于该服务缺少带有“执行代码所需权限”的 Restricted 注解,在启用了细粒度授权且安装了该组件的环境中,未拥有执行代码权限的攻击者仍可配置该服务。攻击者可利用此漏洞提交 Groovy 脚本,导致在服务器端执行任意代码。未安装 nifi-other-graph-services-nar 的实例不受此漏洞影响。
该漏洞的根源在于 Apache NiFi 的 TinkerpopClientService 组件在代码层面未正确实施访问控制检查。通常情况下,执行代码等高危操作需要特定的“Execute Code”权限,并通过 @Restricted 注解进行强制保护。然而,TinkerpopClientService 支持通过 ByteCode Submission 类型提交脚本,允许在提交查询前执行 Groovy 脚本。由于缺少必要的Restricted注解,NiFi 的细粒度授权机制在验证该服务配置权限时未能拦截低权限用户。攻击者仅需拥有基本的网络访问权限和低权限账户,即可访问服务配置页面,并通过提交恶意的 Groovy 字节码脚本在服务器上下文中执行系统命令。这实质上是一个垂直越权漏洞,允许普通用户提升至代码执行权限。