CVE-2026-43865
Apache Camel: Camel-Hazelcast: Unsafe Java deserialization in default-configured managed Hazelcast instances enables remote code execution
Description
Deserialization of Untrusted Data vulnerability in Apache Camel Hazelcast component. The camel-hazelcast component creates and manages Hazelcast instances using a default configuration that applies no Java deserialization filter. When Camel builds the Hazelcast Config itself - that is, when no user-supplied HazelcastInstance, hazelcastConfigUri, or referenced Config bean is provided - neither Hazelcast's JavaSerializationFilterConfig nor a Camel-side ObjectInputFilter is configured, so objects received over the Hazelcast cluster protocol are deserialized inside Hazelcast's own serialization layer (ObjectInputStream.readObject) before Camel ever processes them. An attacker who can join or otherwise reach the Hazelcast cluster can publish a crafted serialized Java object that is then deserialized on every Camel node, resulting in remote code execution. The exposure is present by default and requires no opt-in endpoint configuration: any route using a hazelcast consumer (hazelcast-topic, hazelcast-queue, hazelcast-seda, hazelcast-map, hazelcast-multimap, hazelcast-replicatedmap, hazelcast-list, hazelcast-set), as well as the HazelcastAggregationRepository and HazelcastIdempotentRepository, is affected whenever the managed instance is created from Camel's default configuration. 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.21.0. Users are recommended to upgrade to version 4.21.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. The fix makes Camel apply a default Hazelcast JavaSerializationFilterConfig (whitelisting the java., javax. and org.apache.camel. class-name prefixes and blacklisting java.net.) to instances it creates from its own default configuration, while leaving any user-supplied Config or HazelcastInstance untouched. For deployments that cannot upgrade immediately, configure a deserialization filter on the Hazelcast instance (Hazelcast JavaSerializationFilterConfig, or the JVM-wide system property -Djdk.serialFilter=!java.net.**;java.**;javax.**;org.apache.camel.**;!*) and enable Hazelcast cluster authentication and TLS to restrict who can reach the cluster.
INFO
Published Date :
July 6, 2026, 9:16 a.m.
Last Modified :
Oct. 25, 2026, 3:10 p.m.
Remotely Exploit :
Yes !
Source :
[email protected]
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS | 134c704f-9b21-4f2e-91b3-4a467353bcc0 | |||||
| CVSS 3.1 | HIGH | 134c704f-9b21-4f2e-91b3-4a467353bcc0 |
Solution
- Upgrade to Apache Camel version 4.21.0 or later.
- Upgrade to Apache Camel 4.14.8 if on 4.14.x.
- Upgrade to Apache Camel 4.18.3 if on 4.18.x.
- Configure deserialization filters if upgrade is not possible.
Public PoC/Exploit Available at Github
CVE-2026-43865 has a 2 public
PoC/Exploit available at Github.
Go to the Public Exploits tab to see the list.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-43865.
| URL | Resource |
|---|---|
| https://camel.apache.org/security/CVE-2026-43865.html | Mitigation Vendor Advisory |
| http://www.openwall.com/lists/oss-security/2026/07/05/5 | Mailing List Third Party Advisory |
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-43865 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-43865
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Reproducer for CVE-2026-43865 — Apache Camel camel-hazelcast default-configured instance unsafe Java deserialization (RCE)
Dockerfile Java
📡 PoC auto collect from GitHub. ⚠️ Be careful Malware.
security cve exploit poc vulnerability
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-43865 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-43865 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
CVE Translated by [email protected]
Oct. 25, 2026
Action Type Old Value New Value Added Translation Title: Apache Camel de Apache Software Foundation, Description: Vulnerabilidad de deserialización de datos no confiables en el componente Apache Camel Hazelcast. El componente camel-hazelcast crea y gestiona instancias de Hazelcast utilizando una configuración predeterminada que no aplica ningún filtro de deserialización de Java. Cuando Camel construye la configuración de Hazelcast por sí mismo, es decir, cuando no se proporciona ninguna instancia de Hazelcast, hazelcastConfigUri o bean de configuración referenciado suministrado por el usuario, ni JavaSerializationFilterConfig de Hazelcast ni un ObjectInputFilter del lado de Camel están configurados, por lo que los objetos recibidos a través del protocolo de clúster de Hazelcast son deserializados dentro de la propia capa de serialización de Hazelcast (ObjectInputStream.readObject) antes de que Camel los procese. Un atacante que puede unirse o de otra manera alcanzar el clúster de Hazelcast puede publicar un objeto Java serializado manipulado que luego es deserializado en cada nodo de Camel, lo que resulta en ejecución remota de código. La exposición está presente por defecto y no requiere configuración de punto final de aceptación: cualquier ruta que utilice un consumidor de hazelcast (hazelcast-topic, hazelcast-queue, hazelcast-seda, hazelcast-map, hazelcast-multimap, hazelcast-replicatedmap, hazelcast-list, hazelcast-set), así como el HazelcastAggregationRepository y el HazelcastIdempotentRepository, se ve afectada siempre que la instancia gestionada se crea a partir de la configuración predeterminada de Camel. Este problema afecta a Apache Camel: desde 4.0.0 antes de 4.14.8, desde 4.15.0 antes de 4.18.3, desde 4.19.0 antes de 4.21.0. Se recomienda a los usuarios actualizar a la versión 4.21.0, que corrige el problema. Si los usuarios están en la rama de versiones LTS 4.14.x, se les sugiere actualizar a 4.14.8. Si los usuarios están en la rama de versiones 4.18.x, se les sugiere actualizar a 4.18.3. La corrección hace que Camel aplique un JavaSerializationFilterConfig de Hazelcast predeterminado (incluyendo en la lista blanca los prefijos de nombre de clase java., javax. y org.apache.camel. y en la lista negra java.net.) a las instancias que crea a partir de su propia configuración predeterminada, dejando intacta cualquier configuración o instancia de Hazelcast suministrada por el usuario. Para implementaciones que no pueden actualizarse inmediatamente, configure un filtro de deserialización en la instancia de Hazelcast (Hazelcast JavaSerializationFilterConfig, o la propiedad de sistema a nivel de JVM -Djdk.serialFilter=!java.net.;java.;javax.;org.apache.camel.;!*) y habilite la autenticación de clúster de Hazelcast y TLS para restringir quién puede acceder al clúster. -
Initial Analysis by [email protected]
Jul. 07, 2026
Action Type Old Value New Value Added CPE Configuration OR *cpe:2.3:a:apache:camel:*:*:*:*:*:*:*:* versions from (including) 4.0.0 up to (excluding) 4.14.8 *cpe:2.3:a:apache:camel:*:*:*:*:*:*:*:* versions from (including) 4.15.0 up to (excluding) 4.18.3 *cpe:2.3:a:apache:camel:*:*:*:*:*:*:*:* versions from (including) 4.19.0 up to (excluding) 4.21.0 Added Reference Type Apache Software Foundation: https://camel.apache.org/security/CVE-2026-43865.html Types: Mitigation, Vendor Advisory Added Reference Type CVE: http://www.openwall.com/lists/oss-security/2026/07/05/5 Types: Mailing List, Third Party Advisory -
CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0
Jul. 06, 2026
Action Type Old Value New Value Added CVSS V3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H Added SSVC {'id': 'CVE-2026-43865', 'role': 'CISA Coordinator', 'options': [{'exploitation': 'none'}, {'automatable': 'no'}, {'technicalImpact': 'total'}], 'version': '2.0.3', 'timestamp': '2026-07-06T18:45:45.952604Z'} -
CVE Modified by af854a3a-2127-422b-91ae-364da2661108
Jul. 06, 2026
Action Type Old Value New Value Added Reference http://www.openwall.com/lists/oss-security/2026/07/05/5 -
New CVE Received by [email protected]
Jul. 06, 2026
Action Type Old Value New Value Added Affected [{'vendor': 'Apache Software Foundation', 'product': 'Apache Camel', 'versions': [{'status': 'affected', 'version': '4.0.0', 'lessThan': '4.14.8', 'versionType': 'semver'}, {'status': 'affected', 'version': '4.15.0', 'lessThan': '4.18.3', 'versionType': 'semver'}, {'status': 'affected', 'version': '4.19.0', 'lessThan': '4.21.0', 'versionType': 'semver'}], 'packageName': 'org.apache.camel:camel-hazelcast', 'collectionURL': 'https://repo.maven.apache.org/maven2', 'defaultStatus': 'unaffected'}] Added Description Deserialization of Untrusted Data vulnerability in Apache Camel Hazelcast component. The camel-hazelcast component creates and manages Hazelcast instances using a default configuration that applies no Java deserialization filter. When Camel builds the Hazelcast Config itself - that is, when no user-supplied HazelcastInstance, hazelcastConfigUri, or referenced Config bean is provided - neither Hazelcast's JavaSerializationFilterConfig nor a Camel-side ObjectInputFilter is configured, so objects received over the Hazelcast cluster protocol are deserialized inside Hazelcast's own serialization layer (ObjectInputStream.readObject) before Camel ever processes them. An attacker who can join or otherwise reach the Hazelcast cluster can publish a crafted serialized Java object that is then deserialized on every Camel node, resulting in remote code execution. The exposure is present by default and requires no opt-in endpoint configuration: any route using a hazelcast consumer (hazelcast-topic, hazelcast-queue, hazelcast-seda, hazelcast-map, hazelcast-multimap, hazelcast-replicatedmap, hazelcast-list, hazelcast-set), as well as the HazelcastAggregationRepository and HazelcastIdempotentRepository, is affected whenever the managed instance is created from Camel's default configuration. 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.21.0. Users are recommended to upgrade to version 4.21.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. The fix makes Camel apply a default Hazelcast JavaSerializationFilterConfig (whitelisting the java., javax. and org.apache.camel. class-name prefixes and blacklisting java.net.) to instances it creates from its own default configuration, while leaving any user-supplied Config or HazelcastInstance untouched. For deployments that cannot upgrade immediately, configure a deserialization filter on the Hazelcast instance (Hazelcast JavaSerializationFilterConfig, or the JVM-wide system property -Djdk.serialFilter=!java.net.**;java.**;javax.**;org.apache.camel.**;!*) and enable Hazelcast cluster authentication and TLS to restrict who can reach the cluster. Added CWE CWE-502 Added Reference https://camel.apache.org/security/CVE-2026-43865.html