Buffer overflow in Tesseract-Ocr Tesseract
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.
Vulnerability class: Buffer Overflow
Published · last modified .
CVSS v3 metric
CVSS v3 base score 7.8 (High). Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.
EPSS exploit prediction
EPSS: 0.001 (1.6th percentile), scored .
Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 2nd percentile — 1.6% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.
EPSS over last 30 days · oldest: 0.002 · newest: 0.001 · change: -0.001
Affected products
- Tesseract-Ocr Tesseract — versions <= 5.5.3
- Tesseract-Ocr Tesseract Ocr
Weakness classification (CWE)
References
Frequently asked questions
- What is CVE-2026-88047?
- CVE-2026-88047 is a high-severity vulnerability in Tesseract-Ocr Tesseract, classified under Stack-based Buffer Overflow. CVSS score: 7.8/10. Published 2026-09-10.
- How severe is CVE-2026-88047?
- High severity. CVSS v3 base score is 7.8 out of 10.