Katalog CVE

CVE-2025-57812

NiskieCVSS 3.7
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.48%

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

Streszczenie

Podatność typu out-of-bounds read/write występuje w filtrze imagetoraster (CUPS-Filters 1.x) oraz w funkcji _cfImageReadTIFF() w libcupsfilters (2.x) podczas przetwarzania plików TIFF. Bufor pikseli jest alokowany na podstawie liczby pikseli i wcześniej obliczonej wartości bajtów na piksel, ale funkcja przetwarzająca piksele jest wywoływana z rozmiarem liczby pikseli pomnożonej przez 3. Przy odpowiednio spreparowanym pliku TIFF i opcjach zadania drukowania można ustawić wartość bajtów na piksel na 1, co prowadzi do dostępu poza granicami bufora.

Ocena ryzyka

Atakujący może wykorzystać podatność, wysyłając spreparowane zadanie drukowania z plikiem TIFF, co może prowadzić do odczytu lub zapisu poza granicami bufora, potencjalnie umożliwiając wykonanie kodu lub ujawnienie danych. Wymaga to jednak odpowiedniej konfiguracji drukarki i opcji zadania.

Rekomendacja

Zaktualizuj CUPS-Filters do wersji zawierającej poprawkę (commit b69dfacec7f176281782e2f7ac44f04bf9633cfa) lub do najnowszej wersji libcupsfilters. Ogranicz możliwość przesyłania niezaufanych plików TIFF do druku, jeśli aktualizacja nie jest natychmiast możliwa.

Powiązane podatności

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

CUPS is a standards-based, open-source printing system, and `libcupsfilters` contains the code of the filters of the former `cups-filters` package as library functions to be used for the data format conversion tasks needed in Printer Applications. In CUPS-Filters versions up to and including 1.28.17 and libscupsfilters versions 2.0.0 through 2.1.1, CUPS-Filters's `imagetoraster` filter has an out of bounds read/write vulnerability in the processing of TIFF image files. While the pixel buffer is allocated with the number of pixels times a pre-calculated bytes-per-pixel value, the function which processes these pixels is called with a size of the number of pixels times 3. When suitable inputs are passed, the bytes-per-pixel value can be set to 1 and bytes outside of the buffer bounds get processed. In order to trigger the bug, an attacker must issue a print job with a crafted TIFF file, and pass appropriate print job options to control the bytes-per-pixel value of the output format. They must choose a printer configuration under which the `imagetoraster` filter or its C-function equivalent `cfFilterImageToRaster()` gets invoked. The vulnerability exists in both CUPS-Filters 1.x and the successor library libcupsfilters (CUPS-Filters 2.x). In CUPS-Filters 2.x, the vulnerable function is `_cfImageReadTIFF() in libcupsfilters`. When this function is invoked as part of `cfFilterImageToRaster()`, the caller passes a look-up-table during whose processing the out of bounds memory access happens. In CUPS-Filters 1.x, the equivalent functions are all found in the cups-filters repository, which is not split into subprojects yet, and the vulnerable code is in `_cupsImageReadTIFF()`, which is called through `cupsImageOpen()` from the `imagetoraster` tool. A patch is available in commit b69dfacec7f176281782e2f7ac44f04bf9633cfa.

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