Skip to main content

Apache Thrift EUVDEUVD-2026-91560

| CVE-2026-94636 HIGH
Improper Handling of Highly Compressed Data (Data Amplification) (CWE-409)
2026-10-02 apache GHSA-25j2-4rc9-8hj6
8.2
CVSS 4.0 · Vendor: apache
View

Attack ChainAIDerived

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

  1. Access
    Reach network-exposed Thrift Python endpoint
  2. Delivery
    Craft highly compressed/amplified payload
  3. Exploit
    Submit request triggering decompression
  4. Execution
    Memory/CPU exhaustion in py bindings
  5. Impact
    Service denial of service

Vulnerability Assessment

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

Exploitation requires a service that uses the Apache Thrift Python bindings (version before 0.25.0) and accepts externally supplied Thrift data that is decompressed or size-expanded during parsing; the AT:P metric reflects that the attacker needs the target to process such compressed/amplified input. No authentication is required (PR:N) and no user interaction (UI:N). Limiting factors: only services actually exposing a Thrift Python endpoint to untrusted input are affected, impact is confined to availability (no data disclosure or code execution), and upgrading to 0.25.0 removes the condition entirely.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N) with score 8.2 describes a network-reachable, unauthenticated, low-complexity flaw whose only impact is availability (VA:H; VC:N/VI:N/VA:H), consistent with CWE-409 data-amplification (decompression/entity-expansion bomb) in the Apache Thrift Python bindings. The AT:P (attack requirements present) metric indicates exploitation is not fully unconditional - the target endpoint must accept and decompress attacker-supplied data - which tempers the otherwise high exposure. No EPSS score, CISA KEV listing, or public POC was provided in the input, so there is no evidence of active exploitation or weaponization: this reads as a genuine but availability-only DoS priority rather than a confirmed in-the-wild threat. One tagging inconsistency should be noted explicitly: the input carries an 'Information Disclosure' tag, yet the CVSS vector sets VC:N/VI:N and only VA:H, meaning this is a denial-of-service/availability issue with no confidentiality impact - the tag appears mislabeled and should not drive triage toward data-exposure concerns.

Exploit ScenarioDerived

An attacker sends a small but highly compressed or deeply nested payload (a 'bomb') to a network-exposed service built on the Apache Thrift Python bindings; when the library decompresses or expands the input without validating the declared size/quantity, memory and CPU are exhausted and the service becomes unavailable. Because the endpoint is reachable over the network without authentication, a single malicious request can degrade or crash the service. No public exploit code was identified at the time of analysis.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.4% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 02, 2026

Denial of service in Apache Thrift's Python bindings before 0.25.0 arises from improper handling of highly compressed data (CWE-409), letting a remote, unauthenticated attacker send a small compressed Thrift payload that expands dramatically during parsing and exhausts server memory or CPU. Exploitation requires a service that accepts externally supplied Thrift data and decompresses or size-expands it, and the impact is confined to availability with no data disclosure or code execution. No public exploit code has been identified at time of analysis, and upgrading to 0.25.0 eliminates the vulnerability.

RemediationAI

Upgrade to Apache Thrift 0.25.0, which is the vendor-released patch for CVE-2026-94636 and fully removes the vulnerability. If immediate upgrade is not possible, avoid accepting compressed Thrift payloads from untrusted sources where the application allows disabling decompression or size expansion; enforce strict memory and CPU quotas (e.g., container memory limits or process rlimits) on any service that parses Thrift data, and restrict network access to Thrift Python endpoints to trusted clients using firewall rules or network segmentation. These compensating controls have trade-offs: disabling decompression may break legitimate compressed payloads, and resource limits can still be bypassed if set too high, so they should be treated as temporary mitigations. See the vendor advisories at https://lists.apache.org/thread/33otcgbqd27wf6qq810q56znzbomnhg1 and https://lists.apache.org/thread/1rpq0d0g6yzjjzl1z27lwmvhzkn6rbrs for additional guidance.

Affected VersionsENISA

Apache Thrift 0 <0.25.0

Affected Packages

euvd apache_thrift fix: 0.25.0

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

Apache Thrift is a cross-language remote procedure call (RPC) framework, and the affected component is its Python bindings. The root cause is CWE-409 (Improper Handling of Highly Compressed Data / Data Amplification), combined with a function call that receives incorrectly specified arguments and an improperly validated quantity field in the input. This means the Python parsing code fails to bound a size or length value before decompression or expansion, so a maliciously compressed or self-referential payload can inflate to consume far more resources than the input size suggests-a classic decompression bomb. The CPE cpe:2.3:a:apache_software_foundation:apache_thrift:*:*:*:*:*:*:*:* confirms that all versions of Apache Thrift are in scope, but the flaw specifically resides in the Python bindings before version 0.25.0. The CVSS 4.0 vector's AT:P metric reflects that the attacker must induce the target to process compressed or amplified input; no privileges or user interaction are needed (PR:N/UI:N), and only availability is impacted.

