Read the docs
TI-2026-60067 Aliases CVE-2026-88047

Tesseract: ReadNormProtos stack buffer overflow

Priority LOW 38CWE-121Published · Updated

Key facts

Attack vector
Local
Privileges required
None
User interaction
None
Attack complexity
Low
Attack requirements
None
Impact type
Code execution
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and Red Hat. Impact type from CWE-121 and the CVSS impact.

Summary

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.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00115 1st percentileScored 2026-11-07
Fix Fixed Red Hat: 3 advisories

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
tesseract-ocrtesseractup to 5.5.3—No fix listedCNA
  • tesseract Vendortesseract-ocr Affected up to 5.5.3 Fixed in — No fix listed CNA

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:tesseract-ocr:tesseract_ocr:*:*:*:*:*:*:*:*up to 5.5.3Vulnerabletesseract-ocr
  • cpe:2.3:a:tesseract-ocr:tesseract_ocr:*:*:*:*:*:*:*:* Versions up to 5.5.3 Vulnerable ·tesseract-ocr

Remediation

Red Hat 3 advisories

  • RHSA-2026:95725 Released 2026-11-05 · Red Hat rating Important
    tesseract security update
    • Red Hat Enterprise Linux AppStream (v. 8) tesseract-4.1.1-7.el8_10
    • Red Hat Enterprise Linux CRB (v. 8) tesseract-devel-4.1.1-7.el8_10
  • RHSA-2026:95086 Released 2026-11-04 · Red Hat rating Important
    tesseract security update
    • Red Hat Enterprise Linux AppStream (v. 9) tesseract-4.1.1-11.el9_8
    • Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) tesseract-devel-4.1.1-11.el9_8
  • RHSA-2026:95085 Released 2026-11-04 · Red Hat rating Important
    tesseract security update
    • Red Hat Enterprise Linux AppStream (v. 10) tesseract-5.3.4-11.el10_2
    • Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) tesseract-devel-5.3.4-11.el10_2

Vendor assessments

Red Hat

Red Hat rating: Important. Red Hat's page for this CVE →

ProductStatusPlan or fix
Red Hat Enterprise Linux AppStream (v. 10)Fixed RHSA-2026:95085
Red Hat Enterprise Linux AppStream (v. 8)Fixed RHSA-2026:95725
Red Hat Enterprise Linux AppStream (v. 9)Fixed RHSA-2026:95086
Red Hat Enterprise Linux CRB (v. 8)Fixed RHSA-2026:95725
Red Hat Enterprise Linux CodeReady Linux Builder (v. 10)Fixed RHSA-2026:95085
Red Hat Enterprise Linux CodeReady Linux Builder (v. 9)Fixed RHSA-2026:95086

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-88047
  2. 2026-11-04 Fix available: RHSA-2026:95085 · Red Hat
  3. 2026-11-04 Fix available: Red Hat Enterprise Linux AppStream (v. 10), Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) · Red Hat
  4. 2026-11-05 Fix available: Red Hat Enterprise Linux AppStream (v. 9), Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) · Red Hat
  5. 2026-11-06 Fix available: RHSA-2026:95086 · Red Hat
  6. 2026-11-06 Fix available: Red Hat Enterprise Linux AppStream (v. 8), Red Hat Enterprise Linux CRB (v. 8) · Red Hat
  7. 2026-11-06 Fix available: RHSA-2026:95725 · Red Hat

References

  • TI-2026-60073 Tesseract: Heap out-of-bounds write in Classify::ReadIntTemplates via unvalidated counts in crafted .traineddata CVSS 4.0HIGH 8.6
  • TI-2026-60071 Tesseract: Heap out-of-bounds write in GenericVector<T>::read due to independent reserved/size_used_ fields CVSS 4.0HIGH 8.6
  • TI-2026-60069 Tesseract: Heap out-of-bounds write in LSTM::Forward via na_/gate-matrix dimension mismatch CVSS 4.0HIGH 8.6
  • TI-2026-60068 Tesseract: Heap out-of-bounds write/read in FullyConnected::Forward via layer/weight-matrix dimension mismatch CVSS 4.0HIGH 8.6
  • TI-2026-60074 Tesseract: Denial of service via empty-stack dereference in Plumbing/Series at model load CVSS 4.0MEDIUM 6.9
  • TI-2026-60070 Tesseract: Out-of-bounds write in UnicharCompress via unvalidated recoder code values CVSS 4.0MEDIUM 6.9
See all 10 →

Sources