Skip to content
VulniPulse
Advisory severityCritical10.0Apache Software Foundation Updated

Critical [CVE-2026-43865 +1] Deserialization of Untrusted Data vulnerability in Apache Camel

This critical-severity Apache Software Foundation advisory covers CVE-2026-78162 and CVE-2026-43865 affecting Apache Camel.

Aggregated and source-linked by VulniPulse. Data sources, validation and limitations. This bulletin covers 2 CVEs; its score, affected versions and guidance may apply to different issues within that bulletin.

CVE-2026-78162 Source published Source updated

VulniPulse record published Record updated

Affected products & platforms
Apache Software FoundationMessaging
Open source advisory

Android app · Google Play

Monitor future Apache Software Foundation CVEs from your phone.

Choose a whole vendor or a precise platform, then receive matching security advisories by phone notification, email, or both. Coverage follows 34 official vendor sources and 160+ reviewed platform categories.

Matching phone alertsOptional email delivery

Summary

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.

Affected versions
  • 4.0.0 before 4.18.5
  • 4.19.0 before 4.22.1

Official advisory · high-confidence parse· fetched 2 days ago·verify at source

Fixed versions
  • 4.18.5
  • 4.22.1
  • 4.23.0

Official advisory · high-confidence parse· fetched 2 days ago·verify at source

Mitigation checklist

Recommended fix / mitigation
  • 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.
  • 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.
Temporary workarounds
  • 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.
  • 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.

Official advisory · high-confidence parse· fetched 2 days ago·verify at source

Discussion(0)

No comments yet. Share field notes, upgrade gotchas, or questions — verify against the vendor advisory before acting on community advice.

Sign in to join the discussion.