Severity by source
AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Unauthenticated single UDP packet gives OS command execution (AV:N/AC:L/PR:N/UI:N); the coap component's flaw impacts a separate downstream producer/OS authority, so S:C with full C/I/A.
Primary rating from Vendor (apache).
CVSS VectorVendor: apache
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Lifecycle Timeline
6Blast Radius
ecosystem impact- 8 maven packages depend on org.apache.camel:camel-coap (3 direct, 5 indirect)
Ecosystem-wide dependent count for version 4.14.0.
DescriptionCVE.org
Improperly Controlled Modification of Dynamically-Determined Object Attributes vulnerability in Apache Camel Camel-Coap component.
Apache Camel's camel-coap component is vulnerable to Camel message header injection, leading to remote code execution when routes forward CoAP requests to header-sensitive producers (e.g. camel-exec)
The camel-coap component maps incoming CoAP request URI query parameters directly into Camel Exchange In message headers without applying any HeaderFilterStrategy. Specifically, CamelCoapResource.handleRequest() iterates over OptionSet.getUriQuery() and calls camelExchange.getIn().setHeader(...) for every query parameter. CoAPEndpoint extends DefaultEndpoint rather than DefaultHeaderFilterStrategyEndpoint, and CoAPComponent does not implement HeaderFilterStrategyComponent; the component contains no references to HeaderFilterStrategy at all.
As a result, an unauthenticated attacker who can send a single CoAP UDP packet to a Camel route consuming from coap:// can inject arbitrary Camel internal headers (those prefixed with Camel*) into the Exchange. When the route delivers the message to a header-sensitive producer such as camel-exec, camel-sql, camel-bean, camel-file, or template components (camel-freemarker, camel-velocity), the injected headers can alter the producer's behavior. In the case of camel-exec, the CamelExecCommandExecutable and CamelExecCommandArgs headers override the executable and arguments configured on the endpoint, resulting in arbitrary OS command execution under the privileges of the Camel process.
The producer's output is written back to the Exchange body and returned in the CoAP response payload by CamelCoapResource, giving the attacker an interactive RCE channel without any need for out-of-band exfiltration.
Exploitation prerequisites are minimal: a single unauthenticated UDP datagram to the CoAP port (default 5683). CoAP (RFC 7252) has no built-in authentication, and DTLS is optional and disabled by default. Because the protocol is UDP-based, HTTP-layer WAF/IDS controls do not apply. This issue affects Apache Camel: from 4.14.0 through 4.14.5, from 4.18.0 before 4.18.1, 4.19.0.
Users are recommended to upgrade to version 4.18.1 or 4.19.0, fixing the issue.
Articles & Coverage 1
AnalysisAI
Remote code execution in Apache Camel's camel-coap component (versions 4.14.0-4.14.5, 4.18.0 before 4.18.1, and 4.19.0) allows an unauthenticated attacker to inject arbitrary internal Camel headers via CoAP URI query parameters, achieving OS command execution when a route forwards to a header-sensitive producer such as camel-exec. The component maps incoming CoAP query parameters straight into Exchange message headers with no HeaderFilterStrategy, so a single UDP packet to port 5683 can override the executable and arguments of a downstream exec producer and return command output in the CoAP response. Rated CVSS 10.0 with publicly available exploit code, though EPSS remains modest (0.55%, 68th percentile) and CISA SSVC records no observed exploitation, indicating opportunity rather than confirmed mass exploitation.
Technical ContextAI
Apache Camel is a Java enterprise integration framework whose routes connect protocol consumers to producers via a message Exchange carrying a body and headers. CoAP (RFC 7252) is a lightweight UDP-based request/response protocol for constrained devices, with no built-in authentication and DTLS optional and disabled by default. The root cause is CWE-915 (Improperly Controlled Modification of Dynamically-Determined Object Attributes): CamelCoapResource.handleRequest() iterates OptionSet.getUriQuery() and calls camelExchange.getIn().setHeader(...) for every query parameter without filtering. Unlike endpoints extending DefaultHeaderFilterStrategyEndpoint, CoAPEndpoint extends DefaultEndpoint and CoAPComponent does not implement HeaderFilterStrategyComponent, so no allow/deny list constrains which headers external input can set - including internal Camel* control headers. The CPE cpe:2.3:a:apache_software_foundation:apache_camel identifies the affected product line, and the exploit specifically abuses CamelExecCommandExecutable and CamelExecCommandArgs consumed by camel-exec.
RemediationAI
Vendor-released patch: upgrade to Apache Camel 4.18.1 or 4.19.0 per the vendor advisory at https://camel.apache.org/security/CVE-2026-33453.html; Red Hat consumers should apply RHSA-2026:17668. Given the 4.19.0 labeling ambiguity, confirm the exact fixed release with the advisory before deploying. If immediate patching is not possible, the highest-value compensating control is to stop untrusted input from reaching sensitive producers: restrict network access to the CoAP port (default UDP 5683) with host/network firewall rules so only trusted peers can send datagrams - noting that UDP-based CoAP is invisible to HTTP-layer WAF/IDS, so those controls will not help. Where feasible, enable DTLS on the CoAP endpoint to add authentication (trade-off: requires certificate/PSK provisioning on all clients), and re-architect routes so a camel-coap consumer does not directly feed header-sensitive producers (camel-exec, camel-sql, camel-bean, camel-file, camel-freemarker, camel-velocity), or insert an explicit removeHeaders/HeaderFilterStrategy step to strip Camel* headers before the producer (trade-off: may remove legitimate control headers your route depends on).
More in Apache Camel
View allUnsafe Java deserialization in Apache Camel's camel-infinispan component allows arbitrary code execution when the ProtoS
Remote code execution in Apache Camel 3.18.0-4.14.5 and 4.15.0-4.18.1 stems from CXF and Knative HeaderFilterStrategy im
Message header injection in Apache Camel's camel-mail component (3.0.0 before 4.14.6 and 4.15.0 before 4.18.1) lets an a
Remote code execution via unsafe Java deserialization affects the camel-pqc component of Apache Camel 4.18.0-4.18.2 and
Unsafe Java deserialization in Apache Camel's camel-consul component (ConsulRegistry / ConsulRegistryUtils.deserialize)
Cypher injection in Apache Camel's camel-neo4j producer allows attackers who control JSON key names in the CamelNeo4jMat
Remote code execution in the Apache Camel camel-hazelcast component allows an attacker who can join or reach the Hazelca
Remote code execution in Apache Camel's camel-vertx-http component (4.0.0-4.14.7, 4.15.0-4.18.2, 4.19.0) arises when a p
Blind out-of-band data exfiltration in Apache Camel 4.14.0-4.20.x arises because the default ObjectInputFilter pattern b
Header injection in the Apache Camel camel-nats component (4.0.0-4.14.7, 4.15.0-4.18.2, 4.19.0-4.20.x) allows any NATS c
Confused-deputy operation redirection in the Apache Camel camel-cxf SOAP component (versions 4.0.0 before 4.14.8, 4.15.0
Improper input validation in Apache Camel (versions through 4.14.7, 4.15.0-4.18.2, and 4.19.0-4.20.0) allows remote atta
Same technique Command Injection
View allVendor StatusVendor
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-25816
GHSA-695c-x5gc-94gj