Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Primary rating from Vendor (vmware).
CVSS VectorVendor: vmware
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Lifecycle Timeline
3Blast Radius
ecosystem impact- 32 maven packages depend on org.springframework.kafka:spring-kafka (10 direct, 22 indirect)
Ecosystem-wide dependent count for version 4.0.0.
DescriptionCVE.org
When an application opts into DelegatingDeserializer, a producer can grow the consumer's heap without bound by sending records with unique random spring.kafka.serialization.selector header values, eventually causing GC thrash and OutOfMemoryError.
Affected versions: Spring for Apache Kafka 4.0.0 through 4.0.5; 3.3.0 through 3.3.15; 3.2.0 through 3.2.13; 2.9.0 through 2.9.13; 2.8.0 through 2.8.11.
AnalysisAI
Unbounded heap growth in Spring for Apache Kafka's DelegatingDeserializer allows an authenticated network producer to trigger a Denial of Service against any consumer application that opts into this deserializer. By flooding the consumer with Kafka records carrying unique, randomized spring.kafka.serialization.selector header values, an attacker forces unbounded cache growth on the consumer's JVM heap, ultimately inducing GC thrash and OutOfMemoryError. No public exploit identified at time of analysis, and this is not listed in the CISA KEV catalog, but the low-complexity, network-accessible attack surface warrants prompt remediation for affected deployments.
Technical ContextAI
Spring for Apache Kafka's DelegatingDeserializer is a pluggable deserialization facility that uses the spring.kafka.serialization.selector Kafka record header to dynamically dispatch to different deserializer implementations at runtime. The root cause is CWE-770 (Allocation of Resources Without Limits or Throttling): the framework caches or registers entries for each unique selector header value it encounters but applies no eviction policy, cap, or validation on these entries. Because header values are producer-controlled and unbounded, an adversary with producer access can inject arbitrarily large numbers of unique strings into this cache structure, growing the JVM heap without limit until garbage collection is unable to reclaim sufficient memory. The affected component is present across five major release lines of the Spring for Apache Kafka library, a widely used integration layer between Spring Boot/Framework applications and Apache Kafka. The CVSS vector (AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H) confirms this is a pure availability impact with no confidentiality or integrity consequence.
RemediationAI
The vendor advisory at https://spring.io/security/cve-2026-41726 should be consulted for confirmed fixed versions, as no explicit patch release versions were included in the input data; based on the affected ranges, versions beyond 4.0.5, 3.3.15, 3.2.13, 2.9.13, and 2.8.11 respectively are the expected fix targets but this must be verified against the advisory before upgrading. If immediate upgrade is not possible, the most actionable compensating control is to avoid opting into DelegatingDeserializer altogether - replacing it with a static deserializer implementation eliminates the vulnerable code path entirely, with the trade-off that dynamic deserialization dispatch based on record headers will no longer be available. If DelegatingDeserializer is operationally required, restricting Kafka producer ACLs to only fully trusted internal services limits the attacker population that can deliver malicious headers, though this does not eliminate the vulnerability. Additionally, JVM heap monitoring and alerting on abnormal growth, combined with consumer process restart automation, can reduce the operational impact of an exploit but should not be treated as a substitute for patching.
Oracle Java SE 7 Update 6 and earlier contains multiple sandbox bypass vulnerabilities via the ClassFinder and forName m
Remote code execution in IBM Sterling B2B Integrator, Sterling Integrator, and Tivoli Common Reporting allows unauthenti
Java Runtime Environment sandbox bypass via incorrect image channel verification in 2D component allows remote unauthent
Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug
JBoss Seam 2 in Red Hat JBoss EAP 4.3.0 fails to sanitize JBoss Expression Language inputs, allowing remote attackers to
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 update 4 and earlier, 6 up
Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 2 and earlier, 6 Up
The WLS Security component in Oracle WebLogic Server 10.3.6.0, 12.1.2.0, 12.1.3.0, and 12.2.1.0 allows remote attackers
Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 7 and earlier allow
Remote unauthenticated attackers can execute arbitrary code on Adobe ColdFusion servers through Java deserialization fla
The ExceptionDelegator component in Apache Struts before 2.2.3.1 interprets parameter values as OGNL expressions during
Same technique Denial Of Service
View allVendor StatusVendor
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-35903
GHSA-xvfq-4q6q-gxx7