Skip to main content

Apache Thrift CVE-2026-96294

| EUVDEUVD-2026-91411 HIGH
Uncaught Exception (CWE-248)
2026-10-02 apache GHSA-q62p-j25r-fc4c
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 Node.js endpoint
  2. Delivery
    Send malformed protocol message
  3. Exploit
    Trigger uncaught exception in bindings
  4. Execution
    Node.js process crashes
  5. Impact
    Service denial for all clients

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Exception handling completeness
Exploitation Conditions

Exploitable against any service that uses the Apache Thrift Node.js bindings at a version before 0.25.0 and accepts Thrift protocol messages over the network; the attacker must be able to reach the Thrift listener and send a crafted/malformed message that triggers the unhandled exception. Per the vendor CVSS vector (PR:N/UI:N/AC:L/AT:N) no authentication, no user interaction, and no special attack prerequisites are required. The principal limiting factor is network exposure: services that only accept Thrift traffic from trusted internal peers or behind authentication/proxy layers face substantially lower real-world risk, and only the Node.js language bindings are affected (other-language Thrift bindings are out of scope).

Impact

All available impact signals point to a denial-of-service vulnerability, not a code-execution or data-exposure flaw. The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H) scores 8.7 but derives its entire weight from VA:H (availability) with VC/VI set to N, which is fully consistent with the CWE-248 (Uncaught Exception) / Improper Handling of Exceptional Conditions root cause: a crafted message can trigger an unhandled exception that crashes the Node.js process. The 'Information Disclosure' tag in the input CONFLICTS with the CVSS vector, which explicitly sets confidentiality impact to none (VC:N) - this tag appears mislabeled and should not be treated as evidence of data exposure. No EPSS score, KEV listing, or POC indicator was provided, so there is no public exploit identified at time of analysis and no evidence of active exploitation. Net assessment: a genuinely network-reachable, unauthenticated, low-complexity DoS in a popular RPC framework is a real patching priority for exposed Thrift/Node services, but it is not a confidentiality/integrity emergency - the high CVSS is driven solely by availability. Because a single unhandled exception in Node.js typically terminates the entire event-loop process, the availability impact rating is credible.

Exploit ScenarioDerived

An attacker sends a malformed or unexpected Thrift protocol message to a network-exposed service built on the Apache Thrift Node.js bindings. The improperly handled exception propagates as an uncaught error, crashing the Node.js process and denying service to all clients. No authentication or user interaction is required, but no public proof-of-concept was provided in the input.

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 Node.js bindings before 0.25.0 allows unauthenticated remote attackers who can reach a Thrift listener to send a crafted or malformed message that triggers an uncaught exception and terminates the Node.js process. The vendor CVSS 4.0 score is 8.7 and the independently assessed CVSS 3.1 vector is AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, so impact is availability-only with no confidentiality or integrity loss. Only the Node.js language bindings are affected; no public exploit identified at time of analysis.

RemediationAI

Upgrade to Apache Thrift 0.25.0, which is the vendor-released fix; advisory details are at https://lists.apache.org/thread/33otcgbqd27wf6qq810q56znzbomnhg1 and https://lists.apache.org/thread/52gwhsy947hj9qhgn0dql726z1q927g4. If immediate upgrade is not possible, restrict network access to the Thrift listener with firewall allowlists or private network segmentation so only trusted peers can send Thrift messages; this reduces exposure but may break legitimate remote clients and requires accurate peer inventory. Alternatively, front the Node.js Thrift service with an authenticating proxy or API gateway that rejects malformed traffic, though such a proxy may not fully understand Thrift framing and adds latency and maintenance overhead. Disabling the Node.js Thrift service or switching to non-affected language bindings eliminates the flaw but changes the application architecture.

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 framework; the affected component is the Node.js bindings that parse Thrift protocol messages. CWE-248 (Improper Handling of Exceptional Conditions) describes the root cause: an uncaught exception during message handling is not trapped by the Node.js binding, so a malformed or crafted network payload can crash the process. The CPE cpe:2.3:a:apache_software_foundation:apache_thrift:*:*:*:*:*:*:*:* identifies the broad Apache Thrift product, while the vendor advisory limits the flaw to Node.js bindings before 0.25.0; other-language Thrift bindings are out of scope. The provided source tags include 'Information Disclosure,' but the CVSS vector and independent assessment support availability-only impact, not 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

Network-reachable, unauthenticated, low-complexity trigger (AV:N/AC:L/PR:N/UI:N); uncaught exception crashes the process yielding A:H with no C/I impact.

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

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:09 cve.org
HIGH 8.7

DescriptionCVE.org

Uncaught exception, Improper Handling of Exceptional Conditions vulnerability in Apache Thrift NodeJS 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

A flaw in the Apache Thrift Node.js bindings allows any unauthenticated party who can reach a Thrift listener to crash the underlying Node.js process by sending a single malformed message. Because no vendor fix is currently available, every internet- or network-exposed service built on these bindings is potentially repeatable-down through simple, low-skill traffic, and teams running Node.js-based Thrift services should treat availability of those services as at risk until mitigations are in place.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict network access to Thrift listeners (segmentation, firewall allowlists, no untrusted exposure); require authentication/encryption via mutual TLS, SASL, or a validating gateway; enforce rate limiting and connection throttling; deploy process supervision with automatic restart and alerting; isolate the affected runtime so a process termination does not cascade to dependent services; monitor for repeated connection churn or crash loops indicative of exploitation attempts.

Threat Intelligence Overview

EPSS Score
0.4%
Top 65% exploitable
Prevalence
Medium
widely-used RPC framework, but only the Node.js bindings subset is affected
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
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

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