Apache Camel: Unsafe Deserialization of JMS ObjectMessage in camel-jms, camel-sjms, camel-sjms2 and camel-amqp
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Partial Red Hat: 2 fixed, 1 without a fix
Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-502.
Summary
JmsBinding.extractBodyFromJms() in camel-jms, and the equivalent JmsBinding class in camel-sjms, deserialized the payload of incoming JMS ObjectMessage values via javax.jms.ObjectMessage.getObject() without applying any ObjectInputFilter, class allowlist or class denylist. Because this code path is reached whenever the mapJmsMessage option is enabled (the default) and Camel acts as a JMS consumer, an attacker able to publish a crafted ObjectMessage to a queue or topic consumed by a Camel application could achieve remote code execution when a deserialization gadget chain was present on the classpath. The same handling was reached transitively through camel-sjms2 (whose Sjms2Endpoint extends SjmsEndpoint) and through camel-amqp (whose AMQPJmsBinding extends JmsBinding), and by other JMS-family components built on JmsComponent such as camel-activemq and camel-activemq6. This issue affects Apache Camel: from 3.0.0 before 4.14.7, 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.7. If users are on the 4.18.x releases stream, then they are suggested to upgrade to 4.18.2.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| Apache | Apache Camel | 3.0.0 to before 4.14.7; 4.15.0 to before 4.18.2; 4.19.0 to before 4.20.0 | 4.14.7, 4.18.2, 4.20.0 | Patch available | CNA |
| — | org.apache.camel:camel-jms (Maven) | 3.0.0 to before 4.14.7 | 4.14.7 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-jms (Maven) | 4.15.0 to before 4.18.2 | 4.18.2 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-jms (Maven) | 4.19.0 to before 4.20.0 | 4.20.0 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-sjms (Maven) | 3.0.0 to before 4.14.7 | 4.14.7 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-sjms (Maven) | 4.15.0 to before 4.18.2 | 4.18.2 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-sjms (Maven) | 4.19.0 to before 4.20.0 | 4.20.0 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-sjms2 (Maven) | 3.0.0 to before 4.14.7 | 4.14.7 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-sjms2 (Maven) | 4.15.0 to before 4.18.2 | 4.18.2 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-sjms2 (Maven) | 4.19.0 to before 4.20.0 | 4.20.0 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-amqp (Maven) | 3.0.0 to before 4.14.7 | 4.14.7 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-amqp (Maven) | 4.15.0 to before 4.18.2 | 4.18.2 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-amqp (Maven) | 4.19.0 to before 4.20.0 | 4.20.0 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-activemq (Maven) | 3.0.0 to before 4.14.7 | 4.14.7 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-activemq (Maven) | 4.15.0 to before 4.18.2 | 4.18.2 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-activemq (Maven) | 4.19.0 to before 4.20.0 | 4.20.0 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-activemq6 (Maven) | 3.0.0 to before 4.14.7 | 4.14.7 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-activemq6 (Maven) | 4.15.0 to before 4.18.2 | 4.18.2 | Patch available | GHSA-m5vh-3fw5-5wgh |
| — | org.apache.camel:camel-activemq6 (Maven) | 4.19.0 to before 4.20.0 | 4.20.0 | Patch available | GHSA-m5vh-3fw5-5wgh |
- Apache Camel VendorApache Affected 3.0.0 to before 4.14.7; 4.15.0 to before 4.18.2; 4.19.0 to before 4.20.0 Fixed in 4.14.7, 4.18.2, 4.20.0 Patch available CNA
- org.apache.camel:camel-jms (Maven) Vendor— Affected 3.0.0 to before 4.14.7 Fixed in 4.14.7 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-jms (Maven) Vendor— Affected 4.15.0 to before 4.18.2 Fixed in 4.18.2 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-jms (Maven) Vendor— Affected 4.19.0 to before 4.20.0 Fixed in 4.20.0 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-sjms (Maven) Vendor— Affected 3.0.0 to before 4.14.7 Fixed in 4.14.7 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-sjms (Maven) Vendor— Affected 4.15.0 to before 4.18.2 Fixed in 4.18.2 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-sjms (Maven) Vendor— Affected 4.19.0 to before 4.20.0 Fixed in 4.20.0 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-sjms2 (Maven) Vendor— Affected 3.0.0 to before 4.14.7 Fixed in 4.14.7 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-sjms2 (Maven) Vendor— Affected 4.15.0 to before 4.18.2 Fixed in 4.18.2 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-sjms2 (Maven) Vendor— Affected 4.19.0 to before 4.20.0 Fixed in 4.20.0 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-amqp (Maven) Vendor— Affected 3.0.0 to before 4.14.7 Fixed in 4.14.7 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-amqp (Maven) Vendor— Affected 4.15.0 to before 4.18.2 Fixed in 4.18.2 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-amqp (Maven) Vendor— Affected 4.19.0 to before 4.20.0 Fixed in 4.20.0 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-activemq (Maven) Vendor— Affected 3.0.0 to before 4.14.7 Fixed in 4.14.7 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-activemq (Maven) Vendor— Affected 4.15.0 to before 4.18.2 Fixed in 4.18.2 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-activemq (Maven) Vendor— Affected 4.19.0 to before 4.20.0 Fixed in 4.20.0 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-activemq6 (Maven) Vendor— Affected 3.0.0 to before 4.14.7 Fixed in 4.14.7 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-activemq6 (Maven) Vendor— Affected 4.15.0 to before 4.18.2 Fixed in 4.18.2 Patch available GHSA-m5vh-3fw5-5wgh
- org.apache.camel:camel-activemq6 (Maven) Vendor— Affected 4.19.0 to before 4.20.0 Fixed in 4.20.0 Patch available GHSA-m5vh-3fw5-5wgh
Remediation
- Fix · CNA Apache Camel (Apache Software Foundation) Fixed in 4.14.7, 4.18.2, 4.20.0
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-jms (Maven) Fixed in 4.14.7 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-jms (Maven) Fixed in 4.18.2 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-jms (Maven) Fixed in 4.20.0 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-sjms (Maven) Fixed in 4.14.7 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-sjms (Maven) Fixed in 4.18.2 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-sjms (Maven) Fixed in 4.20.0 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-sjms2 (Maven) Fixed in 4.14.7 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-sjms2 (Maven) Fixed in 4.18.2 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-sjms2 (Maven) Fixed in 4.20.0 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-amqp (Maven) Fixed in 4.14.7 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-amqp (Maven) Fixed in 4.18.2 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-amqp (Maven) Fixed in 4.20.0 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-activemq (Maven) Fixed in 4.14.7 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-activemq (Maven) Fixed in 4.18.2 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-activemq (Maven) Fixed in 4.20.0 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-activemq6 (Maven) Fixed in 4.14.7 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-activemq6 (Maven) Fixed in 4.18.2 Advisory →
- Fix · GHSA-m5vh-3fw5-5wgh org.apache.camel:camel-activemq6 (Maven) Fixed in 4.20.0 Advisory →
Red Hat 2 advisories
- RHSA-2026:22453 Released 2026-06-02 · Red Hat rating ImportantRed Hat Build of Apache Camel 4.18 for Quarkus 3.33 update is now available (RHBQ 3.33.1.GA)
- Red Hat Build of Apache Camel 4.18 for Quarkus 3.33
- RHSA-2026:17668 Released 2026-05-14 · Red Hat rating CriticalRed Hat Build of Apache Camel 4.18.1 for Spring Boot release.
- Red Hat build of Apache Camel 4.18.1 for Spring Boot 3.5.14
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
Apache Camel 4.14.7, 4.18.2, 4.20.0
2 records Highest priority Priority MEDIUM 2 MEDIUM
Other records, highest priority first
- TI-2026-29515 Apache Camel: Camel-Infinispan: Unsafe Deserialization in Remote Aggregation RepositoryPriority MEDIUM 43
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat build of Apache Camel 4 for Quarkus 3 | Affected | No fix yet |
| Red Hat Build of Apache Camel 4.18 for Quarkus 3.33 | Fixed | RHSA-2026:22453 |
| Red Hat build of Apache Camel 4.18.1 for Spring Boot 3.5.14 | Fixed | RHSA-2026:17668 |
Not affected: 3 products
- Red Hat Fuse 7
- Red Hat JBoss Enterprise Application Platform 8
- Red Hat JBoss Enterprise Application Platform Expansion Pack
Timeline
- 2026-10-02 Threatist record created from CVE-2026-40860
- 2026-10-03 Alias added: GHSA-m5vh-3fw5-5wgh
- 2026-10-09 Fix available: RHSA-2026:22453 · Red Hat
- 2026-10-10 Fix available: Red Hat Build of Apache Camel 4.18 for Quarkus 3.33 · Red Hat
References
Advisory 3
Other 17
- https://github.com/apache/camel/pull/22598
- https://github.com/apache/camel/pull/22603
- https://github.com/apache/camel/pull/22604
- https://github.com/apache/camel/pull/22639
- https://github.com/apache/camel/commit/0c06142c46a1422b6b49fab784a1087c50e48ee8
- https://github.com/apache/camel/commit/107e8c279cf9bf488843e33fb6333cc2d7f37c67
- https://github.com/apache/camel/commit/6a82709f0fc5431f46d2939547aacd2c7395c97a
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-40860.json
- https://issues.apache.org/jira/browse/CAMEL-23321
- https://github.com/apache/camel/releases/tag/camel-4.20.0
- https://github.com/apache/camel/releases/tag/camel-4.18.2
- https://github.com/apache/camel/releases/tag/camel-4.14.7
- https://github.com/apache/camel
- https://bugzilla.redhat.com/show_bug.cgi?id=2463172
- https://access.redhat.com/security/cve/CVE-2026-40860
- https://access.redhat.com/errata/RHSA-2026:22453
- https://access.redhat.com/errata/RHSA-2026:17668
More Apache Camel vulnerabilities
- TI-2026-76322 Unsafe deserialization in Apache Camel camel-hazelcast CVSS 4.0CRITICAL 10.0
- TI-2026-18973 Apache Camel: Camel-Keycloak: Cross-Realm Token Acceptance Bypass in KeycloakSecurityPolicy CVSS 3.1CRITICAL 9.1
- TI-2026-76339 Path traversal in Apache Camel azure-files component CVSS 3.1CRITICAL 9.1
- TI-2026-76330 Path traversal in Apache Camel FTP consumer escapes polled directory CVSS 3.1CRITICAL 9.1
- TI-2025-20435 Apache Camel: Camel Message Header Injection via Improper Filtering CVSS 3.1MEDIUM 5.6
- TI-2026-34899 Apache Camel: Camel-CXF Message Header Injection via Missing Inbound Filtering CVSS 3.1CRITICAL 9.8
Sources
- CVE-2026-40860 · CVE Program
- CVE-2026-40860 · NVD
- FIRST EPSS
- GHSA-m5vh-3fw5-5wgh · GitHub Advisory Database · CC BY 4.0
- CVE-2026-40860 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences