Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach unauthenticated Hazelcast cluster over network
-
ExploitPublish malicious serialized Java object into backing map
-
ExecutionVulnerable Camel member deserializes value with no class filter
-
ImpactExecute arbitrary code on host
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V1 - Encoding and Sanitization Safe deserialization, type allowlists
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a deployment using one of two specific camel-hazelcast paths without supplying its own Hazelcast configuration or instance: (1) a route using ReplicatedHazelcastAggregationRepository without a hazelcastInstance (its doStart() never called super.doStart(), so it missed the CVE-2026-43865 default JavaSerializationFilterConfig), or (2) a client-mode endpoint (hazelcastMode=client) where neither a referenced ClientConfig nor hazelcastConfigUri is provided, causing HazelcastDefaultComponent#getOrCreateHzClientInstance() to build an unfiltered ClientConfig. The attacker must additionally be able to publish entries into the Hazelcast cluster the instance is attached to; this is eased by Hazelcast's default of no authentication and no TLS. Limiting factors: affected versions only (4.0.0-4.18.5 excl., 4.19.0-4.22.1 excl.); a user-supplied Config with a JavaSerializationFilterConfig or an injected HazelcastInstance is never overwritten and fully mitigates; a JVM-wide -Djdk.serialFilter and enabling Hazelcast auth/TLS also limit exposure. |
| Impact | All severity signals point the same direction and reinforce one another. The vendor-assigned CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N with full H across VC/VI/VA and subsequent-system SC/SI/SA) scores 10.0 and describes a network-reachable, low-complexity, unauthenticated path to remote code execution - consistent with the description, which is a CWE-502 untrusted-data deserialization leading to RCE inside Hazelcast's serialization layer before Camel even processes the exchange. The deployment default amplifies this: Hazelcast clusters ship with neither authentication nor TLS, so the 'able to publish into the cluster' precondition is often met by anyone with network reach. No EPSS score, no CISA KEV entry, and no public exploit were provided, so there is no evidence of active exploitation yet; the GitHub links are patch diffs and a regression test, not weaponized proof-of-concept code. The realistic qualifier is exposure scope rather than exploitability: only specific configurations are affected (see exploitation_conditions), so this is a genuine high-priority patch for anyone running camel-hazelcast in those modes, but it is not a blanket 'every Camel install is RCE' situation. Note the Microsoft tag in the input is erroneous - this is an Apache Software Foundation product. |
| Exploit ScenarioDerived | An attacker with network access to an unauthenticated, non-TLS Hazelcast cluster that a vulnerable Camel instance has joined publishes a crafted serialized Java object (e.g. a gadget-chain payload) into the backing ReplicatedMap or map. When the Camel member reads that value it deserializes it with no class filter, executing attacker-controlled code on the host. No public exploit is identified at time of analysis, though CWE-502 Java gadget chains are well understood and the patch diff confirms the missing filter. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 19, 2026
Unauthenticated remote code execution affects the camel-hazelcast component of Apache Camel 4.0.0 through 4.18.4 and 4.19.0 through 4.22.0, where two self-built Hazelcast bootstrap paths create instances without the default JavaSerializationFilterConfig added for CVE-2026-43865. A route using ReplicatedHazelcastAggregationRepository without an injected hazelcastInstance, or a client-mode endpoint built by HazelcastDefaultComponent#getOrCreateHzClientInstance() when neither a ClientConfig nor hazelcastConfigUri is supplied, will accept and deserialize arbitrary Java objects published into the backing cluster, letting an attacker who can write into that cluster execute code before Camel ever processes the exchange. Hazelcast clusters ship without authentication or TLS by default, so the write prerequisite is often met in practice; no public exploit code or CISA KEV entry was identified at time of analysis, but the vendor has published fixed releases and the missing-filter condition requires no unsafe opt-in by the deployer.
RemediationAI
Vendor-released patch: upgrade to Apache Camel 4.23.0; deployments on the 4.22.x stream should move to 4.22.1 and those on 4.18.x to 4.18.5, which backport the fix (see https://camel.apache.org/security/CVE-2026-78162.html and the patch pull requests https://github.com/apache/camel/pull/25566, https://github.com/apache/camel/pull/25595, https://github.com/apache/camel/pull/25599 and https://github.com/apache/camel/pull/25600). The 4.14.x stream and earlier are end of life and must be migrated to a supported release. Where an immediate upgrade is not possible, supply an explicit Hazelcast Config carrying a JavaSerializationFilterConfig, or inject a pre-built HazelcastInstance, since Camel never overwrites a user-supplied configuration - the trade-off is that the whitelist must then cover every class your aggregation payloads legitimately use, or exchanges will fail to deserialize. As a JVM-wide compensating control, set -Djdk.serialFilter=!java.net.;java.;javax.;org.apache.camel.;!* to block deserialization of unexpected classes, accepting that it applies to all serialization in the process and may break unrelated libraries. Finally, enable Hazelcast cluster authentication and TLS to restrict who can publish into the cluster; this removes the write prerequisite for the attack but adds credential and certificate management overhead and must be rolled out to every cluster member simultaneously.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is CWE-502, deserialization of untrusted data, inside Hazelcast's own Java serialization layer rather than in Camel's exchange processing. Apache Camel's camel-hazelcast component gained a hardening change (CVE-2026-43865) that applies a default JavaSerializationFilterConfig to Hazelcast instances it bootstraps itself; the filter whitelists the class-name prefixes java., javax. and org.apache.camel. and blacklists java.net. Two code paths escaped that change. ReplicatedHazelcastAggregationRepository extends HazelcastAggregationRepository but overrides doStart() without invoking super.doStart(), so it keeps a private copy of the bootstrap block and never installs the filter. Separately, HazelcastDefaultComponent#getOrCreateHzClientInstance() constructs its own ClientConfig when hazelcastMode=client is selected and no referenced ClientConfig or hazelcastConfigUri is provided, so client-mode endpoints behaved differently from node-mode endpoints for an otherwise identical configuration. In both cases a Hazelcast member or client is created with unrestricted Java deserialization, and values read from the ReplicatedMap are deserialized before Camel sees them. Because Hazelcast enables neither authentication nor TLS by default, and because selecting client mode is a topology decision rather than a security opt-in, deployments could be exposed without taking any unsafe action. The corresponding fixes route both paths through HazelcastSerializationFilterHelper.applyDefault(cfg) and add regression tests asserting the filter is present on locally initialized instances of both repository types.
Know when Apache Camel gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
Unauthenticated network publisher to a default no-auth cluster triggers deserialization RCE (PR:N/AC:L/AV:N); code execution escapes the Camel component to the host, so S:C with full C/I/A.
Primary rating from Vendor (apache).
CVSS VectorVendor: apache
DescriptionCVE.org
Deserialization of Untrusted Data vulnerability in Apache Camel.
This issue affects Apache Camel: from 4.0.0 before 4.18.5, from 4.19.0 before 4.22.1.
The camel-hazelcast component applies a default Hazelcast JavaSerializationFilterConfig to the instances it creates from its own configuration, a protection introduced by CVE-2026-43865. That change did not reach two of the configuration paths Camel builds itself, so those paths continued to create Hazelcast instances whose Java deserialization is unrestricted. ReplicatedHazelcastAggregationRepository extends HazelcastAggregationRepository but overrides doStart() without calling super.doStart(), keeping its own copy of the bootstrap block, and therefore never received the filter: a route using it without supplying a hazelcastInstance starts a Hazelcast member that deserializes values read from the backing ReplicatedMap with no class restriction. HazelcastDefaultComponent#getOrCreateHzClientInstance() builds its own ClientConfig when hazelcastMode=client is selected and neither a referenced ClientConfig nor hazelcastConfigUri is supplied, and likewise applied no filter, so client-mode endpoints behaved differently from node-mode endpoints for an otherwise identical configuration. In both cases an attacker able to publish into the Hazelcast cluster that the affected instance is attached to can cause a serialized Java object of their choosing to be deserialized inside Hazelcast's own serialization layer, before Camel processes the exchange, resulting in remote code execution. Hazelcast clusters have neither authentication nor TLS enabled by default. Selecting client mode is a topology choice rather than a security option, so neither path required the deployment to opt in to unsafe behaviour.
Users are recommended to upgrade to version 4.23.0, which fixes the issue. If users are on the 4.22.x releases stream, then they are suggested to upgrade to 4.22.1. If users are on the 4.18.x releases stream, then they are suggested to upgrade to 4.18.5. The 4.14.x releases stream and earlier reached end of life before this issue was resolved and will not receive a fix, so deployments on those lines must move to a supported release. For deployments that cannot upgrade immediately, supply an explicit Hazelcast configuration carrying a JavaSerializationFilterConfig, or inject a pre-built HazelcastInstance, since a user-supplied configuration is never overwritten by Camel. Alternatively set the JVM-wide filter -Djdk.serialFilter=!java.net.;java.;javax.;org.apache.camel.;!* and enable Hazelcast cluster authentication and TLS to restrict who can reach the cluster.
Articles & Coverage 1
Executive ViewAI
Apache Camel's camel-hazelcast component, used to build integration routes across the 4.0.0-4.18.4 and 4.19.0-4.22.0 release lines, can deserialize attacker-supplied Java objects and execute code before a route ever processes a message. Because Hazelcast clusters are commonly deployed without authentication or TLS, any team running replication or client-mode routes against a shared cluster may already expose a path to full host compromise, putting integration platforms and the systems they connect at risk. No public exploit code or confirmed active exploitation was identified at time of analysis, so this is a patch-window issue rather than an active incident, but leadership should treat the remediation as urgent given the maximum severity rating and the breadth of downstream systems these routes touch.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Insecure deserialization occurs when an application converts serialized data (a stream of bytes representing an object's state) back into a living object without proper validation.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
More in Apache Camel
View allRemote code execution in Apache Camel's camel-coap component (versions 4.14.0-4.14.5, 4.18.0 before 4.18.1, and 4.19.0)
Unsafe Java deserialization in Apache Camel's camel-infinispan component allows arbitrary code execution when the ProtoS
Header-injection in the Apache Camel camel-atmosphere-websocket producer lets an external sender hijack WebSocket messag
Header-filter bypass in the Apache Camel Undertow component (4.11.0-4.14.8, 4.15.0-4.18.3, and 4.19.0-4.21.x) lets remot
Remote code execution in Apache Camel 3.18.0-4.14.5 and 4.15.0-4.18.1 stems from CXF and Knative HeaderFilterStrategy im
Message header injection in Apache Camel's camel-mail component (3.0.0 before 4.14.6 and 4.15.0 before 4.18.1) lets an a
Remote code execution via unsafe Java deserialization affects the camel-pqc component of Apache Camel 4.18.0-4.18.2 and
Unsafe Java deserialization in Apache Camel's camel-consul component (ConsulRegistry / ConsulRegistryUtils.deserialize)
Unauthenticated deserialization of attacker-controlled messages in Apache Camel's camel-jgroups consumer can lead to rem
Expression language injection in the Apache Camel dynamic-router-control endpoint allows a party who can place a message
Deserialization of untrusted data in the Apache Camel Spring Redis component (camel-spring-redis) allows an authenticate
Cypher injection in Apache Camel's camel-neo4j producer allows attackers who control JSON key names in the CamelNeo4jMat
EUVD-2026-104224
GHSA-7j2m-8x69-fhvh
NVD
CVE.org
Exploit-DB