Apache Camel 安全公告:CVE-2026-49099 漏洞概述 严重性:中等 摘要:非 Camel 前缀的 Exchange 头常量(如 、 、 等)可以绕过 HTTP 头限制,允许 HTTP 客户端注入 SQL/SOQL 查询,覆盖目标 ,并重新定向 Apex REST 调用,利用 Salesforce 连接用户的权限。 描述:Camel-Salesforce 生产者解析其操作参数(SOQL 查询、SOQL 搜索、目标 名称和 ID、Apex REST URL 和方法,以及 Apex 查询参数)时,优先从 Exchange 消息头读取,而不是从端点配置中读取。控制头常量在 中定义(例如 、 、 、 、 、 和 前缀),使用非 Camel 前缀值。由于这些名称不以 Camel 或 Camel 前缀 开头,它们会直接通过 HTTP 边界传递到 Salesforce 生产者。在桥接 HTTP 消费者的路由中(例如从 到 Salesforce 生产者),任何 HTTP 客户端都可以设置这些头并覆盖路由意图,提供自己的 SOQL 查询或 SOQL 搜索以读取任何 数据,覆盖目标 名称和 ID 以进行 CRUD 操作,或重新定向 Apex REST 调用到不同的端点和 HTTP 方法(包括破坏性方法)并注入查询参数。所有此类操作都以 Salesforce 连接(集成)用户的完全权限运行,当桥接消费者未认证时,通常范围很广。 影响范围 受影响版本: - 4.0.0 到 4.14.8 - 4.15.0 到 4.18.3 - 4.19.0 到 4.21.0 修复方案 修复版本:4.14.8、4.18.3 和 4.21.0 缓解措施: - 建议用户升级到 4.21.0 版本。 - 对于 4.14.x LTS 发布系列的用户,建议升级到 4.14.8。 - 对于 4.18.x 发布系列的用户,建议升级到 4.18.3。 - 在升级后,设置 Salesforce 操作参数的路由应使用 CamelSalesforce 名称(例如 和 )而不是旧的 或 值;端点选项拼写保持不变。 - 对于无法立即升级的部署,应在路由开始时从不受信任的输入中剥离 Salesforce 控制头(例如 和 ),并设置查询 和 Apex 参数。 参考 PGP 签名公告数据:CVE-2026-49099.txt.asc Mitre CVE 条目:https://www.cve.org/CVERecord?id=CVE-2026-49099 致谢 此漏洞由 Yao Bao 从 PayPal 发现。 --- 注意**:页面中未包含具体的 POC 代码或利用代码。