Description
Tesseract is an open source OCR engine. Prior to 5.5.3, a crafted .traineddata LSTM model component loaded through Tesseract's deserializer can cause an unchecked signed integer multiplication in Convolve::DeSerialize in src/lstm/convolve.cpp to wrap the convolution output-channel count, undersizing the forward-pass output buffer while writes use the unwrapped element count and causing a heap out-of-bounds write during OCR recognition. This issue is fixed in version 5.5.3.
Published: 2026-08-11
Score: 6.8 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Tesseract can deserialize a crafted LSTM .traineddata file that contains an unsanitized signed integer multiplied during Convolve::DeSerialize. This computation incorrectly wraps the convolution output‑channel count, producing an undersized forward‑pass output buffer while subsequent writes use the unwrapped value. The result is a heap out-of-bounds write that corrupts adjacent memory, potentially causing the OCR engine to crash or leading to memory corruption.

Affected Systems

The vulnerability affects all Tesseract‑OCR installations using versions earlier than 5.5.3, including 5.4.x and 5.5.2. Version 5.5.3 and later contain the fix and therefore are not impacted.

Risk and Exploitability

The CVSS score of 6.8 indicates moderate severity. EPSS data is not available, and the issue is not listed in the CISA KEV catalog. Exploitation would require an attacker to supply a malicious .traineddata file to a Tesseract instance that processes incoming OCR jobs, which could be local or remote depending on deployment. The risk is mitigated by the described patch but remains significant until updated.

Generated by OpenCVE AI on August 11, 2026 at 23:25 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the Tesseract 5.5.3 release or a later patch that contains the Convolve deserialization fix
  • Restrict the acceptance of LSTM .traineddata files to trusted sources and consider configuring the OCR service to reject custom models if not required
  • Enforce strict validation of model dimensions and step size before deserialization to avoid negative or excessively large values

Generated by OpenCVE AI on August 11, 2026 at 23:25 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 13 Aug 2026 11:00:00 +0000

Type Values Removed Values Added
First Time appeared Tesseract Project
Tesseract Project tesseract
Vendors & Products Tesseract Project
Tesseract Project tesseract

Tue, 11 Aug 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 11 Aug 2026 15:00:00 +0000

Type Values Removed Values Added
Description Tesseract is an open source OCR engine. Prior to 5.5.3, a crafted .traineddata LSTM model component loaded through Tesseract's deserializer can cause an unchecked signed integer multiplication in Convolve::DeSerialize in src/lstm/convolve.cpp to wrap the convolution output-channel count, undersizing the forward-pass output buffer while writes use the unwrapped element count and causing a heap out-of-bounds write during OCR recognition. This issue is fixed in version 5.5.3.
Title Tesseract: Heap out-of-bounds write in LSTM Convolve layer via crafted .traineddata
Weaknesses CWE-787
References
Metrics cvssV4_0

{'score': 6.8, 'vector': 'CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Tesseract Project Tesseract
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-11T15:36:09.326Z

Reserved: 2026-08-10T19:37:41.443Z

Link: CVE-2026-73066

cve-icon Vulnrichment

Updated: 2026-08-11T15:32:00.536Z

cve-icon NVD

Status : Received

Published: 2026-08-11T15:17:38.777

Modified: 2026-08-11T16:17:37.727

Link: CVE-2026-73066

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-13T10:41:15Z

Weaknesses