Skip to main content

Apache Thrift CVE-2026-82458

| EUVDEUVD-2026-91414 HIGH
Memory Allocation with Excessive Size Value (CWE-789)
2026-10-02 apache GHSA-mh69-79fp-9fhm
8.7
CVSS 4.0 · Vendor: apache
View

Attack ChainAIDerived

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

  1. Access
    Reach exposed Thrift RPC endpoint
  2. Delivery
    Send message declaring oversized length
  3. Exploit
    Deserializer pre-allocates excessive memory
  4. Execution
    Server memory exhausted
  5. Impact
    Service crash / denial of service

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory allocation limits
Exploitation Conditions

Requires a reachable network endpoint running an application built on an affected Apache Thrift binding (Go, netstd, OCaml, Erlang, JavaME, Rust, C++, Java, Kotlin, or D, before 0.25.0) that deserializes attacker-controlled Thrift messages. No authentication, user interaction, or special configuration is needed (AV:N/AC:L/PR:N/UI:N) beyond the service accepting untrusted input. Exploitation is limited to availability impact (crash/memory exhaustion); it does not yield data access or code execution. Practical risk is confined to Thrift services exposed to untrusted or semi-trusted clients - internal-only services behind authenticated boundaries face reduced exposure.

Impact

This is a denial-of-service (resource exhaustion) vulnerability, not a code-execution or data-exposure flaw: the provided CVSS 4.0 vector (CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N, score 8.7 High) shows availability-only impact (VA:H) with no confidentiality or integrity impact (VC:N/VI:N). The vector is favorable to an attacker - network reachable, low complexity, no authentication, no user interaction - meaning any exposed Thrift endpoint that deserializes untrusted input can be targeted remotely by unauthenticated attackers. However, the real-world risk is bounded by the impact type: successful exploitation causes memory exhaustion / crash, not compromise of data or control. No EPSS score was provided, there is no CISA KEV listing, and no public exploit was identified, so there is currently no public exploit identified at time of analysis and no evidence of active exploitation. Note a data conflict: the input Tags label this 'Information Disclosure,' which contradicts the CVSS vector (VC:N - no confidentiality impact); this is a resource-exhaustion/DoS issue (CWE-789), and the tag appears mislabeled. Net assessment: a credible, easily-triggerable DoS that warrants timely patching for internet- or partner-facing Thrift services, but it is an availability concern rather than a critical breach-enabling flaw.

Exploit ScenarioDerived

An attacker sends a crafted Thrift message to an exposed RPC endpoint in which a declared field/collection/string size is set to an excessive value, causing the deserializer to pre-allocate a huge buffer before validating available input. The server exhausts available memory and crashes or becomes unresponsive, denying service to legitimate clients. Because the CVSS vector is AV:N/AC:L/PR:N/UI:N, this requires only network reach to a Thrift listener and no authentication; no public exploit code was identified at 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

Memory exhaustion in Apache Thrift before 0.25.0 lets unauthenticated remote attackers crash services that deserialize attacker-controlled Thrift messages, and the flaw is present across the Go, netstd, OCaml, Erlang, JavaME, Rust, C++, Java, Kotlin, and D language bindings. The supplied CVSS 4.0 vector (8.7 High) and the independent assessment (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H) agree that impact is availability-only: no confidentiality or integrity loss, and no authentication, user interaction, or special configuration is required beyond a reachable endpoint that accepts untrusted Thrift input. No public exploit code was identified at time of analysis and the issue is not confirmed as actively exploited (CISA KEV); the vendor-released fix is version 0.25.0.

RemediationAI

Upgrade to Apache Thrift 0.25.0 as the primary and vendor-recommended fix (vendor-released patch: 0.25.0), covering all affected language bindings, and rebuild any application that statically links or vendors the generated/runtime library rather than assuming a package upgrade alone suffices; see the Apache advisories at https://lists.apache.org/thread/33otcgbqd27wf6qq810q56znzbomnhg1 and https://lists.apache.org/thread/7xqf651pvjykw0xr9vw0ooz0bwx7wzy7 for the official guidance. Where upgrading immediately is not possible, apply compensating controls in this order of practicality: enforce strict maximum message and frame sizes at the transport/configuration layer (for example Thrift TConfiguration maxMessageSize and maxFrameSize settings, or equivalent knobs in your binding) so oversized length prefixes are rejected before allocation, accepting that legitimate large payloads will start failing and will need to be split or the limits tuned per service; cap inbound request body size and connection duration at the fronting reverse proxy or load balancer, which adds latency and may break streaming or long-poll patterns; and isolate exposure by firewall/ACL rules or service-mesh policy so Thrift ports are reachable only from known application tiers, understanding this reduces the attack surface rather than eliminating the bug and will block legitimate cross-network clients if configured too narrowly. Additionally constrain blast radius with per-process memory limits (cgroup v2 memory.max, ulimit -v, or JVM/Go heap caps) and aggressive restart supervision so an OOM-killed worker is replaced without taking down co-located workloads, and monitor for repeated allocation-failure crashes as an indicator of exploitation attempts.

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

The root cause class is CWE-789 (Memory Allocation with Excessive Size Value), reinforced by the description's second classification of allocation of resources without limits or throttling (CWE-770). Apache Thrift is a cross-language RPC and serialization framework whose binary, compact, and JSON protocols frame messages using length prefixes and container/collection sizes embedded in the wire format; deserialization code in the affected bindings reads these attacker-controlled size values and proceeds to allocate buffers or grow collections based on them without adequately validating that the declared size is consistent with the actual remaining message data or with a configured upper bound. An attacker can therefore send a small crafted message declaring a very large size, forcing an oversized heap allocation (or repeated allocations) that triggers OOM kills, allocation failure exceptions, or process crashes. The CPE data identifies the affected component as cpe:2.3:a:apache_software_foundation:apache_thrift (ten near-identical CPE entries corresponding to the ten affected language bindings) across the pre-0.25.0 version range; ENISA EUVD-2026-91414 tracks the same issue as "Apache Thrift 0 <0.25.0". Note that one supplied tag reads "Information Disclosure", but neither the assessed vectors nor the vendor description support confidentiality impact, so that tag should not be treated as evidence of data exposure.

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

Remote, low-complexity, unauthenticated message triggers excessive memory allocation causing DoS, so AV:N/AC:L/PR:N/UI:N with availability-only impact (A:H, C:N/I:N).

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:N/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
Red Hat 7.5 HIGH

Primary rating from Vendor (apache).

CVSS VectorVendor: apache

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
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:30 cve.org
HIGH 8.7

DescriptionCVE.org

Memory allocation with excessive size value, Allocation of resources without limits or throttling vulnerability in Apache Thrift Go, netstd, OCaml, Erlang, JavaME, Rust, C++, Java, Kotlin and D language 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, a widely used cross-language RPC framework, has a high-severity availability flaw that can let unauthenticated remote users crash services deserializing untrusted Thrift messages. The issue affects many language bindings and requires no credentials or user interaction, so any externally reachable or business-critical service on a vulnerable version may experience disruptive outages until upgraded. Leadership should prioritize discovery and remediation to version 0.25.0, especially for internet-facing endpoints.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.4%
Top 65% exploitable
Prevalence
High
widely-used cross-language RPC framework in many backend and microservice stacks
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment MSRC Vendor VulDB

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
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
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