CVE-2016-4009
KrytyczneStreszczenie
Przepełnienie całkowite w funkcji ImagingResampleHorizontal w bibliotece Pillow przed wersją 3.1.1 umożliwia zdalnym atakującym wywołanie nieokreślonego wpływu poprzez użycie ujemnych wartości nowego rozmiaru, co prowadzi do przepełnienia bufora w pamięci sterty.
Ocena ryzyka
Atakujący mogą wykorzystać tę podatność do wykonania złośliwego kodu lub destabilizacji aplikacji, co może prowadzić do utraty danych lub naruszenia integralności systemu.
Rekomendacja
Zaleca się aktualizację biblioteki Pillow do wersji 3.1.1 lub nowszej, aby usunąć tę podatność.
Inne podatności w Pillow
Zobacz wszystkie- CVE-2026-54058Krytyczne
Podatność w bibliotece Pillow przed wersją 12.3.0 pozwala atakującemu na odczyt pamięci procesu lub wywołanie błędu krytycznego podczas ładowania nieskompresowanego obrazu McIdas AREA przez ścieżkę mmap. Kontrolowane przez atakującego nagłówki obrazu mogą ustawić mniejszy krok wiersza niż naturalna szerokość, co prowadzi do odczytu poza mapowanym regionem.
- CVE-2026-59200Wysokie
W bibliotece Pillow (Python Imaging Library) w wersjach od 5.1.0 do 12.3.0 funkcja PdfParser.PdfStream.decode() wywołuje zlib.decompress() z rozmiarem bufora ustawionym na pole Length strumienia PDF, bez ograniczania rozmiaru zdekompresowanego wyjścia. Pozwala to na wyczerpanie pamięci przez spreparowany strumień FlateDecode PDF pochodzący z małego pliku.
- CVE-2026-59197Wysokie
Biblioteka Pillow (Python Imaging Library) przed wersją 12.3.0 zawiera podatność na zapis poza stertą (heap out-of-bounds write) w publicznym API rank-filter. Podanie bardzo dużego, nieparzystego rozmiaru filtru powoduje przepełnienie w obliczeniach wymiarów obrazu.
- CVE-2026-59205Wysokie
W bibliotece Pillow dla Pythona wykryto podatność polegającą na możliwości wywołania kontrolowanego uszkodzenia sterty natywnej przez API ImageCms.ImageCmsTransform.apply(im, imOut). Problem występuje, gdy dostarczony obraz wyjściowy ma tryb niezgodny z deklarowanym trybem wyjściowym transformacji.
- CVE-2026-59204Wysokie
Podatność w bibliotece Pillow (wersje 8.2.0 do 12.2.0) powoduje nadmierne zużycie pamięci podczas dekodowania spreparowanego pliku JPEG2000 z kafelkami, co może prowadzić do odmowy usługi (OOM).
- CVE-2026-59203Średnie
Biblioteka Pillow w wersjach od 12.0.0 do 12.2.0 zawiera podatność w parserze EPS (PIL/EpsImagePlugin.py), która pozwala na wykonanie nieskończonej pętli poprzez spreparowany plik EPS z ujemną liczbą bajtów w dyrektywie %%BeginBinary. Atakujący może wykorzystać tę lukę do wywołania odmowy usługi (DoS) podczas otwierania złośliwego pliku za pomocą Image.open().
- CVE-2026-59199Wysokie
W bibliotece Pillow dla Pythona wykryto podatność polegającą na zapisie poza dozwolonym obszarem sterty (heap out-of-bounds write) podczas przetwarzania współrzędnych obrazu bliskich granicom 32-bitowej liczby całkowitej ze znakiem. Problem dotyczy funkcji Image.paste(), Image.crop() oraz Image.alpha_composite() i został naprawiony w wersji 12.3.0.
- CVE-2026-59198Średnie
W bibliotece Pillow w wersjach od 5.2.0 do 12.3.0 wykryto podatność w enkoderze TGA RLE. Podczas zapisywania obrazu w trybie 1 z kompresją RLE, enkoder odczytuje dane poza buforem wiersza, co powoduje kopiowanie sąsiednich bajtów sterty procesu do generowanego pliku TGA. Problem został naprawiony w wersji 12.3.0.
- CVE-2026-55798Średnie
W Pillow przed wersją 12.3.0 funkcja WindowsViewer.get_command() tworzyła polecenie cmd.exe przez bezpośrednie wstawienie ścieżki pliku do f-stringa bez odpowiedniego escapowania, a następnie przekazywała je do subprocess.Popen(..., shell=True). Umożliwiało to wstrzyknięcie dowolnych poleceń cmd.exe przez znaki metaznaków w ścieżce pliku.
- CVE-2026-55380Wysokie
W bibliotece Pillow przed wersją 12.3.0 w pliku GdImageFile.py metoda _open() odczytywała wymiary obrazu z nagłówka GD 2.x bez wywołania Image._decompression_bomb_check(), co pozwalało na załadowanie spreparowanego pliku .gd powodującego nadmierną alokację pamięci sterty C.
Oryginalny opis (angielski, źródło NVD)
Integer overflow in the ImagingResampleHorizontal function in libImaging/Resample.c in Pillow before 3.1.1 allows remote attackers to have unspecified impact via negative values of the new size, which triggers a heap-based buffer overflow.

