Bug 2531566 (CVE-2026-88051) - CVE-2026-88051 tesseract: Tesseract: Heap out-of-bounds write via crafted .traineddata model
Summary: CVE-2026-88051 tesseract: Tesseract: Heap out-of-bounds write via crafted .tr...
Keywords:
Status: NEW
Alias: CVE-2026-88051
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
high
high
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On: 2531777
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-09-10 17:41 UTC by OSIDB Bzimport
Modified: 2026-09-11 07:40 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-09-10 17:41:19 UTC
Tesseract is an open source OCR engine. In version 5.5.3 and earlier, the callback form of GenericVector::read in src/ccutil/genericvector.h reads the independent int32 fields reserved and size_used_ from a .traineddata model without a cap or an invariant check. reserve(reserved) allocates the backing array, but the callback loop writes size_used_ elements. A crafted TESSDATA_INTTEMP component with version_id 4 or later can therefore set reserved to a small value and size_used_ to a large value when fontinfo_table_.read(fp, read_info) is called from src/classify/intproto.cpp, causing a heap out-of-bounds write of FontInfo structures, heap corruption, a crash, or potentially controlled corruption. No fixed release is available as of this review.


Note You need to log in before you can comment on or make changes to this bug.