CVE-2025-27636 – Apache Camel中通过大小写敏感头过滤绕过实现远程代码执行
概述
CVE-2025-27636是Apache Camel中的一个关键远程代码执行漏洞,影响exec组件。该漏洞的产生原因是Camel的安全过滤器仅检查小写的敏感HTTP头,未能阻止以混合或大写形式提交的相同头。攻击者可利用此疏忽通过HTTP请求执行任意系统命令。
CVE ID: CVE-2025-27636
严重性: 中等
CVSS评分: 5.6 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L)
EPSS评分: 35.5%
发布日期: 2025年3月19日
受影响版本:
- 4.10.0 – 4.10.1
- 4.8.0 – 4.8.4
- 3.10.0 – 3.22.3
已修复版本: 4.10.2, 4.8.5, 3.22.4
需要认证: 取决于部署方式
影响: 远程代码执行
Apache Camel在以上版本中通过将头名称规范化为小写再进行过滤来修复此问题。
技术分析
Apache Camel支持命令中心功能,允许通过HTTP端点执行操作系统级命令。按设计,此功能应仅限于受信任的管理员,并通过严格过滤特定头来保护:
- CamelExecCommandExecutable
- CamelExecCommandArgs
然而,易受攻击的Camel版本执行了大小写敏感的头检查。以混合大小写形式传递这些头(例如CAmelExecCommandExecutable)可使它们绕过安全过滤器。
当被利用时,易受攻击的Camel实例会在Camel进程的权限下执行攻击者选择的系统命令——在某些部署中,该进程可能以root身份运行。
利用条件
- 攻击者必须能够注入或上传恶意XML路由定义
- 易受攻击的Camel实例必须解析XML路由
- 运行时环境必须允许进程执行
注意:在某些环境中,如果路由上传需要登录,则可能需要低权限认证。
利用方法
公开PoC
一个有效的公开PoC记录在此处:🔗 Akamai CVE-2025-27636 PoC
使用curl利用
要利用此漏洞,向易受攻击的端点发送带有混合大小写头的请求。例如,在/root中执行ls命令:
|
|
缓解措施
-
将Apache Camel升级至:
- 4.10.2+
- 4.8.5+
- 3.22.4+
-
限制对管理端点(如命令中心)的外部访问
-
阻止或清理可能影响系统行为的传入HTTP头
-
部署WAF以检测可疑的头名称或负载
-
尽可能在低权限用户账户下运行Camel
参考
- NVD CVE-2025-27636
- Akamai PoC Exploit
- Apache Camel Security