CVE-2026-66858 PUBLISHED

Apache Thrift, Apache Thrift, Apache Thrift, Apache Thrift, Apache Thrift, Apache Thrift: skip() does not apply the recursion limit (Python accelerator, PHP, Perl, Lua, Smalltalk, OCaml)

Assigner: apache
Reserved: 27.07.2026 Published: 02.10.2026 Updated: 02.10.2026

The protocol skip routine in several Apache Thrift bindings did not apply the binding's recursion limit, so a message that nests unknown fields deeply enough can exhaust the stack. Affected: the Python C++ accelerator (the pure-Python protocols are not affected), the PHP library and its thrift_protocol extension, and the Perl, Lua, Smalltalk and OCaml libraries.

This issue affects Apache Thrift: before 0.25.0.

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

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
CVSS Score: 8.7

Product Status

Vendor Apache Software Foundation
Product Apache Thrift
Versions Default: unaffected
  • affected from 0 to 0.25.0 (excl.)
Vendor Apache Software Foundation
Product Apache Thrift
Versions Default: unaffected
  • affected from 0 to 0.25.0 (excl.)
Vendor Apache Software Foundation
Product Apache Thrift
Versions Default: unaffected
  • affected from 0 to 0.25.0 (excl.)
Vendor Apache Software Foundation
Product Apache Thrift
Versions Default: unaffected
  • affected from 0 to 0.25.0 (excl.)
Vendor Apache Software Foundation
Product Apache Thrift
Versions Default: unaffected
  • affected from 0 to 0.25.0 (excl.)
Vendor Apache Software Foundation
Product Apache Thrift
Versions Default: unaffected
  • affected from 0 to 0.25.0 (excl.)

Credits

  • Claude (Anthropic Research) finder
  • Arthur Chan, Ada Logics analyst
  • Apache Thrift Developers finder

References

Problem Types

  • CWE-674 Uncontrolled Recursion CWE