Know when Apache Thrift 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 8.2 HIGH
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.5 HIGH

Network-reachable, unauthenticated, low-complexity data-amplification DoS; impact is availability only (A:H) with no confidentiality or integrity effect.

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

Primary rating from Vendor (apache).

CVSS VectorVendor: apache

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 02, 2026 - 13:02 EUVD
CVE Published
Oct 02, 2026 - 11:47 cve.org
HIGH 8.2

DescriptionCVE.org

Improper handling of highly compressed data (data amplification), Function call with incorrectly specified arguments, Improper validation of specified quantity in input vulnerability in Apache Thrift py bindings.

This issue affects Apache Thrift: before 0.25.0.

Users are recommended to upgrade to version 0.25.0, which fixes the issue.

Executive ViewAI

Why It Matters

Apache Thrift's Python bindings in all releases before 0.25.0 contain a high-severity availability flaw: a remote sender can submit a small compressed Thrift payload that expands dramatically during parsing and exhausts server memory or CPU on any service accepting externally supplied Thrift data. Organizations running Thrift-based Python services that are reachable from partners, customers, or the public internet are the ones materially exposed, while internal-only deployments carry lower risk. Because no vendor-released patch is available at this time, leadership should treat this as an operational resilience issue - there is no evidence of data disclosure, code execution, or public exploit code - and prioritize traffic-size limits, resource caps, and monitoring over incident response.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis; interim mitigations include strict request payload size limits and decompression-ratio caps at the edge, disabling automatic expansion of externally supplied Thrift data, per-client rate limiting, container memory and CPU quotas with automatic restart, network restriction of exposed Thrift services, and alerting on OOM kills and CPU saturation. Upgrade to Apache Thrift 0.25.0 when released.

Threat Intelligence Overview

EPSS Score
0.4%
Top 65% exploitable
Prevalence
Medium
popular RPC/serialization framework, but Python bindings are a subset
Data Quality
5 sources
Confidence: Medium

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 HIGH
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

41
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +41
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0
CVE-2026-91135 CRITICAL
9.2 Oct 02

Heap-based buffer overflow in the C++ THeaderTransport of Apache Thrift before 0.25.0 lets a remote, unauthenticated att

CVE-2026-83632 CRITICAL
9.2 Oct 02

Heap-based memory corruption in Apache Thrift versions before 0.25.0 lets unauthenticated remote attackers who can send

CVE-2026-86537 HIGH
8.7 Oct 02

Denial of service in Apache Thrift deployments that use the D language bindings before version 0.25.0, where malformed i

CVE-2026-94646 HIGH
8.7 Oct 02

Denial of service in the Apache Thrift Node.js bindings (all versions before 0.25.0) lets remote, unauthenticated attack

CVE-2026-93925 HIGH
8.7 Oct 02

Remote denial of service against Apache Thrift C++ deployments that use the THeaderProtocol is achievable by sending a c

CVE-2026-66081 HIGH
8.7 Oct 02

Remote, unauthenticated attackers can crash applications built against Apache Thrift's c_glib (C/GLib) language bindings

CVE-2026-66859 HIGH
8.7 Oct 02

Denial of service in Apache Thrift's c_glib (C/GLib) language bindings before 0.25.0, where a crafted or malformed messa

CVE-2026-83663 HIGH
8.7 Oct 02

Denial of service in Apache Thrift's Go bindings (all versions before 0.25.0) allows an unauthenticated remote peer to c

CVE-2026-83745 HIGH
8.7 Oct 02

Memory exhaustion in Apache Thrift's Node.js and D language WebSocket server transports (all versions before 0.25.0) let

CVE-2026-96277 HIGH
8.7 Oct 02

Uncaught exception handling in the Apache Thrift Ruby bindings lets unauthenticated remote attackers crash network-reach

CVE-2026-94658 HIGH
8.7 Oct 02

Inefficient algorithmic complexity (CWE-407) in Apache Thrift's Lua bindings prior to version 0.25.0 allows remote, unau

CVE-2026-87117 HIGH
8.7 Oct 02

Unauthenticated remote attackers can crash applications that use the Apache Thrift PHP bindings prior to version 0.25.0

Vendor StatusVendor

SUSE

Severity: Important

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