Skip to main content

Apache Thrift EUVDEUVD-2026-91413

| CVE-2026-96288 HIGH
Uncontrolled Recursion (CWE-674)
2026-10-02 apache GHSA-m2hc-xchr-fpq6
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 Thrift service endpoint
  2. Delivery
    Send crafted recursive/oversized message
  3. Exploit
    Trigger unbounded recursion in Erlang parser
  4. Execution
    Exhaust stack/memory resources
  5. Impact
    Crash or hang service (DoS)

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Recursion depth limits
Exploitation Conditions

Exploitation requires that the target run a service using the Apache Thrift Erlang bindings (version before 0.25.0) and accept attacker-reachable Thrift-serialized input over the network; the attacker then sends a maliciously structured message (deeply nested/recursive or otherwise resource-heavy) that the Erlang deserialization code processes without recursion-depth or resource limits. LIMITING FACTORS: the CVSS AT:P metric indicates a required attack condition not fully under the attacker's control (notably, the endpoint must actually parse the untrusted payload), the affected component is specifically the Erlang bindings rather than all Thrift language bindings, and impact is confined to availability (service crash/hang) with no data compromise. No authentication is required (PR:N) and no user interaction is needed (UI:N).

Impact

This is a moderate-priority availability flaw rather than a top-tier emergency. The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N) scoring 8.2 indicates a network-reachable, unauthenticated issue, but the impact metrics are the decisive signal: only VA:H (availability high) with VC:N and VI:N - this is a pure denial-of-service condition (CWE-674 uncontrolled recursion plus allocation of resources without limits/throttling), with no confidentiality or integrity impact. The AT:P (attack requirements present) qualifier signals that successful exploitation depends on a condition beyond the attacker's sole control, which modestly lowers real-world likelihood versus a frictionless AT:N DoS. No EPSS score, KEV listing, or POC was provided in the input, so there is no public exploit identified at time of analysis and no evidence of active exploitation - this is a disclosed-and-patched vendor advisory, not an observed campaign. CONFLICTING SIGNAL: the input Tags include 'Information Disclosure', which directly contradicts both the CWE and the CVSS vector (VC:N = no confidentiality impact); this appears to be a mislabeled tag, and the actual risk is service disruption, not data exposure.

Exploit ScenarioDerived

An attacker sends a specially crafted Thrift message (for example a deeply nested or recursively structured payload) to a service built on the Apache Thrift Erlang bindings. The parser recurses without bound and allocates resources without throttling, exhausting the stack, memory, or scheduler capacity and crashing or hanging the service. No public exploit code was identified in the provided data, and the AT:P qualifier implies the target must be processing attacker-reachable Thrift input under a condition the attacker cannot fully guarantee.

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 Erlang bindings affects all releases before 0.25.0, where unauthenticated remote attackers who can reach a Thrift service that parses untrusted serialized input can send deeply nested or otherwise resource-heavy messages that the Erlang deserialization code processes without recursion-depth or allocation limits. The result is uncontrolled recursion and unbounded resource consumption (CWE-674), leading to service crash or hang - availability impact only, with no confidentiality or integrity loss confirmed. Exploitation requires the specific precondition that the target actually parses the attacker-supplied payload (CVSS 4.0 AT:P), and the flaw is confined to the Erlang bindings rather than all Thrift language bindings, so this is a moderate-priority availability issue rather than a top-tier emergency; no public exploit code has been identified at time of analysis, and the vendor-released fix is Apache Thrift 0.25.0.

RemediationAI

Vendor-released patch: upgrade Apache Thrift to version 0.25.0, which the Apache advisories (https://lists.apache.org/thread/33otcgbqd27wf6qq810q56znzbomnhg1 and https://lists.apache.org/thread/vxnk7cmdtoqjn97b8szlqym1mxx0xtzb) state fixes the uncontrolled recursion in the Erlang bindings; rebuild and redeploy any Erlang-based Thrift service and regenerate Erlang stubs against the 0.25.0 toolchain so the patched decoder is actually in use. Where an immediate upgrade is not possible, compensating controls should target the precondition that the endpoint parses attacker-supplied payloads: block or ACL network access to Erlang Thrift listener ports so only trusted peers can submit serialized messages (trade-off: breaks legitimate cross-network RPC traffic), enforce a message-size ceiling at the transport/front-end proxy layer and reject oversized frames before they reach the decoder (trade-off: legitimate large payloads will be dropped and must be tuned to real workload sizes), isolate the Thrift service in a supervised/crash-restart Erlang application with strict memory and process-heap limits so exhaustion kills only the worker rather than the node (trade-off: repeated crashes cause intermittent availability loss and restart storms), and avoid exposing Erlang-based Thrift endpoints directly to untrusted internet clients. Note that these mitigations reduce exposure but do not remove the underlying unbounded recursion, so upgrading to 0.25.0 remains the only complete fix.

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 RPC and serialization framework that generates language-specific client/server code from an IDL definition. This issue lives in the Erlang bindings (the generated Erlang deserialization logic and the supporting thrift Erlang library), which handle decoding of structured messages such as deeply nested structs, containers, and recursive types. The root cause class is CWE-674 (Uncontrolled Recursion), compounded by allocation of resources without limits or throttling: the decoder recurses into nested containers without enforcing a depth ceiling or a bound on allocation, so a crafted message causes stack growth and/or memory/CPU exhaustion. CPE data identifies the affected component as apache_software_foundation:apache_thrift with all versions before 0.25.0 in scope; the flaw is specific to the Erlang runtime bindings, not to the Thrift protocol or to other language bindings. The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H) and our independent CVSS 3.1 assessment (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H) both characterize this as a network-reachable, unauthenticated, no-user-interaction availability impact with no data compromise; the AT:P metric records that the attacker must have a victim endpoint that actually deserializes the malicious payload for the attack to succeed.

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 parser flaw needing only a crafted message (AV:N/AC:L/PR:N/UI:N); 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 - 12:02 EUVD
CVE Published
Oct 02, 2026 - 11:18 cve.org
HIGH 8.2

DescriptionCVE.org

Uncontrolled Recursion, Allocation of resources without limits or throttling vulnerability in Apache Thrift Erlang 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 Erlang bindings - the runtime layer used by services that accept serialized messages from external callers - can be forced into unbounded recursion and resource exhaustion, causing the affected service to crash or hang. Only availability is at risk: no data disclosure or tampering has been confirmed, and an attacker must be able to reach a service that actually deserializes the supplied payload, which narrows the realistic exposure to externally reachable Erlang-based Thrift endpoints. Leadership should treat this as a service-outage risk rather than a data-breach risk, and note that the vendor has identified Apache Thrift 0.25.0 as the release containing the fix while the feed data still flags no patch as available.

Business Impact: Medium
Compensating Controls

Feed data indicates no vendor-released patch; interim mitigations include restricting network reachability of Thrift Erlang-binding services that parse untrusted serialized input, enforcing message-size and recursion/nesting-depth limits at the proxy or gateway layer before deserialization, disabling the Erlang bindings for externally exposed services where feasible, applying connection and request rate limits, and monitoring for service crash or hang with automated restart. The advisory identifies Apache Thrift 0.25.0 as the release containing the fix - apply vendor patch (upgrade to 0.25.0) as soon as it is available for your deployment.

Threat Intelligence Overview

EPSS Score
0.4%
Top 65% exploitable
Prevalence
Low
Erlang bindings are a niche subset of Apache Thrift deployments
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
Medium
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
Product Status
openSUSE Tumbleweed Fixed

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