CVE Catalog

CVE-2026-88049

HighCVSS 8.6
Published: Translated: NVD NIST

Summary

Tesseract 5.5.3 and earlier fails to validate dimension consistency in NetworkIO::WriteTimeStepPart and NetworkIO::AddTimeStepPart. A crafted .traineddata file with an NT_LSTM layer can cause a heap out-of-bounds write during the first recognition step on the default LSTM engine. No fixed release is available.

Risk Assessment

Processing a malicious .traineddata file can lead to heap corruption, a crash, or potentially controlled corruption. Any environment loading untrusted Tesseract models is at risk.

Recommendation

Do not load untrusted .traineddata files and restrict access to the tessdata directory. Track Tesseract releases and apply the fix as soon as it becomes available.

Other vulnerabilities in Tesseract

See all
Original NVD description (English source)

Tesseract is an open source OCR engine. In version 5.5.3 and earlier, prior .traineddata hardening added bounds checks to NetworkIO::CopyTimeStepGeneral and NetworkIO::Randomize in src/lstm/networkio.cpp but left NetworkIO::WriteTimeStepPart and NetworkIO::AddTimeStepPart unchecked. In LSTM::Forward in src/lstm/lstm.cpp, source_ is sized from the independently deserialized na_ field while the WriteTimeStepPart count is ns_, which comes from the CI gate WeightMatrix dim1() value. A crafted NT_LSTM layer can make ns_ much larger than na_, causing a heap out-of-bounds write during the first recognition step on the default LSTM engine and resulting in heap corruption, a crash, or potentially controlled corruption. No fixed release is available as of this review.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS