CVE-2026-41071
WysokieStreszczenie
W wersjach 1.21.2 i wcześniejszych biblioteki libheif występuje podatność na przepełnienie bufora w sterowniku SampleAuxInfoReader, spowodowana nieprawidłowym zadeklarowaniem liczby próbek w pliku HEIF. Podczas przetwarzania pliku, liczba próbek może być większa niż liczba dostępnych chunków, co prowadzi do odczytu poza granicami bufora.
Ocena ryzyka
Organizacje korzystające z libheif do otwierania nieufnych plików HEIF są narażone na potencjalne ataki, które mogą prowadzić do nieautoryzowanego dostępu do pamięci i wykonania złośliwego kodu.
Rekomendacja
Zaleca się aktualizację biblioteki libheif do wersji 1.22.0 lub nowszej, aby usunąć tę podatność. Dodatkowo, należy unikać otwierania nieufnych plików HEIF.
Oryginalny opis (angielski, źródło NVD)
libheif is a HEIF and AVIF file format decoder and encoder. In versions 1.21.2 and prior, a crafted HEIF sequence file where the saiz box declares more samples than actually exist in the track's chunk table causes a heap-buffer-overflow (out-of-bounds read) in the SampleAuxInfoReader constructor. The SampleAuxInfoReader constructor iterates over saiz->get_num_samples() samples but doesn't validate that this count is consistent with the number of chunks in the chunks vector. When saiz declares more samples than the chunks cover, the loop increments current_chunk past chunks.size(), causing an out-of-bounds read on the chunks vector. The vulnerability is triggered during file parsing (heif_context_read_from_file) without any additional user interaction. Any application using libheif to open untrusted HEIF files is affected. This issue has been fixed in version 1.22.0.

