CVE-2026-42527
Permissive default ObjectInputFilter pattern admits java.net.** and enables DNS-based information disclosure
Description
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).
Mitigation
Credit
This vulnerability was reported by Venkatraman Kumar from Securin and Yu Bao from Paypal
Notes
The JIRA ticket: https://issues.apache.org/jira/browse/CAMEL-23372 refers to the commits that resolved the issue, and has more details.
The defective default deserialization filter was introduced by the CAMEL-23297, CAMEL-23319, CAMEL-23321, CAMEL-23322, and CAMEL-23324 hardening series. The fix was merged on main in https://github.com/apache/camel/pull/22801 (commit 1b60801edf9864465db7abf391539ee425a53e2c). Backports are tracked in https://github.com/apache/camel/pull/22813 (camel-4.18.x) and https://github.com/apache/camel/pull/22815 (camel-4.14.x).