Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend crafted Thrift RPC request
-
DeliveryTrigger deserialization in c_glib binding
-
ExploitMismatched memory free operation
-
ExecutionServer crash with invalid pointer error
-
ImpactDenial of service
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory management consistency
|
| Exploitation Conditions | Requires Apache Thrift server implementation using c_glib language bindings specifically. Servers using Java, Python, C++, Go, Node.js, or other Thrift language bindings are NOT vulnerable. Target server must accept network connections (AV:N) from attacker. No authentication required (PR:N) - publicly accessible c_glib Thrift endpoints are directly exploitable. No user interaction needed (UI:N) - purely server-side vulnerability. Default configurations of vulnerable c_glib Thrift servers are exploitable without special setup. Attack is limited by targeting c_glib binding usage, which represents a subset of total Apache Thrift deployments - many organizations use Java or Python bindings instead, naturally limiting exposure scope. |
| Impact | CVSS 7.5 indicates high severity with network-accessible attack vector (AV:N), low complexity (AC:L), no privileges required (PR:N), and no user interaction (UI:N), suggesting easy remote exploitation. However, real-world risk signals paint a different picture. EPSS score of 0.02% (4th percentile) suggests extremely low probability of exploitation in the wild, indicating this is not being actively targeted despite theoretical ease. Not present in CISA KEV, confirming no known active exploitation. Impact is limited to availability (A:H) with no confidentiality or integrity impact (C:N/I:N), making this purely a denial-of-service issue. The vulnerability only affects systems using the c_glib language bindings specifically - Python, Java, C++, and other language bindings are not vulnerable. SSVC assessment: exploitation status is none, automatable (network/low complexity), technical impact is partial (DoS only). Prioritize mitigation for production c_glib Thrift servers exposed to untrusted networks; lower priority for internal-only or non-c_glib deployments. The disparity between CVSS severity and EPSS probability suggests this is a valid but not urgent patch unless running exposed c_glib Thrift services. |
| Exploit ScenarioDerived | Remote attacker crafts malicious Thrift RPC requests with payloads designed to trigger memory management mismatches in c_glib deserialization routines. Upon receipt, the vulnerable Thrift server attempts to free memory using an incompatible deallocation function, causing glibc to detect the invalid pointer and terminate the process with 'free(): invalid pointer' error. The server crashes immediately, denying service to legitimate users. Attacker can repeat requests to sustain denial of service. No public POC identified at time of analysis, but CVSS AC:L indicates straightforward exploitation once request structure is understood. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 28, 2026
Remote unauthenticated denial of service in Apache Thrift c_glib language bindings (versions before 0.23.0) allows attackers to crash Thrift servers via specially crafted requests triggering 'free(): invalid pointer' fatal errors. CVSS 7.5 (HIGH) with network vector and low complexity. EPSS score is only 0.02% (4th percentile), indicating very low real-world exploitation probability despite theoretical severity. No active exploitation confirmed (not in CISA KEV); no public POC identified at time of analysis. Vendor-released patch: Apache Thrift 0.23.0.
RemediationAI
Upgrade to Apache Thrift version 0.23.0 or later, which contains the fix for mismatched memory management in c_glib bindings. Download from official Apache Thrift releases and verify checksums. Full vendor advisory with upgrade instructions available at https://lists.apache.org/thread/lb4j0zyd5f3g36cos0wql925przpnwql. If immediate upgrade is not feasible, implement network-level compensating controls: deploy rate limiting on Thrift endpoints to mitigate DoS impact (reduces attacker's ability to sustain crashes but does not prevent individual crashes); restrict Thrift server access to trusted networks only via firewall rules (eliminates remote attack vector but breaks internet-facing services); deploy monitoring for 'free(): invalid pointer' crashes with automatic service restart (maintains availability but does not prevent exploitation). Workaround trade-offs: rate limiting may impact legitimate high-volume clients; network restrictions require VPN/allowlist management overhead; auto-restart creates brief service interruptions and may mask ongoing attacks. Migration to a non-c_glib language binding (if application architecture permits) provides complete mitigation but requires code refactoring.
Affected VersionsENISA
Affected Packages
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 for scalable services. The c_glib language bindings provide GLib-based C implementations for Thrift servers. This vulnerability stems from CWE-762 (Mismatched Memory Management Routines), where memory allocated via one method is freed using an incompatible function. The specific CPE (cpe:2.3:a:apache_software_foundation:apache_thrift) identifies all Apache Thrift versions prior to 0.23.0 when using c_glib bindings. The memory mismatch causes invalid pointer dereferences during request processing, resulting in clean but fatal crashes with glibc's memory corruption detection triggering 'free(): invalid pointer' errors.
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
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Primary rating from Vendor (apache).
CVSS VectorVendor: apache
Lifecycle Timeline
4DescriptionCVE.org
Mismatched Memory Management Routines vulnerability in Apache Thrift c_glib language bindings.
This issue affects Apache Thrift: before 0.23.0.
Users are recommended to upgrade to version 0.23.0, which fixes the issue.
Description: Specially crafted requests can crash an c_glib-based Thrift server with a clean but fatal "free(): invalid pointer" error message.
Executive ViewAI
Apache Thrift c_glib language bindings versions before 0.23.0 are vulnerable to unauthenticated remote denial of service attacks that can crash Thrift servers. Organizations using affected versions face service availability risk, though real-world exploitation probability remains low (EPSS 0.02%). Immediate patching is recommended to eliminate the attack vector.
Apply vendor patch. If immediate patching is constrained: (1) implement network-level access controls restricting Thrift service exposure to trusted networks only; (2) deploy rate limiting and connection throttling at the network edge to mitigate denial of service attempts; (3) monitor for abnormal request patterns and service crashes as interim detection.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
More in Apache Thrift
View allHeap-based buffer overflow in the C++ THeaderTransport of Apache Thrift before 0.25.0 lets a remote, unauthenticated att
Heap-based memory corruption in Apache Thrift versions before 0.25.0 lets unauthenticated remote attackers who can send
Denial of service in Apache Thrift deployments that use the D language bindings before version 0.25.0, where malformed i
Denial of service in the Apache Thrift Node.js bindings (all versions before 0.25.0) lets remote, unauthenticated attack
Remote denial of service against Apache Thrift C++ deployments that use the THeaderProtocol is achievable by sending a c
Remote, unauthenticated attackers can crash applications built against Apache Thrift's c_glib (C/GLib) language bindings
Denial of service in Apache Thrift's c_glib (C/GLib) language bindings before 0.25.0, where a crafted or malformed messa
Denial of service in Apache Thrift's Go bindings (all versions before 0.25.0) allows an unauthenticated remote peer to c
Memory exhaustion in Apache Thrift's Node.js and D language WebSocket server transports (all versions before 0.25.0) let
Uncaught exception handling in the Apache Thrift Ruby bindings lets unauthenticated remote attackers crash network-reach
Inefficient algorithmic complexity (CWE-407) in Apache Thrift's Lua bindings prior to version 0.25.0 allows remote, unau
Unauthenticated remote attackers can crash applications that use the Apache Thrift PHP bindings prior to version 0.25.0
EUVD-2025-209581
NVD
CVE.org
EPSS
Vulnrichment
VulDB
GitHub PoC
Exploit-DB