CVE-2026-88048
Received Received - Intake

Tesseract OCR Heap Out-of-Bounds Write in LSTM Layer

Vulnerability report for CVE-2026-88048, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-09-10

Last updated on: 2026-09-10

Assigner: GitHub, Inc.

Description

Tesseract is an open source OCR engine. In version 5.5.3 and earlier, FullyConnected::DeSerialize in src/lstm/fullyconnected.cpp does not validate the deserialized layer scalars ni_ and no_ against the weight-matrix dimensions. During FullyConnected::Forward, MatrixDotVector in src/lstm/weightmatrix.cpp writes w.dim1() results into temp_line, which is sized from no_, and reads w.dim2() minus one inputs from curr_input, which is sized from ni_. A crafted .traineddata NT_SOFTMAX layer can therefore use inconsistent dimensions to cause a heap out-of-bounds write and read on the default LSTM engine, resulting in heap corruption, a crash, information disclosure, or potentially controlled corruption. No fixed release is available as of this review.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-09-10
Last Modified
2026-09-10
Generated
2026-09-10
AI Q&A
2026-09-10
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 2 associated CPEs
Vendor Product Version / Range
tesseract_ocr tesseract to 5.5.4 (exc)
google tesseract to 5.5.3 (exc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-787 The product writes data past the end, or before the beginning, of the intended buffer.
CWE-125 The product reads data past the end, or before the beginning, of the intended buffer.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

CVE-2026-88048 is a heap out-of-bounds write and read vulnerability in the Tesseract OCR engine affecting versions 5.5.3 and earlier. It occurs in the FullyConnected::Forward function due to unvalidated layer scalars ni_ and no_ against weight matrix dimensions during deserialization. A crafted .traineddata file with mismatched dimensions can trigger heap corruption, crashes, or information disclosure.

Detection Guidance

This vulnerability is specific to the Tesseract OCR engine and requires examining the .traineddata files used by the system. Check for files with mismatched dimensions in the FullyConnected layer by inspecting the weight matrix and layer scalars (ni_ and no_). No direct network or system commands detect this without code analysis.

Impact Analysis

This vulnerability can lead to heap corruption, application crashes, information disclosure, or controlled memory corruption. Attackers could exploit it by providing a specially crafted .traineddata file, potentially compromising confidentiality, integrity, and availability of affected systems.

Mitigation Strategies

Immediately stop using any .traineddata files from untrusted sources. Only use traineddata files from official Tesseract repositories or trusted providers. Monitor for crashes or memory corruption during OCR processing as potential indicators of exploitation.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-88048. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart