Every CVE Search/ Get API key

CVE-2026-40860

Apache Camel: Unsafe Deserialization of JMS ObjectMessage in camel-jms, camel-sjms, camel-sjms2 and camel-amqp

9.8 CriticalPublic exploitFix available

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

1.74%Up 1.4 points since Apr 27, 2026
90%50%10%1%

What each source reports

CVE List Score used 9.8

Apache Camel: Unsafe Deserialization of JMS ObjectMessage in camel-jms, camel-sjms, camel-sjms2 and camel-amqp

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.

Record
CVE-2026-40860
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502, CWE-502
Updated
2026-11-02
EUVDEUVD-2026-25794 9.8

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.

Record
EUVD-2026-25794
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
GitHub AdvisoriesGHSA-m5vh-3fw5-5wgh 9.8

Apache camel-jms, camel-sjms, camel-sjms2 and camel-amqp: Unsafe Deserialization of JMS ObjectMessage

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.

Record
GHSA-m5vh-3fw5-5wgh
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
NVD 9.8

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.

Record
CVE-2026-40860
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
OSV 9.8

Apache Camel: Unsafe Deserialization of JMS ObjectMessage in camel-jms, camel-sjms, camel-sjms2 and camel-amqp

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.

Record
CVE-2026-40860
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02
OSVGHSA-m5vh-3fw5-5wgh 9.8

Apache camel-jms, camel-sjms, camel-sjms2 and camel-amqp: Unsafe Deserialization of JMS ObjectMessage

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.

