CVE-2026-40859
Last modified
CVE-2026-40859 is a high-severity vulnerability rated 8.1/10 on the CVSS scale. Deserialization of Untrusted Data vulnerability in Apache Camel. The camel-vertx-http component deserializes HTTP response bodies carrying the Content-Type application/x-java-serialized-object using a raw java.io.ObjectInputStream, without applying any ObjectInputFilter (VertxHttpHelper.deserializeJavaObjectFromStream) This deserialization path is reached only when the producer endpoint is configured with transferException=true (or the component-level allowJavaSerializedObject=true) and throwExceptionOnFailure is left at its default value of true; in that case a backend HTTP response with a 5xx status and the application/x-java-serialized-object content type has its body deserialized with no class restrictions. An attacker who controls the backend the Camel producer talks to - through a man-in-the-middle position on an unencrypted (plain HTTP) connection, or by compromising the backend service - can return a crafted serialized Java object and, if a suitable gadget chain is present on the classpath, achieve remote code execution on the Camel application host. EPSS estimates a 0.54% chance of exploitation in the next 30 days.
Description
Deserialization of Untrusted Data vulnerability in Apache Camel. The camel-vertx-http component deserializes HTTP response bodies carrying the Content-Type application/x-java-serialized-object using a raw java.io.ObjectInputStream, without applying any ObjectInputFilter (VertxHttpHelper.deserializeJavaObjectFromStream) This deserialization path is reached only when the producer endpoint is configured with transferException=true (or the component-level allowJavaSerializedObject=true) and throwExceptionOnFailure is left at its default value of true; in that case a backend HTTP response with a 5xx status and the application/x-java-serialized-object content type has its body deserialized with no class restrictions. An attacker who controls the backend the Camel producer talks to - through a man-in-the-middle position on an unencrypted (plain HTTP) connection, or by compromising the backend service - can return a crafted serialized Java object and, if a suitable gadget chain is present on the classpath, achieve remote code execution on the Camel application host. The path is not reachable in the default configuration, where transferException is false. This issue affects Apache Camel: from 4.0.0 before 4.14.8, from 4.15.0 before 4.18.3, from 4.19.0 before 4.20.0. Users are recommended to upgrade to version 4.20.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. After upgrading, the deserialization performed by both helper utilities is constrained by a default ObjectInputFilter (allow-list java.**;javax.**;org.apache.camel.**;!*), which can be customised through the new deserializationFilter endpoint option or the JVM-wide -Djdk.serialFilter system property. For deployments that cannot upgrade immediately: do not enable transferException=true (or allowJavaSerializedObject=true) on producers that talk to untrusted or network-reachable backends; ensure producer connections use TLS (https) so that a response cannot be substituted by a man-in-the-middle; and, where the option is required, set an explicit -Djdk.serialFilter allow-list (for example java.**;org.apache.camel.**;!*) to constrain deserialization.
Metrics
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness Enumeration
Affected Software
| Vendor | Product | Versions |
|---|---|---|
| Apache | Camel | >= 4.0.0, < 4.14.8 |
| Apache | Camel | >= 4.15.0, < 4.18.3 |
| Apache | Camel | 4.19.0 |
References
- https://camel.apache.org/security/CVE-2026-40859.htmlMitigation, Vendor Advisory
- http://www.openwall.com/lists/oss-security/2026/07/05/3Mailing List, Third Party Advisory
Timeline
- Published
- Last Modified
- Status
- Analyzed
Frequently Asked Questions
What is CVE-2026-40859?
How severe is CVE-2026-40859?
How do I fix CVE-2026-40859?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-40849An low privileged remote attacker can exploit an unauthentic…7.1
- CVE-2026-4085The Easy Social Photos Gallery plugin for WordPress is vulne…6.4
- CVE-2026-40850An unauthenticated remote attacker can exploit an unauthenti…8.7
- CVE-2026-40851A local attacker can perform a confusion attack on the cfgpa…8.4
- CVE-2026-40852A highly authenticated attacker can alter the config generat…7.2
- CVE-2026-40858The camel-infinispan component's ProtoStream-based remote ag…8.8
- CVE-2026-4086The WP Random Button plugin for WordPress is vulnerable to S…6.4
- CVE-2026-40860JmsBinding.extractBodyFromJms() in camel-jms, and the equiva…9.8
- CVE-2026-40861A Dag author could either (a) create a symlink under their t…6.5
- CVE-2026-40863PhpSpreadsheet is a pure PHP library for reading and writing…7.5
- CVE-2026-40864JupyterHub is software that allows users to create a multi-u…4.3
- CVE-2026-40865Horilla is a free and open source Human Resource Management …7.1
Are you affected by CVE-2026-40859?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
