Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-88052— Tesseract: Heap out-of-bounds write in UNICHARSET::load_via_fgets via count/insert desynchronization

Quick assessment

Affected
tesseract-ocr tesseract
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Tesseract 是一款开源的光学字符识别(OCR)引擎。在 5.5.3 及更早版本中, 中的 函数将声明的 unichar 数量作为循环边界,并将 作为未检查的索引直接用于 向量。 当遇到空字符串、重复项或已可编码的表示时, 可能不会改变该向量,这可能导致 的值超过 。随后,在默认 LSTM 引擎和传统引擎的初始化过程中,后续的 调用以及向 的写入操作会在向量之外写入 ,从而导致堆内存损坏、程序崩溃,甚至可能导致可控的内存破坏。 截至本次安全审查时,尚未发布包含修复的版本。

CVSS 7.8 · High

Possible ATT&CK Techniques 1 AI

T1202 · Indirect Command Execution
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-88052

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Tesseract: Heap out-of-bounds write in UNICHARSET::load_via_fgets via count/insert desynchronization
Source: CVE Program / CVE List V5
Vulnerability Description
Tesseract is an open source OCR engine. In version 5.5.3 and earlier, UNICHARSET::load_via_fgets in src/ccutil/unicharset.cpp trusts the declared unichar count as a loop bound and uses id as an unchecked index into the unichars vector. unichar_insert_backwards_compatible can leave the vector unchanged for an empty, duplicate, or already-encodable representation, causing id to become larger than unichars.size(). Subsequent set_* calls and the write to unichars[id].properties.enabled then write UNICHAR_PROPERTIES beyond the vector during initialization in both the default LSTM and legacy engines, causing heap corruption, a crash, or potentially controlled corruption. No fixed release is available as of this review.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
对数组索引的验证不恰当
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
tesseract-ocr tesseract <= 5.5.3 -

II. Public POCs for CVE-2026-88052

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-88052

登录查看更多情报信息。

Patches & Fixes for CVE-2026-88052 (1)

Vendor Advisories for CVE-2026-88052 (1)

Same Patch Batch · tesseract-ocr · 2026-09-10 · 8 CVEs total

CVE-2026-88049 8.6 HIGH Tesseract: Heap out-of-bounds write in LSTM::Forward via na_/gate-matrix dimension mismatc
CVE-2026-88048 8.6 HIGH Tesseract: Heap out-of-bounds write/read in FullyConnected::Forward via layer/weight-matri
CVE-2026-88047 8.6 HIGH Tesseract: ReadNormProtos stack buffer overflow
CVE-2026-88051 8.6 HIGH Tesseract: Heap out-of-bounds write in GenericVector<T>::read due to independent reserved/
CVE-2026-88053 8.6 HIGH Tesseract: Heap out-of-bounds write in Classify::ReadIntTemplates via unvalidated counts i
CVE-2026-88050 6.9 MEDIUM Tesseract: Out-of-bounds write in UnicharCompress via unvalidated recoder code values
CVE-2026-88054 6.9 MEDIUM Tesseract: Denial of service via empty-stack dereference in Plumbing/Series at model load

IV. Related Vulnerabilities

V. Comments for CVE-2026-88052

No comments yet


Leave a comment