Skip to main content

Apache Thrift CVE-2025-48431

| EUVD-2025-209581 HIGH
Mismatched Memory Management Routines (CWE-762)
2026-04-28 apache
7.5
CVSS 3.1
Share

CVSS VectorNVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

8
Patch released
Apr 28, 2026 - 18:40 nvd
Patch available
Re-analysis Queued
Apr 28, 2026 - 16:37 vuln.today
cvss_changed
Analysis Generated
Apr 28, 2026 - 15:23 vuln.today
CVSS changed
Apr 28, 2026 - 15:22 NVD
7.5 (HIGH)
Patch available
Apr 28, 2026 - 11:01 EUVD
EUVD ID Assigned
Apr 28, 2026 - 10:00 euvd
EUVD-2025-209581
Analysis Generated
Apr 28, 2026 - 10:00 vuln.today
CVE Published
Apr 28, 2026 - 09:11 nvd
HIGH 7.5

DescriptionNVD

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.

AnalysisAI

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.

Technical ContextAI

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.

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.

Share

CVE-2025-48431 vulnerability details – vuln.today

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