Skip to main content

Apache Kafka EUVDEUVD-2026-112168

| CVE-2026-111073 MEDIUM
Improper Handling of Highly Compressed Data (Data Amplification) (CWE-409)
2026-10-28 apache GHSA-r6fp-x62f-pxfv
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as any Kafka client
  2. Delivery
    Craft tiny highly compressible telemetry payload
  3. Exploit
    Send PushTelemetry request under telemetry.max.bytes
  4. Execution
    Broker decompresses unbounded into heap
  5. Persist
    Repeat/fan out across brokers
  6. Impact
    Broker OutOfMemoryError and cluster availability loss

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V2 - Validation and Business Logic Compression ratio limits
Exploitation Conditions

Requires an attacker to hold valid authentication to the Kafka cluster as any client - the vendor description explicitly states 'an authenticated client' and notes PushTelemetry is not gated by an ACL, so no special role or privilege beyond authentication is needed. It works against default configurations: telemetry.max.bytes defaults to 1 MB and bounds only the compressed size, and on affected versions there is no configuration that fully prevents the amplification (lowering telemetry.max.bytes only proportionally reduces, not eliminates, the worst-case decompressed size). No user interaction and no non-default feature flag are required. The primary limiting factor is the authentication requirement; note the input provides no CVSS vector, so the privilege level is taken from the vendor text rather than a confirmed PR metric.

Impact

This is a denial-of-service vulnerability (CWE-409, improper handling of highly compressed data) in Apache Kafka's broker-side PushTelemetry API, with no CVSS score or vector supplied in the input - severity must therefore be assessed independently rather than read off a vendor rating. The core signals are mixed-to-moderate: there is no CISA KEV listing, no public exploit or PoC reference, and no EPSS probability in the input, so there is no evidence of active or imminent exploitation. The vuln.today decision label is 'this_month', indicating a near-term but non-emergency priority rather than act_now/emergency. Impact is confined to availability: successful exploitation causes broker heap exhaustion and OutOfMemoryError (crash/degradation), with no confidentiality or integrity impact described. The amplification is genuinely dangerous in substance - a small, highly compressible payload (e.g. gzipped zeros) expands to hundreds of megabytes of heap, and the API is reachable by ANY authenticated client with no ACL gating, so the bar is low once a client can authenticate and cluster-wide availability can be hit by targeting multiple brokers. The main factor limiting real-world risk is that it is not remote-unauthenticated: the vendor description explicitly states an authenticated client is required. Net assessment: a legitimate, reasonably prioritized availability bug for any multi-tenant or externally-reachable Kafka deployment, but not a drop-everything emergency on the current signals (no KEV, no PoC, non-emergency decision label).

Exploit ScenarioDerived

An authenticated Kafka client sends a PushTelemetry request (KIP-714) carrying a small, highly compressible metrics payload such as gzip-compressed zeros, whose compressed size stays under telemetry.max.bytes (default 1 MB). The broker validates only the compressed size, then ClientTelemetryUtils.decompress() expands it unbounded into hundreds of megabytes of heap; repeated or concurrent requests, optionally fanned out across multiple brokers, drive the JVM to OutOfMemoryError and crash or degrade the cluster. No public exploit or PoC reference is identified at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 28, 2026

Apache Kafka brokers can be driven into heap exhaustion by any authenticated client because the PushTelemetry (KIP-714) path limits the compressed request size but not the decompressed output. A tiny, highly compressible payload can expand to hundreds of megabytes, and repeated or concurrent requests can trigger OutOfMemoryError, degrade brokers, and affect cluster availability; PushTelemetry is not ACL-gated. No public exploit was identified at time of analysis, and vendor fixes are available in Apache Kafka 4.2.2, 4.3.1, and 4.4.0.

RemediationAI

Upgrade to Apache Kafka 4.2.2, 4.3.1, or 4.4.0. Those releases enforce a maximum decompressed size equal to telemetry.max.bytes (default 1 MB), read decompression in bounded chunks, and abort with TelemetryTooLargeException instead of fully expanding an oversized payload in heap. On affected versions no configuration fully prevents the amplification; lowering telemetry.max.bytes reduces the worst-case decompressed size proportionally and is only a partial mitigation. The vendor advisory is available at https://kafka.apache.org/cve-list.

Affected VersionsENISA

Apache Kafka 4.2.0 ≤4.2.1
Apache Kafka 3.7.0 ≤4.1.2
Apache Kafka 4.3.0

Affected Packages

euvd apache_kafka no fix

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

