CVE-2026-88047
Tesseract is an open source OCR engine. In version 5.5.3 and earlier, Classify::ReadNormProtos in src/classify/normmatch.cpp parses the NORMPROTO component of a .traineddata file and uses std::istream::operator>>(char*) to extract a whitespace-delimited token into a fixed 61-byte stack buffer without setting a stream width. The 100-byte line buffer can carry a token of up to 99 characters, so a token longer than 60 characters writes up to 39 attacker-controlled bytes past the buffer during TessBaseAPI::Init of the legacy engine, causing stack corruption, denial of service, and potentially control-flow hijacking on affected standard-library implementations. Builds using Apple's libc++ C++20 bounded array overload are incidentally protected, while typical libstdc++ builds remain affected. No fixed release is available as of this review.
Properties
- severity
- HIGH
- score
- 7.8
- cve_id
- CVE-2026-88047
- signal_observed_at
- 2026-09-18T13:45:43+00:00
- vector
- CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- published_at
- 2026-09-10T17:17:08.817
- last_modified
- 2026-09-14T20:01:21.213
Related Entities (3)
HAS_WEAKNESS (1)
DESCRIBED_BY (1)
AFFECTS_PRODUCT (1)
Explore deeper with Ninja Signal's threat intelligence graph