Apache Camel: Permissive default ObjectInputFilter pattern admits java.net.** and enables DNS-based information disclosure
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 software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Java / Kotlin (Maven) | org.apache.camel:camel-amqp | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-cassandraql | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-consul | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-infinispan | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-jms | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-leveldb | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-mina | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-netty | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-netty-http | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-sjms | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-sql | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
| Java / Kotlin (Maven) | org.apache.camel:camel-vertx-http | >= 4.14.0, < 4.14.8, >= 4.18.0, < 4.18.3, >= 4.19.0, < 4.21.0 | 4.14.8, 4.18.3, 4.21.0 |
References
- https://nvd.nist.gov/vuln/detail/CVE-2026-42527
- 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://camel.apache.org/security/CVE-2026-42527.html
- https://github.com/apache/camel
- 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
- http://www.openwall.com/lists/oss-security/2026/07/05/4
- CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H- Weakness (CWE)
CWE-502- Platform
- Java / Kotlin (Maven)
- Package
org.apache.camel:camel-amqp, org.apache.camel:camel-cassandraql, org.apache.camel:camel-consul- Disclosed
- 06.07.2026
- Updated
- 11.10.2026 13:20
Sources and licenses
OSV / GitHub Advisory Database - GHSA-8h6p-jvhf-9hcr - CC BY 4.0
Vulnerability history: org.apache.camel:camel-leveldb
All published vulnerabilities of this package (Java / Kotlin (Maven)), newest first. Shows whether this is a one-off slip or a package that needs watching.
- Total entries
- 2
- First → latest
- 02.2026 07.2026
- Without a fix
- 0
- Exploited in attacks
- 0
Severity breakdown
- High 2
Disclosures per year
- 2026: 2
-
Apache Camel: Permissive default ObjectInputFilter pattern admits java.net.** and enables DNS-based information disclosure this entry
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.