CWE-409 (Improper Handling of Highly Compressed Data) applies to the broker-side PushTelemetry API introduced by KIP-714. On affected versions, telemetry.max.bytes (default 1 MB) is enforced only against the compressed request body, while ClientTelemetryUtils.decompress() expands the payload into a heap buffer with no cap on decompressed output, reading until the compressed input is exhausted. A gzip stream of zeros or similarly compressible data can therefore expand far beyond the compressed limit. Fixed builds enforce a maximum decompressed size equal to telemetry.max.bytes, read in bounded chunks, and abort with TelemetryTooLargeException once the decompressed total exceeds the limit. The input supplies no CVSS score or vector; the independently assessed vector is CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H, with the main prerequisite being any valid authenticated client session rather than a special role or ACL permission.

Know when Apache Kafka 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

Vendor (apache) PRIMARY MEDIUM
vuln.today AI 6.5 MEDIUM

Network-reachable telemetry API (AV:N), simple crafted payload (AC:L), requires any authenticated client (PR:L), availability-only heap-exhaustion impact so C:N/I:N/A:H within the broker (S:U).

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (apache).

DescriptionCVE.org

The broker-side PushTelemetry API (KIP-714) validates only the compressed size of a client's metrics payload against telemetry.max.bytes (default 1 MB) before decompressing it. ClientTelemetryUtils.decompress() then decompresses the payload with no limit on the decompressed output size, growing a heap buffer until the compressed input is exhausted. A small, highly compressible payload (for example gzip-compressed zeros) can therefore expand to hundreds of megabytes of broker heap.

Impact:

An authenticated client can send a PushTelemetry request with a small compressed payload that decompresses to a very large size, consuming broker heap out of proportion to the request size. Repeated or concurrent requests can exhaust the broker heap and cause an OutOfMemoryError, degrading or crashing the broker; a client that targets multiple brokers can affect cluster availability. PushTelemetry is available to any authenticated client and is not gated by an ACL.

Mitigation:

Upgrade to Apache Kafka 4.2.2, 4.3.1, or 4.4.0. On affected versions there is no configuration that fully prevents the amplification, because telemetry.max.bytes bounds only the compressed size; lowering telemetry.max.bytes reduces the worst-case decompressed size proportionally and is a partial mitigation.

Resolution:

  • From Apache Kafka 4.2.2, 4.3.1, and 4.4.0: ClientTelemetryUtils.decompress() enforces a maximum decompressed size equal to telemetry.max.bytes (default 1 MB). Decompression reads in bounded chunks and aborts with a TelemetryTooLargeException once the decompressed total exceeds the limit, so an over-large or highly compressible payload is rejected instead of being fully expanded in heap. The decompressed size is therefore bounded by default.

Threat Intelligence Overview

Prevalence
High
Apache Kafka is widely-deployed enterprise streaming infrastructure across many organizations
Data Quality
1 sources
Confidence: Low

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

CVE-2026-33557 CRITICAL
9.1 Apr 20

Apache Kafka 4.1.0 and 4.1.1 accept forged JWT tokens without signature validation, allowing remote unauthenticated atta

CVE-2026-33558 MEDIUM
5.3 Apr 20

Apache Kafka's NetworkClient component logs entire request and response payloads at DEBUG level, exposing sensitive auth

CVE-2026-41115 MEDIUM
4.3 Jun 02

Improper authorization in Apache Kafka 4.0.0-4.3.0 arises from a discrepancy between the documented ACL requirement and

CVE-2026-114349 HIGH
Oct 28

Memory exhaustion in the Apache Kafka broker lets an authenticated principal holding Write permission on a topic submit

CVE-2026-112375 HIGH
Oct 28

Apache Kafka brokers that have an authorizer enabled will read a file or environment variable from the broker host and r

CVE-2026-116593 MEDIUM
Oct 28

Kafka Connect workers leak plaintext secrets through the REST API's /connector-plugins/{connector-type}/config/validate

CVE-2026-115644 LOW
Oct 28

Authentication bypass in Apache Kafka Connect's isolated admin REST API allows unauthenticated network attackers to read

CVE-2026-111551 HIGH
Oct 28

Network-reachable, unauthenticated deserialization flaws in Apache Kafka’s clients library and Kafka Streams can force m

CVE-2026-111496 LOW
Oct 28

Kafka Streams can be stalled indefinitely by a single record whose timestamp is at or near Long.MAX_VALUE, causing an in

CVE-2026-111115 HIGH
Oct 28

Unauthenticated remote attackers can exhaust broker heap and trigger process-wide GC stalls on Apache Kafka by declaring

CVE-2026-111108 HIGH
Oct 28

Heap exhaustion in Apache Kafka allows remote attackers to crash brokers by sending requests that declare an array eleme

CVE-2026-110985 HIGH
Oct 28

Apache Kafka brokers that run SASL/OAUTHBEARER with the default DefaultJwtValidator and leave sasl.oauthbearer.jwks.endp

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy