Apache Thrift PHP bindings: Resource exhaustion via unbounded TJSON readers
Summary
The PHP bindings of Apache Thrift before 0.25.0 do not limit the size of strings and numbers read by the TJSONProtocol. A remote, unauthenticated attacker can send crafted Thrift JSON input to a PHP service that parses untrusted data, which can exhaust resources and cause a denial of service. Confidentiality and integrity are not affected according to the CVSS vector. Exposure depends on whether a PHP application uses Thrift with the TJSON protocol and accepts input from untrusted sources.
Affected
- Apache Thrift PHP library (apache/thrift on Packagist) before 0.25.0
- Default configuration: unaffected
- Downstream: Azure Linux 3 thrift 0.24.0-1 listed as affected, no fixed version found
Fixed in
- Apache Thrift 0.25.0
- Red Hat Hardened Images: thrift 0.25.0-0.1.hum1
- openSUSE: libthrift-0_25_0-0.25.0-1.1
- Debian and Ubuntu fix status: Unknown.
Workaround
- Upgrading is the primary fix; no vendor-documented workaround is known.
- If upgrading is delayed, limit which clients can send Thrift/TJSON input to the PHP service.
- Enforce request-size limits at the web server or reverse proxy (general hardening, not vendor-documented).
Exploitation
- CISA SSVC: exploitation none, automatable no, technical impact partial.
- CISA KEV: not listed (according to an aggregator).
- EPSS: 0.00426.
- No public proof of concept or exploitation in the wild found.
Our recommendation
- Identify PHP applications that use the Thrift library, for example via Composer lock files.
- Upgrade to Thrift 0.25.0 or a vendor build that includes the fix.
- Prioritise services reachable from the internet or from partners.
- Patch CVE-2026-94638 at the same time, as it has the same fixed version.
- Monitor services for unusual resource consumption.
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- Apache Thrift mailing list thread 1 lists.apache.org
- Apache Thrift mailing list thread 2 lists.apache.org
- Apache Thrift PR 3949 (TJSON max string size) github.com
- OSV BIT-thrift-2026-94644 osv.dev
- Red Hat RHSA-2026:74369 via Vulners vulners.com
- CVE record mirror via Vulners vulners.com
- OSV AZL-106587 (Azure Linux 3) osv.dev
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 1 Nov 2026, 17:24.
Original description (NVD)
Allocation of resources without limits or throttling vulnerability in Apache Thrift PHP bindings. This issue affects Apache Thrift: before 0.25.0. Users are recommended to upgrade to version 0.25.0, which fixes the issue.
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
