CVE-2026-47251
ŚrednieCVSS 6.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 8 - wyżej niż 8% wszystkich znanych CVE
Streszczenie
Podatność w libheif przed wersją 1.22.0. Łatka dla CVE-2026-3949 wprowadziła przepełnienie liczb całkowitych w sprawdzeniu bezpieczeństwa, co pozwala na ominięcie zabezpieczenia i wywołanie odczytu poza stertą (out-of-bounds heap read) przez spreparowany plik HEIF z ścieżką VVC.
Ocena ryzyka
Atakujący może wykorzystać tę podatność do odczytu pamięci poza dozwolonym obszarem, potencjalnie prowadząc do wycieku danych lub crasha.
Rekomendacja
Zaktualizuj libheif do wersji 1.22.0, która zawiera poprawkę. Unikaj przetwarzania niezaufanych plików HEIF z ścieżkami VVC.
Inne podatności w libheif
Zobacz wszystkie- CVE-2026-62377Średnie
Podatność w libheif (wersje do 1.23.0) pozwala na crash aplikacji przez specjalnie spreparowaną sekwencję HEIF, która nie rejestruje ścieżek śledzenia, co prowadzi do asercji lub niezdefiniowanego zachowania przy wywołaniu heif_context_get_track.
- CVE-2026-62292Wysokie
Podatność w bibliotece libheif (wersje 1.19.0 do 1.23.1) powodująca awarię aplikacji podczas dekodowania specjalnie spreparowanego obrazu HEIF z kompresją zlib. Błąd w obliczaniu offsetu prowadzi do odczytu poza zakresem i crasha.
- CVE-2026-62291Średnie
Podatność w libheif (wersje do 1.23.0) pozwala na uszkodzenie pamięci (heap corruption) przez spreparowaną sekwencję obrazów z niezgodnymi wymiarami płaszczyzn alfa, co prowadzi do zapisu poza zakresem podczas kodowania.
- CVE-2026-62289Średnie
Podatność w libheif (wersje do 1.23.0) pozwala na crash lub uszkodzenie wyników tiling przez spreparowany plik HEIF/AVIF z polem clean aperture, które redukuje wymiary do zera, powodując niedomiar i asercję lub błędne wyniki.
- CVE-2026-50142Wysokie
libheif w wersjach od 1.19.0 do 1.23.0 zawiera podatność na niekontrolowaną alokację pamięci w przypadku specjalnie spreparowanego pliku HEIF z sekwencją msf1. W Box_stsz::parse() limit max_sequence_frames jest stosowany tylko do próbek o zmiennym rozmiarze, a w Track::load() arytmetyka 32-bitowa może prowadzić do obejścia kontroli spójności. Może to spowodować alokację gigabajtów pamięci, co prowadzi do awarii lub zawieszenia procesu.
- CVE-2026-48029Wysokie
Biblioteka libheif w wersjach od 1.19.0 do 1.21.2 zawiera podatność polegającą na odczycie poza zakresem sterty (heap OOB read) w funkcji ImageItem_Grid::decode_grid_tile, spowodowaną niedomiarem współrzędnych kafelka wywołanym przez irot. Wersja 1.22.0 zawiera poprawkę.
- CVE-2026-47709Średnie
Podatność w bibliotece libheif przed wersją 1.22.0. Podczas dekodowania złośliwego pliku HEIF bez właściwości `ispe` (ale z `uncC`) dochodzi do crasha w funkcji `heif_image_handle_get_image_tiling()` – w debug buildzie przez asercję, w release/ASan przez odczyt null pointera.
- CVE-2026-47254Średnie
Podatność w libheif przed wersją 1.22.0 powoduje przepełnienie bufora sterty podczas odczytu plików HEIF/AVIF. Funkcja Track::init_sample_timing_table() zapisuje nieprawidłowy indeks fragmentu, co prowadzi do odczytu poza zakresem.
- CVE-2026-47247Wysokie
Dwa błędy w bibliotece libheif przed wersją 1.22.0 umożliwiają wyciek pamięci sterty jako widoczne wartości pikseli w zdekodowanych obrazach siatki. Atakujący przesyłający spreparowany plik AVIF/HEIC do serwerowego procesora obrazów (WordPress, Sharp/libvips, ImageMagick itp.) może odzyskać dane sterty, w tym wskaźniki funkcji bibliotecznych wystarczające do pokonania ASLR, z publicznie dostępnego wyjścia JPEG/PNG/WebP.
- CVE-2026-47178Średnie
Podatność w libheif w wersjach 1.19.0 do 1.21.2 pozwala na zapis poza zakresem sterty w dekoderze nieskompresowanych kafelków. Złośliwy plik HEIF może nadpisać wskaźnik vtable, co prowadzi do wykonania kodu.
Oryginalny opis (angielski, źródło NVD)
libheif is a HEIF and AVIF file format decoder and encoder. The fix for CVE-2026-3949 (commit `b97c8b5`, PR #1712) introduced an integer overflow in the very security check it added. The check itself can be bypassed, allowing a crafted HEIF file with a VVC track to trigger the same out-of-bounds heap read that CVE-2026-3949 was meant to prevent. This is a separate, currently-unpatched vulnerability. Issue #1712 was closed as fixed without testing the edge case where `size` is near `UINT32_MAX`. Version 1.22.0 patches the issue.

