Severity: important
Affected versions:
- Apache Camel (org.apache.camel:camel-jms) 3.0.0 before 4.14.6
- Apache Camel (org.apache.camel:camel-jms) 4.15.0 before 4.18.2
- Apache Camel (org.apache.camel:camel-jms) 4.19.0 before 4.20.0
Description:
The fix for CVE-2025-27636 added setLowerCase(true) to HttpHeaderFilterStrategy
so that case-variant header names such as 'CAmelExecCommandExecutable' are
filtered out alongside 'CamelExecCommandExecutable'. The same
setLowerCase(true) call was not applied to five non-HTTP HeaderFilterStrategy
implementations: JmsHeaderFilterStrategy and ClassicJmsHeaderFilterStrategy in
camel-jms, SjmsHeaderFilterStrategy in camel-sjms, CoAPHeaderFilterStrategy in
camel-coap, and GooglePubsubHeaderFilterStrategy in camel-google-pubsub.
Because those strategies use case-sensitive String.startsWith('Camel'/'camel')
filtering while the Camel Exchange stores headers in a case-insensitive map, an
attacker with JMS (or equivalent) producer access to the broker consumed by a
Camel route can inject case-variant Camel internal headers, which are then
resolved by downstream components such as camel-exec and camel-file using their
canonical casing. This enables remote code execution and arbitrary file write
on routes that forward JMS messages to header-driven components.
This issue affects Apache Camel: from 3.0.0 before 4.14.6, from 4.15.0 before
4.18.2, from 4.19.0 before 4.20.0.
Users are recommended to upgrade to version 4.20.0, which fixes the issue. If
users are on the 4.14.x LTS releases stream, then they are suggested to upgrade
to 4.14.6. If users are on the 4.18.x releases stream, then they are suggested
to upgrade to 4.18.2.
This issue is being tracked as CAMEL-23313
Credit:
Saroj Khadka (finder)
References:
https://camel.apache.org/security/CVE-2026-40453.html
https://camel.apache.org/
https://www.cve.org/CVERecord?id=CVE-2026-40453
https://issues.apache.org/jira/browse/CAMEL-23313