Apache Camel: Permissive default ObjectInputFilter pattern admits java.net.** and enables DNS-based information disclosure
🔗 CVE IDs covered (1)
📋 Description
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.**).
🎯 Affected products36
- maven/org.apache.camel:camel-jms:>= 4.14.0, < 4.14.8
- maven/org.apache.camel:camel-jms:>= 4.18.0, < 4.18.3
- maven/org.apache.camel:camel-jms:>= 4.19.0, < 4.21.0
- maven/org.apache.camel:camel-sjms:>= 4.14.0, < 4.14.8
- maven/org.apache.camel:camel-sjms:>= 4.18.0, < 4.18.3
- maven/org.apache.camel:camel-sjms:>= 4.19.0, < 4.21.0
- maven/org.apache.camel:camel-amqp:>= 4.14.0, < 4.14.8
- maven/org.apache.camel:camel-amqp:>= 4.18.0, < 4.18.3
- maven/org.apache.camel:camel-amqp:>= 4.19.0, < 4.21.0
- maven/org.apache.camel:camel-mina:>= 4.14.0, < 4.14.8
- maven/org.apache.camel:camel-mina:>= 4.18.0, < 4.18.3
- maven/org.apache.camel:camel-mina:>= 4.19.0, < 4.21.0
- maven/org.apache.camel:camel-netty:>= 4.14.0, < 4.14.8
- maven/org.apache.camel:camel-netty:>= 4.18.0, < 4.18.3
- maven/org.apache.camel:camel-netty:>= 4.19.0, < 4.21.0
- maven/org.apache.camel:camel-netty-http:>= 4.14.0, < 4.14.8
- maven/org.apache.camel:camel-netty-http:>= 4.18.0, < 4.18.3
- maven/org.apache.camel:camel-netty-http:>= 4.19.0, < 4.21.0
- maven/org.apache.camel:camel-vertx-http:>= 4.14.0, < 4.14.8
- maven/org.apache.camel:camel-vertx-http:>= 4.18.0, < 4.18.3
- maven/org.apache.camel:camel-vertx-http:>= 4.19.0, < 4.21.0
- maven/org.apache.camel:camel-infinispan:>= 4.14.0, < 4.14.8
- maven/org.apache.camel:camel-infinispan:>= 4.18.0, < 4.18.3
- maven/org.apache.camel:camel-infinispan:>= 4.19.0, < 4.21.0
- maven/org.apache.camel:camel-leveldb:>= 4.14.0, < 4.14.8
- maven/org.apache.camel:camel-leveldb:>= 4.18.0, < 4.18.3
- maven/org.apache.camel:camel-leveldb:>= 4.19.0, < 4.21.0
- maven/org.apache.camel:camel-cassandraql:>= 4.14.0, < 4.14.8
- maven/org.apache.camel:camel-cassandraql:>= 4.18.0, < 4.18.3
- maven/org.apache.camel:camel-cassandraql:>= 4.19.0, < 4.21.0
- +6 more not shown
🔗 References (14)
- https://nvd.nist.gov/vuln/detail/CVE-2026-42527
- https://camel.apache.org/security/CVE-2026-42527.html
- http://www.openwall.com/lists/oss-security/2026/07/05/4
- https://github.com/apache/camel/pull/22801
- https://github.com/apache/camel/pull/22813
- https://github.com/apache/camel/pull/22815
- https://github.com/apache/camel/commit/1b60801edf9864465db7abf391539ee425a53e2c
- https://github.com/apache/camel/commit/1ea8bf4b20898a570f0ac366c9be07ec300cce8d
- https://github.com/apache/camel/commit/bc7f8cafd1d4752bf6b5a77c19fe9878258faffb
- https://github.com/apache/camel/releases/tag/camel-4.14.7
- https://github.com/apache/camel/releases/tag/camel-4.18.2
- https://github.com/apache/camel/releases/tag/camel-4.21.0
- https://issues.apache.org/jira/browse/CAMEL-23372
- https://github.com/advisories/GHSA-8h6p-jvhf-9hcr