CVE-2026-94655

Apache Thrift: Lua `TJsonProtocol` string/number readers have no size bound and are quadratic

Published Oct 2, 2026 CVSS 4.0 · 8.2 High EPSS < 1% KEV · Not listed
Description
Allocation of resources without limits or throttling, Inefficient Algorithmic Complexity vulnerability in Apache Thrift Lua bindings.



This issue affects Apache Thrift: before 0.25.0.



Users are recommended to upgrade to version 0.25.0, which fixes the issue.

Analysis

AI-generated

Technical impact

Apache Thrift Lua bindings have a flaw in the TJsonProtocol string and number readers where no size bound is applied and the complexity is quadratic with respect to the input size. This allows an attacker to craft an input that forces the protocol to allocate memory in a rapidly expanding manner, leading to exhaustion of system resources, crashes, and degradation of service. The vulnerability is rooted in improper resource allocation and unsafely handling of unbounded input data, as identified by CWE-407 and CWE-770.

Affected Systems

The issue affects all deployments of Apache Thrift that use the Lua bindings before version 0.25.0. Specifically, any system that processes JSON data through the TJsonProtocol implementation is vulnerable. Users are advised to verify that they are running Thrift 0.25.0 or newer, which contains the fix for this issue.

Risk and Exploitability

The CVSS score of 8.2 classifies this vulnerability as high severity. While no EPSS score is available and the vulnerability is not listed in the CISA KEV catalog, the lack of bounds presents a clear path for exploitation by sending large JSON inputs over any exposed Thrift endpoint. Such input could trigger quadratic memory usage and lead to a denial of service. The attack vector is inferred to be remote, relying on legitimate access to a Thrift service with the vulnerable bindings.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the vendor patch by upgrading Apache Thrift to version 0.25.0 or later
  • Implement input size limits on JSON payloads to restrict the maximum length of strings and numbers processed by TJsonProtocol
  • Monitor memory usage on services running Thrift and set up alerts or automated restarts to mitigate potential service interruptions caused by excessive memory consumption

Generated by OpenCVE AI on October 2, 2026 at 13:56 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
First Time appeared Apache
Apache thrift
Vendors & Products Apache
Apache thrift
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description Allocation of resources without limits or throttling, Inefficient Algorithmic Complexity vulnerability in Apache Thrift Lua bindings. This issue affects Apache Thrift: before 0.25.0. Users are recommended to upgrade to version 0.25.0, which fixes the issue.
Title Apache Thrift: Lua `TJsonProtocol` string/number readers have no size bound and are quadratic
Weaknesses CWE-407
CWE-770
References
Metrics cvssV4_0

{'score': 8.2, 'vector': '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'}

Weaknesses
  • CWE-407

    Inefficient Algorithmic Complexity

  • CWE-770

    Allocation of Resources Without Limits or Throttling

Sources

Status
PUBLISHED
Assigner
apache
Published
Updated
Oct 2, 2026, 5:21 PM
Reserved
Sep 21, 2026, 11:29 PM
Status
Deferred
Published
Oct 2, 2026, 1:18 PM
Modified
Oct 2, 2026, 6:17 PM