Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-78165— Apache Camel: Camel-Spring-Redis Unfiltered Java Deserialization of Redis Payloads

Quick assessment

Affected
Apache Software Foundation Apache Camel
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Apache Camel Spring Redis 组件存在“反序列化不可信数据”漏洞。 受影响版本范围: Apache Camel 2.11.0 至 4.18.4(含) Apache Camel 4.19.0 至 4.22.0(含) 漏洞详情: 方法在用户未配置序列化器选项时,会惰性构建一个裸 实例,并将该实例用于组件执行的所有读取操作。Spring 的实现通过 委托至 ,后者使用 读取字节流,但未在流上安装 。因此,任意序列化类图均可被实例化,并触发其 方法。 在构建 对象之前,即对订阅通道中每条消息的原始字节

CVSS 8.8 · High

Affected Version Matrix 5

VendorProduct Version RangeStatus
Apache Software Foundation Apache Camel 2.11.0< 4.18.5 affected
4.19.0< 4.22.1 affected
4.18.5 unaffected
4.22.1 unaffected
4.23.0 unaffected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-78165

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Apache Camel: Camel-Spring-Redis Unfiltered Java Deserialization of Redis Payloads
Source: CVE Program / CVE List V5
Vulnerability Description
Deserialization of Untrusted Data vulnerability in Apache Camel Spring Redis component. This issue affects Apache Camel: from 2.11.0 before 4.18.5, from 4.19.0 before 4.22.1. RedisConfiguration.getSerializer lazily built a bare JdkSerializationRedisSerializer whenever no serializer option was configured, and that instance was used for every read the component performs. Spring's implementation delegates through DeserializingConverter to DefaultDeserializer, which reads the bytes with a ConfigurableObjectInputStream and installs no java.io.ObjectInputFilter on the stream, so an arbitrary serialized class graph was materialised and its readObject method executed. RedisConsumer.setBody applied that serializer to the raw bytes of every message published to the subscribed channels, before the Exchange was constructed and therefore before any route logic could inspect the message, so an actor able to issue PUBLISH on a subscribed channel reached the deserialization sink directly. The same default serializer backed the RedisTemplate built by RedisConfiguration.createDefaultTemplate, so the producer read commands GET, HGET, HGETALL and HVALS deserialized whatever was stored in the Redis keyspace, and SpringRedisIdempotentRepository shared that template. Configuring a custom redisTemplate did not close the consumer path, because RedisConsumer.setBody reads getSerializer directly rather than the serializer attached to the template, so a deployment that had wired a String serializer into its own template remained exposed on the consumer side unless it also set the serializer option. The component never constructed a java.io.ObjectInputStream itself, which is why earlier passes over the Camel codebase for unfiltered Java deserialization did not reach it. The behaviour dates back to the introduction of the component, first released in 2.11.0, and was unchanged until this fix. 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, set the JVM-wide jdk.serialFilter system property, which the affected code path honours because it reads through a java.io.ObjectInputStream, for example -Djdk.serialFilter=!java.net.**;java.**;javax.**;org.apache.camel.**;!* ; or set the serializer endpoint option to a serializer that does not use Java serialization, such as StringRedisSerializer, noting that this must be set as the serializer option and not only on a custom redisTemplate. As defence in depth, require authentication on the Redis instance and restrict which clients may publish to the subscribed channels, and do not expose a Redis instance consumed by Camel to untrusted networks.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
可信数据的反序列化
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
Apache Software Foundation Apache Camel 2.11.0 ~ 4.18.5 -

II. Public POCs for CVE-2026-78165

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-78165

请登录查看更多情报信息。

Patches & Fixes for CVE-2026-78165 (5)

Vendor Advisories for CVE-2026-78165 (1)

Same Patch Batch · Apache Software Foundation · 2026-10-19 · 62 CVEs total

CVE-2026-78162 10.0 CRITICAL Apache Camel: Camel-Hazelcast Managed Instances Missing Java Deserialization Filter (Incom
CVE-2026-88900 8.8 HIGH Apache Camel: Camel-JGroups: Unsafe Java Deserialization of Cluster Messages in the JGroup
CVE-2026-83531 8.8 HIGH Apache Camel: Camel-Dynamic-Router Control Endpoint Compiles Predicate Expressions Supplie
CVE-2026-80343 8.2 HIGH Apache Camel: Camel-Netty-HTTP Security Constraint Bypass via Case-Sensitive Context-Path
CVE-2026-80344 8.2 HIGH Apache Camel: Camel-AS2 Server-Side Request Forgery and Credential Disclosure via Asynchro
CVE-2026-80312 8.2 HIGH Apache Camel: Camel-OAuth Authentication Bypass via Fail-Open Processors
CVE-2026-78164 8.2 HIGH Apache Camel: HTTP producers resolve property placeholders in message-supplied URI overrid
CVE-2026-88901 8.2 HIGH Apache Camel: Camel-Smooks XML External Entity Processing, external entities resolved by d
CVE-2026-85250 7.5 HIGH Apache Camel: Camel-XPath XML External Entity Processing and File Disclosure via the docum
CVE-2026-85251 7.5 HIGH Apache Camel: Camel-HTTP Credential Disclosure to Cross-Host Redirect Targets
CVE-2026-79984 7.4 HIGH Apache Camel: camel-mina-sftp resolved the remote path of a polled file from the name repo
CVE-2026-79985 7.4 HIGH Apache Camel: camel-smb resolved the remote path of a polled file from the name reported i
CVE-2026-79986 7.4 HIGH Apache Camel: camel-azure-files resolved the remote path of a polled file from the name re
CVE-2026-79983 7.4 HIGH Apache Camel: camel-ftp resolved the remote path of a polled file from the name reported i
CVE-2026-91858 6.5 MEDIUM Apache Camel: Camel-FOP Resolves External DTDs and Entities From Untrusted XSL-FO Input Wh
CVE-2026-84176 6.5 MEDIUM Apache Camel: Camel-Platform-HTTP-Vertx Cross-Origin Credential Exposure via Wildcard Orig
CVE-2026-85249 6.5 MEDIUM Apache Camel: Camel-Tika Header Injection via Unfiltered Document Metadata
CVE-2026-85254 6.5 MEDIUM Apache Camel: Camel-Platform-HTTP Request-Header Echo Suppression Bypassed by Header-Name
CVE-2026-85296 6.5 MEDIUM Apache Camel: Camel-AS2 Cross-Partner Signing Key Confusion via Shared Per-Request State
CVE-2026-85314 6.5 MEDIUM Apache Camel: Camel-Mail Header Injection via Unfiltered mail.smtp Headers in the MimeMult

Showing top 20 of 62 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2026-78165

No comments yet


Leave a comment