Skip to main content
← All vulnerabilities
CVE-2026-42527GHSA-8H6P-JVHF-9HCR

Apache Camel: Permissive default ObjectInputFilter pattern admits java.net.** and enables DNS-based information disclosure

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.14.8, 4.18.3, 4.21.0
1 proof of concept on GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: total

Summary

Deserialization of Untrusted Data vulnerability in Apache Camel. The default ObjectInputFilter pattern shipped with several Apache Camel components for defense-in-depth deserialization filtering ('java.;javax.;org.apache.camel.**;!*', or the no-'javax.' variant in the aggregation-repository components) uses a recursive 'java.' glob that admits classes whose hashCode/equals/readObject methods perform network I/O, notably java.net.URL and java.net.InetAddress. When an attacker can deliver a Java-serialized payload to an affected Camel consumer, deserialization of a HashMap (or any collection that calls hashCode on its elements) containing java.net.URL keys causes the JVM to issue DNS queries to the attacker-supplied host during the deserialization side-effect. The class-level filter check passes because the resulting object's class (HashMap) is allow-listed; the DNS query is observable on an attacker-controlled DNS server, providing an out-of-band side channel. The exposure is highest on the camel-jms family because JmsBinding.extractBodyFromJms invokes ObjectMessage.getObject() unconditionally when mapJmsMessage=true (default). Affected components: camel-jms, camel-sjms, camel-amqp, camel-mina, camel-netty, camel-netty-http, camel-vertx-http, camel-infinispan, and the aggregation repository components camel-leveldb, camel-cassandraql, camel-consul, camel-sql (JDBC aggregation repository). This issue affects Apache Camel: from 4.14.0 before 4.14.8, from 4.15.0 before 4.18.3, from 4.19.0 before 4.21.0. Users are recommended to upgrade to a version that contains the CAMEL-23372 fix once available: 4.21.0 for the 4.21.x line, 4.18.3 for the 4.18.x line, and 4.14.8 for the 4.14.x line. For deployments that cannot upgrade immediately, configure a JMS-provider-side allow-list (Apache ActiveMQ Artemis 'deserializationAllowList' / 'deserializationDenyList', Apache ActiveMQ Classic 'org.apache.activemq.SERIALIZABLE_PACKAGES') as the primary mitigation, and/or override the in-code default via the endpoint-level 'deserializationFilter' option or the JVM-wide '-Djdk.serialFilter' system property with an explicit deny: '!java.net.;java.;javax.;org.apache.camel.;!*' (or '!java.net.;java.;org.apache.camel.**;!*' for the aggregation-repository components, which do not include javax.**).

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: total

  3. Record last updated

Affected versions

  • org.apache.camel:camel

    From 4.14.0 · fixed in 4.14.8; From 4.15.0 · fixed in 4.18.3; From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-jmsMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-jmsMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-jmsMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-sjmsMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-sjmsMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-sjmsMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-amqpMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-amqpMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-amqpMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-minaMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-minaMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-minaMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-nettyMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-nettyMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-nettyMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-netty-httpMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-netty-httpMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-netty-httpMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-vertx-httpMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-vertx-httpMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-vertx-httpMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-infinispanMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-infinispanMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-infinispanMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-leveldbMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-leveldbMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-leveldbMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-cassandraqlMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-cassandraqlMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-cassandraqlMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-consulMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-consulMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-consulMaven

    From 4.19.0 · fixed in 4.21.0

  • org.apache.camel:camel-sqlMaven

    From 4.14.0 · fixed in 4.14.8

  • org.apache.camel:camel-sqlMaven

    From 4.18.0 · fixed in 4.18.3

  • org.apache.camel:camel-sqlMaven

    From 4.19.0 · fixed in 4.21.0

References 2

camel.apache.org

GitHub · oscerd/CVE-2026-42527