Stack-based Buffer Overflow Affecting tesseract package, versions <4.00~git2288-10f4998a-2ubuntu0.1~esm1


Severity

Recommended
medium

Based on Ubuntu security rating.

Threat Intelligence

EPSS
0.12% (2nd percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-UBUNTU1804-TESSERACT-19685032
  • published25 Sept 2026
  • disclosed10 Sept 2026

Introduced: 10 Sep 2026

NewCVE-2026-88047  (opens in a new tab)
CWE-121  (opens in a new tab)

How to fix?

Upgrade Ubuntu:18.04 tesseract to version 4.00git2288-10f4998a-2ubuntu0.1esm1 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream tesseract package and not the tesseract package as distributed by Ubuntu. See How to fix? for Ubuntu:18.04 relevant fixed versions and status.

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.

CVSS Base Scores

version 3.1