Vulnerability Description
Uncontrolled Recursion vulnerability in Apache Thrift go bindings. Both Go transports satisfy a read out of a buffered frame and, when that frame yields no payload bytes, read the next frame and call `Read` again instead of looping. A peer produces such a frame for 4 bytes in `TFramedTransport` (a declared size of zero) or 18 bytes in `THeaderTransport` (a header block that fills the frame), so nothing bounds the depth. The Go stack limit is reached as a `fatal error`, which `recover()` cannot catch, so the whole process dies. This issue affects Apache Thrift: before 0.25.0. Users are recommended to upgrade to version 0.25.0, which fixes the issue.
Related Weaknesses (CWE)
References
- https://lists.apache.org/thread/33otcgbqd27wf6qq810q56znzbomnhg1
- https://lists.apache.org/thread/yjz317wq7h86q9k8ws6ton0ojgl8hjct
FAQ
What is CVE-2026-83663?
CVE-2026-83663 is a documented vulnerability. Uncontrolled Recursion vulnerability in Apache Thrift go bindings. Both Go transports satisfy a read out of a buffered frame and, when that frame yields no payload bytes, read the next frame and ca...
How severe is CVE-2026-83663?
CVSS scoring is not yet available for CVE-2026-83663. Check NVD for updates.
Is there a patch for CVE-2026-83663?
Check the references section above for vendor advisories and patch information. Review vendor security bulletins for remediation guidance.