Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain JMS producer access to consumed broker
-
DeliveryPublish message with case-variant CAmel header
-
ExploitFilter fails to strip injected header
-
ExecutionExchange resolves canonical CamelExecCommandExecutable
-
Persistcamel-exec runs attacker command / camel-file writes file
-
ImpactRemote code execution on route host
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Case sensitivity handling
|
| Exploitation Conditions | Requires that a deployed Camel route (1) consumes from one of the affected transports - camel-jms, camel-sjms, camel-coap, or camel-google-pubsub - and (2) forwards those messages to a header-driven component that honors Camel control headers, specifically camel-exec (OS command execution) or camel-file (file write). The attacker must possess producer access to the broker/topic that route consumes (reflected as PR:L in the CVSS vector) so they can publish a message containing a case-variant Camel internal header such as 'CAmelExecCommandExecutable'. Limiting factors: routes that only consume these transports without chaining to exec/file-style header-driven sinks are not exploitable for RCE; the attacker cannot exploit this with zero access to the messaging layer; and versions at or above 4.20.0 / 4.14.6 / 4.18.2 are not affected. No end-user interaction is required (UI:N). |
| Impact | The signals partly conflict and must be weighed carefully. CVSS 3.1 is 9.9 (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H) and SSVC technical impact is 'total,' consistent with full RCE and arbitrary file write. However, SSVC exploitation is 'none' and automatable is 'no,' EPSS is only 0.06% (18th percentile), there is no KEV listing, and no public exploit code is identified - so despite the near-maximum CVSS this is not currently a mass-exploited threat and leans toward targeted rather than opportunistic risk. Critically, the CVSS is not PR:N: exploitation requires PR:L, i.e. the attacker must already be able to produce messages onto the broker/topic that a vulnerable Camel route consumes, plus the route must forward those messages to a header-driven component like camel-exec or camel-file. Where those preconditions hold the impact is severe and scope-changing (S:C), but they are meaningful gates that keep real-world exposure well below what 9.9 alone implies. Verdict: high priority to patch for anyone running affected components in header-driven routes, but not an immediate drop-everything internet-wide emergency. |
| Exploit ScenarioDerived | An attacker who can publish JMS messages to a queue consumed by a vulnerable Camel route crafts a message carrying a case-variant control header such as 'CAmelExecCommandExecutable' set to '/bin/sh -c ...'. The case-sensitive filter fails to strip it, the case-insensitive Exchange lookup in camel-exec resolves it as the canonical executable header, and the route runs the attacker-chosen command; the same technique against camel-file yields arbitrary file write. No public exploit code is identified at time of analysis, and the low AC/no-UI vector means a single crafted message suffices once producer access exists. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 24, 2026
Remote code execution and arbitrary file write in Apache Camel affects routes using the JMS, SJMS, CoAP, or Google Pub/Sub components, where an attacker with producer access to a consumed broker can smuggle case-variant Camel internal headers (e.g. 'CAmelExecCommandExecutable') past case-sensitive filtering. The flaw is an incomplete fix for CVE-2025-27636: five non-HTTP HeaderFilterStrategy implementations were never given the setLowerCase(true) hardening, so injected headers are resolved by their canonical casing in downstream components like camel-exec and camel-file. There is no public exploit identified at time of analysis and EPSS is very low (0.06%), but CVSS is 9.9 and SSVC rates technical impact as total.
RemediationAI
Vendor-released patch: upgrade to Apache Camel 4.20.0, which fixes the issue; users on the 4.14.x LTS stream should move to 4.14.6 and users on the 4.18.x stream to 4.18.2, per https://camel.apache.org/security/CVE-2026-40453.html. Red Hat consumers should apply errata RHSA-2026:17668 and RHSA-2026:19835 (https://access.redhat.com/errata/RHSA-2026:17668). Where immediate upgrade is not possible, apply compensating controls on the affected routes: harden the HeaderFilterStrategy by explicitly enabling lower-case normalization (setLowerCase(true)) or add an explicit out-filter/removeHeaders step that strips 'Camel*'/'camel*' headers case-insensitively before messages reach camel-exec or camel-file; restrict broker producer permissions so untrusted principals cannot publish to the queues/topics these routes consume; and avoid or tightly constrain header-driven use of camel-exec (which runs OS commands) and camel-file (which writes to disk). The trade-offs: aggressive header stripping can break legitimate inter-route Camel headers, so validate route behavior after applying it, and tightening broker ACLs may disrupt existing integrations that rely on shared producer access.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 7 packages in maven, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Apache Camel is a widely used Java enterprise integration framework whose routes move Exchange objects between components (JMS, SJMS, CoAP, Google Pub/Sub, exec, file, etc.). Camel stores message headers in a case-insensitive map, while each component's HeaderFilterStrategy decides which headers cross the boundary between the wire protocol and the internal Exchange. The HTTP strategy was patched for CVE-2025-27636 by calling setLowerCase(true), normalizing header names before applying its startsWith('Camel'/'camel') filter; the JmsHeaderFilterStrategy, ClassicJmsHeaderFilterStrategy (camel-jms), SjmsHeaderFilterStrategy (camel-sjms), CoAPHeaderFilterStrategy (camel-coap), and GooglePubsubHeaderFilterStrategy (camel-google-pubsub) retained purely case-sensitive matching. This is a textbook CWE-178 (Improper Handling of Case Sensitivity): because the filter compares case-sensitively but the consumer looks up case-insensitively, 'CAmelExecCommandExecutable' evades the filter yet still resolves to the trusted 'CamelExecCommandExecutable' control header, letting an attacker override component behavior such as the executable run by camel-exec or the target path used by camel-file.
Know when Camel gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Attacker needs broker producer access (PR:L), sends one crafted message remotely (AV:N/AC:L/UI:N); injection crosses into downstream components (S:C) yielding full RCE/file write (C/I/A:H).
Primary rating from Vendor (apache).
CVSS VectorVendor: apache
Lifecycle Timeline
4DescriptionCVE.org
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.
Blast Radius
ecosystem impact- 19 maven packages depend on org.apache.camel:camel-coap (3 direct, 16 indirect)
- 19 maven packages depend on org.apache.camel:camel-google-pubsub (3 direct, 16 indirect)
- 29 maven packages depend on org.apache.camel:camel-jms (11 direct, 18 indirect)
- 25 maven packages depend on org.apache.camel:camel-sjms (4 direct, 21 indirect)
Ecosystem-wide dependent count for version 3.0.0 and other introduced versions.
Executive ViewAI
Apache Camel versions with JMS, SJMS, CoAP, and Google Pub/Sub components contain a critical remote code execution and arbitrary file write vulnerability enabling server compromise for adversaries with message producer access. Organizations using Camel for message workflow processing risk command execution and unauthorized file modification on critical systems. While predicted exploitation probability is low, the total technical impact-complete application server compromise-necessitates timely patching within 30 days.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
Bypass/Injection vulnerability in Apache Camel components under particular conditions.10.0 through <= 4.10.1, from 4.8.0
The XSLT component in Apache Camel before 2.11.4 and 2.12.x before 2.12.3 allows remote attackers to read arbitrary file
Apache Camel's Jackson and JacksonXML unmarshalling operation are vulnerable to Remote Code Execution attacks. Rated cri
The XSLT component in Apache Camel 2.11.x before 2.11.4, 2.12.x before 2.12.3, and possibly earlier versions allows remo
Cross-realm token acceptance bypass in Apache Camel Keycloak security policy. The KeycloakSecurityPolicy fails to proper
Deserialization of Untrusted Data vulnerability in Apache Camel LevelDB component. The Camel-LevelDB DefaultLevelDBSeria
Unsafe Java deserialization in the Apache Camel camel-mina component (versions 3.0.0 through 4.14.5, 4.15.0 through 4.18
Apache Camel's File is vulnerable to directory traversal. Rated high severity (CVSS 7.5), this vulnerability is remotely
The camel-castor component in Apache Camel 2.x before 2.19.4 and 2.20.x before 2.20.1 is vulnerable to Java object de-se
The camel-xstream component in Apache Camel before 2.15.5 and 2.16.x before 2.16.1 allow remote attackers to execute arb
The camel-hessian component in Apache Camel 2.x before 2.19.4 and 2.20.x before 2.20.1 is vulnerable to Java object de-s
Apache Camel before 2.9.7, 2.10.0 before 2.10.7, 2.11.0 before 2.11.2, and 2.12.0 allows remote attackers to execute arb
EUVD-2026-25791
GHSA-jg2m-9x48-3gvj
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB