Skip to content
VulniPulse
High7.3Apache Software Foundation

High [CVE-2026-40860 +1] Deserialization of Untrusted Data vulnerability in Apache Camel, Apache Camel JMS component

This high-severity Apache Software Foundation advisory covers CVE-2026-40860 and CVE-2026-43866 affecting Apache Camel JMS.

CVE-2026-43866 Published Jul 6, 2026Updated by vendor Jul 7, 2026
Affected products & platforms
Apache Software FoundationMessaging
Open vendor advisory

Android app · Google Play

Monitor future Apache Software Foundation CVEs from your phone.

Choose a whole vendor or a precise platform, then receive matching security advisories by phone notification, email, or both. Coverage follows 32 official vendor sources and 160+ reviewed platform categories.

Matching phone alertsOptional email delivery

Summary

Deserialization of Untrusted Data vulnerability in Apache Camel, Apache Camel JMS component. JmsBinding.extractBodyFromJms() in camel-jms - and the equivalent JmsBinding in camel-sjms - deserializes the payload of an incoming JMS ObjectMessage via jakarta.jms.

ObjectMessage.getObject() whenever the mapJmsMessage option is enabled (the default) and Camel acts as a JMS consumer. The CVE-2026-40860 hardening added a post-deserialization class check that rejects classes outside the default allow-list java.**;javax.**;org.apache.camel.**;!*.

However org.apache.camel.support. DefaultExchangeHolder itself lives in the allow-listed org.apache.camel.** namespace, so an ObjectMessage whose top-level object is a DefaultExchangeHolder passes the check.

The receiving side then calls DefaultExchangeHolder.unmarshal() on it without requiring the transferExchange option to be enabled - an asymmetric trust boundary, since the sending side gates ObjectMessage and transferExchange handling but the receiving side did not - writing every non-null field of the holder into the Exchange: the message body, the IN and OUT headers, the exchange properties, the variables, the exchange id and the exception.

Affected versions
  • 3.0.0 through 4.14.8
  • 4.15.0 through 4.18.3
  • 4.19.0 through 4.21.0
  • 4.19.0 through 4.21.0.

Official advisory · high-confidence parse· fetched 2 months ago·verify at source

Fixed versions
  • 4.21.0
  • 4.14.8
  • 4.18.3

Official advisory · high-confidence parse· fetched 2 months ago·verify at source

Mitigation checklist

Recommended fix / mitigation
  • Users are recommended to upgrade to version 4.21.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.8.
  • If users are on the 4.18.x releases stream, then they are suggested to upgrade to 4.18.3.
Temporary workarounds
  • For deployments that cannot upgrade immediately, restrict publish access to the queues and topics consumed by Camel to trusted producers via JMS broker authorization, and do not expose JMS consumers that map ObjectMessage bodies to untrusted networks; a JMS-provider deserialization allow-list does not mitigate this specific bypass because the crafted payload uses only universally-trusted classes.

Official advisory · high-confidence parse· fetched 2 months ago·verify at source

Discussion(0)

No comments yet. Share field notes, upgrade gotchas, or questions — verify against the vendor advisory before acting on community advice.

Sign in to join the discussion.