Katalog CVE

CVE-2026-88051

WysokieCVSS 7.8
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.12%

Percentyl 2 - wyżej niż 2% wszystkich znanych CVE

Streszczenie

Tesseract w wersji 5.5.3 i wcześniejszych zawiera lukę przepełnienia bufora w funkcji GenericVector::read, która odczytuje pola reserved i size_used_ z pliku .traineddata bez ograniczeń. Przygotowany plik może ustawić reserved na małą wartość, a size_used_ na dużą, powodując zapis poza zakresem tablicy struktur FontInfo.

Ocena ryzyka

Może dojść do uszkodzenia sterty, awarii aplikacji lub potencjalnie kontrolowanego uszkodzenia pamięci, co może prowadzić do wykonania dowolnego kodu.

Rekomendacja

Brak dostępnej poprawki. Unikaj przetwarzania niezaufanych plików .traineddata. Monitoruj wydania Tesseract w celu aktualizacji.

Inne podatności w Tesseract

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

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.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS