CVE-2026-88047

EUVD-2026-75590
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.
ProviderTypeBase ScoreAtk. VectorAtk. ComplexityPriv. RequiredVector
NISTPrimary
7.8 HIGH
LOCAL
LOW
LOW
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Base Score
CVSS 3.x
EPSS Score
Percentile: 1.49%
Affected Products (NVD)
VendorProductVersion
tesseract-ocrtesseract_ocr
𝑥
≤ 5.5.3
𝑥
= Vulnerable software versions
Debian logo
Debian Releases
Debian Product
Codename
tesseract
bookworm
vulnerable
forky
vulnerable
sid
vulnerable
trixie
no-dsa
Ubuntu logo
Ubuntu Releases
Ubuntu Product
Codename
tesseract
bionic
Fixed 4.00~git2288-10f4998a-2ubuntu0.1~esm1
released
focal
Fixed 4.1.1-2ubuntu0.1~esm1
released
jammy
Fixed 4.1.1-2.1ubuntu0.1~esm1
released
noble
Fixed 5.3.4-1ubuntu0.1~esm1
released
resolute
Fixed 5.5.0-1ubuntu0.1~esm1
released
trusty
Fixed 3.03.02-3ubuntu0.1~esm1
released
xenial
Fixed 3.04.01-4ubuntu0.1~esm1
released