Record
GHSA-m5vh-3fw5-5wgh
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-502
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
org.apache.camel:camel-jms
Maven
3.0.0 up to 4.14.7
4.14.7
org.apache.camel:camel-jms
Maven
4.15.0 up to 4.18.2
4.18.2
org.apache.camel:camel-jms
Maven
4.19.0 up to 4.20.0
4.20.0
org.apache.camel:camel-sjms
Maven
3.0.0 up to 4.14.7
4.14.7
org.apache.camel:camel-sjms
Maven
4.15.0 up to 4.18.2
4.18.2
org.apache.camel:camel-sjms
Maven
4.19.0 up to 4.20.0
4.20.0
org.apache.camel:camel-sjms2
Maven
3.0.0 up to 4.14.7
4.14.7
org.apache.camel:camel-sjms2
Maven
4.15.0 up to 4.18.2
4.18.2
org.apache.camel:camel-sjms2
Maven
4.19.0 up to 4.20.0
4.20.0
org.apache.camel:camel-amqp
Maven
3.0.0 up to 4.14.7
4.14.7
Show 20 moreShow less
Affected packages
PackageAffectedFixed
org.apache.camel:camel-amqp
Maven
4.15.0 up to 4.18.2
4.18.2
org.apache.camel:camel-amqp
Maven
4.19.0 up to 4.20.0
4.20.0
org.apache.camel:camel-activemq
Maven
3.0.0 up to 4.14.7
4.14.7
org.apache.camel:camel-activemq
Maven
4.15.0 up to 4.18.2
4.18.2
org.apache.camel:camel-activemq
Maven
4.19.0 up to 4.20.0
4.20.0
org.apache.camel:camel-activemq6
Maven
3.0.0 up to 4.14.7
4.14.7
org.apache.camel:camel-activemq6
Maven
4.15.0 up to 4.18.2
4.18.2
org.apache.camel:camel-activemq6
Maven
4.19.0 up to 4.20.0
4.20.0
org.apache.camel:camel-jms
Maven
3.0.0 up to 4.14.7, plus listed versions
3.0.13.1.03.10.03.11.03.11.1
Show 45 moreShow less
3.11.23.11.33.11.43.11.53.11.63.11.73.12.03.13.03.14.03.14.13.14.103.14.23.14.33.14.43.14.53.14.63.14.73.14.83.14.93.15.03.16.03.17.03.18.03.18.13.18.23.18.33.18.43.18.53.18.63.18.73.18.83.19.03.2.03.20.03.20.13.20.23.20.33.20.43.20.53.20.63.20.73.20.83.20.93.21.03.21.1
4.14.7
org.apache.camel:camel-jms
Maven
4.15.0 up to 4.18.2, plus listed versions
4.16.04.17.04.18.04.18.1
4.18.2
org.apache.camel:camel-sjms
Maven
3.0.0 up to 4.14.7, plus listed versions
3.0.13.1.03.10.03.11.03.11.1
Show 45 moreShow less
3.11.23.11.33.11.43.11.53.11.63.11.73.12.03.13.03.14.03.14.13.14.103.14.23.14.33.14.43.14.53.14.63.14.73.14.83.14.93.15.03.16.03.17.03.18.03.18.13.18.23.18.33.18.43.18.53.18.63.18.73.18.83.19.03.2.03.20.03.20.13.20.23.20.33.20.43.20.53.20.63.20.73.20.83.20.93.21.03.21.1
4.14.7
org.apache.camel:camel-sjms
Maven
4.15.0 up to 4.18.2, plus listed versions
4.16.04.17.04.18.04.18.1
4.18.2
org.apache.camel:camel-sjms2
Maven
3.0.0 up to 4.14.7, plus listed versions
3.0.13.1.03.10.03.11.03.11.1
Show 45 moreShow less
3.11.23.11.33.11.43.11.53.11.63.11.73.12.03.13.03.14.03.14.13.14.103.14.23.14.33.14.43.14.53.14.63.14.73.14.83.14.93.15.03.16.03.17.03.18.03.18.13.18.23.18.33.18.43.18.53.18.63.18.73.18.83.19.03.2.03.20.03.20.13.20.23.20.33.20.43.20.53.20.63.20.73.20.83.20.93.21.03.21.1
4.14.7
org.apache.camel:camel-sjms2
Maven
4.15.0 up to 4.18.2, plus listed versions
4.16.04.17.04.18.04.18.1
4.18.2
org.apache.camel:camel-amqp
Maven
3.0.0 up to 4.14.7, plus listed versions
3.0.13.1.03.10.03.11.03.11.1
Show 45 moreShow less
3.11.23.11.33.11.43.11.53.11.63.11.73.12.03.13.03.14.03.14.13.14.103.14.23.14.33.14.43.14.53.14.63.14.73.14.83.14.93.15.03.16.03.17.03.18.03.18.13.18.23.18.33.18.43.18.53.18.63.18.73.18.83.19.03.2.03.20.03.20.13.20.23.20.33.20.43.20.53.20.63.20.73.20.83.20.93.21.03.21.1
4.14.7
org.apache.camel:camel-amqp
Maven
4.15.0 up to 4.18.2, plus listed versions
4.16.04.17.04.18.04.18.1
4.18.2
org.apache.camel:camel-activemq
Maven
3.0.0 up to 4.14.7, plus listed versions
3.0.13.1.03.10.03.11.03.11.1
Show 45 moreShow less
3.11.23.11.33.11.43.11.53.11.63.11.73.12.03.13.03.14.03.14.13.14.103.14.23.14.33.14.43.14.53.14.63.14.73.14.83.14.93.15.03.16.03.17.03.18.03.18.13.18.23.18.33.18.43.18.53.18.63.18.73.18.83.19.03.2.03.20.03.20.13.20.23.20.33.20.43.20.53.20.63.20.73.20.83.20.93.21.03.21.1
4.14.7
org.apache.camel:camel-activemq
Maven
4.15.0 up to 4.18.2, plus listed versions
4.16.04.17.04.18.04.18.1
4.18.2
org.apache.camel:camel-activemq6
Maven
3.0.0 up to 4.14.7, plus listed versions
4.10.04.10.14.10.24.10.34.10.4
Show 27 moreShow less
4.10.54.10.64.10.74.10.84.10.94.11.04.12.04.13.04.14.04.14.14.14.24.14.34.14.44.14.54.14.64.7.04.8.04.8.14.8.24.8.34.8.44.8.54.8.64.8.74.8.84.8.94.9.0
4.14.7
org.apache.camel:camel-activemq6
Maven
4.15.0 up to 4.18.2, plus listed versions
4.16.04.17.04.18.04.18.1
4.18.2

Public exploits

Links only. Every CVE stores no exploit code.

Public exploits
SourceLinkDate
PoC in GitHuboscerd/CVE-2026-408602026-07-10

History

History
RecordedChangedSources
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV, PoC in GitHub

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-40860 is a critical vulnerability (CVSS 9.8) in Apache Camel, published April 27, 2026. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 1.74%, the 77th percentile. Fixed in org.apache.camel:camel-jms 4.14.7.

References

Show 17 moreShow less
This page doesn't list everything

Left out here: 417 versions. The JSON record has them.

MoveEnter Open