Apache Thrift Java library can be made to recurse without limit
A data-parsing library used by some Java programs can be tricked into going around in an endless loop while reading malicious input, which can freeze or crash the program. Upgrading the library fixes it.
| Severity | HighCVSS 8.2 of 10 |
|---|---|
| Being exploited? | UnclearNo reports either way yet |
| Fix available? | Yes0.24.0 · since 31 Oct 2026 |
| How sure is this? | Official, 2 sourcesBacked by an official source |
How the attack works simplified
- 1Attacker sends crafted dataDeeply nested Thrift payload sent to service
- 2Request reaches serviceThrift endpoint accepts the input
- 3skip() recurses without limitNo default depth limit in TProtocolUtil.skip()
- 4Service stalls or crashesResources exhausted by recursion
- ResultJava service becomes unavailable
What happened
Apache Thrift Java bindings: TProtocolUtil.skip() does not limit recursion depth by default, leading to uncontrolled recursion (CWE-674-style denial of service); CVSS 4.0 8.2 (high), with impact on availability only.
Are you affected?
You are affected if your Java application uses org.apache.thrift:libthrift older than 0.24.0 and calls TProtocolUtil.skip() on data from untrusted sources.
org.apache.thrift:libthrift (Java bindings) before 0.24.0
What to do
- Upgrade org.apache.thrift:libthrift to version 0.24.0 or later
- Rebuild and redeploy Java services that depend on libthrift
- Limit input size and rate on Thrift endpoints exposed to untrusted clients until upgraded
Timeline
- 31 Oct 2026, 01:44 UTCPublicly disclosed
- 31 Oct 2026, 01:44 UTCReported by oss-security · oss-security
- 31 Oct 2026, 01:45 UTCPicked up by Zero Radar
- 31 Oct 2026, 21:19 UTCNVD reported on it · NVD
Sources 2 reports, oldest first
Official vendor, government CERT or advisory database
- CVE-2026-120135NVD · 31 Oct 2026, 21:16 UTC
Security researchers research teams and mailing lists
- CVE-2026-120135: Apache Thrift: Java TProtocolUtil.skip() does not limit the recursion depth by defaultoss-security · 31 Oct 2026, 01:44 UTC
Technical details
- ID
- CVE-2026-120135
- CVSS
- 8.2 / 10
- Disclosed
- 31 Oct 2026, 01:44 UTC
- On Zero Radar
- 31 Oct 2026, 01:45 UTC (1 min after disclosure)
- Last change
- 31 Oct 2026, 21:19 UTC
The plain-language parts and the attack diagram were written by an AI model (claude-haiku-5-5) from the sources above. Facts like versions, exploitation and dates come from the sources themselves. How Zero Radar works