Podatność w bibliotece libheif (przed wersją 1.22.0) pozwala na wyciek zawartości pamięci sterty procesu jako widocznych wartości pikseli w dekodowanych obrazach gridowych. Atakujący może odczytać wrażliwe dane z pamięci serwera, w tym wskaźniki funkcji bibliotecznych wystarczające do obejścia mechanizmu ASLR.
▸ Pokaż oryginał (EN)
libheif is a HEIF and AVIF file format decoder and encoder. Prior to version 1.22.0, two bugs in libheif chain to leak process heap memory as visible pixel values in decoded grid images. An attacker who uploads a crafted AVIF/HEIC file to any server-side image processor (WordPress, Sharp/libvips, ImageMagick, etc.) can recover heap data - including library function pointers sufficient to defeat ASLR, or any other secret - from the publicly-downloadable transcoded JPEG/PNG/WebP output. Local attack vectors are also possible. Version 1.22.0 fixes the issue.
Dwa powiązane błędy w libheif powodują, że niezainicjowane lub wrażliwe dane z pamięci sterty procesu trafiają jako wartości pikseli do zdekodowanego obrazu gridowego. Atakujący przygotowuje specjalnie spreparowany plik AVIF lub HEIC i przesyła go do serwerowego procesora obrazów (np. WordPress, Sharp/libvips, ImageMagick). Wynikowy plik JPEG, PNG lub WebP, dostępny publicznie do pobrania, zawiera w danych pikselowych fragmenty pamięci sterty serwera. Umożliwia to odczyt tajnych danych oraz wskaźników funkcji, co pozwala na ominięcie randomizacji przestrzeni adresowej (ASLR).
Atakujący może zdalnie odczytać wrażliwe dane z pamięci sterty serwera przetwarzającego obrazy, w tym wskaźniki funkcji bibliotecznych pozwalające na obejście ASLR oraz potencjalnie inne sekrety przechowywane w pamięci procesu.
Należy zaktualizować libheif do wersji 1.22.0, która zawiera poprawkę dla opisanego problemu. Dotyczy to zarówno bezpośrednich instalacji biblioteki, jak i wszystkich zależnych od niej komponentów i wtyczek.
Struktur libheif w wersjach przed 1.22.0 — wszystkie systemy serwerowe i lokalne korzystające z tej biblioteki do przetwarzania plików AVIF/HEIC (m.in. integracje z WordPress, Sharp/libvips, ImageMagick).
Podatność składa się z dwóch powiązanych błędów działających łącznie (chain). Szczegóły techniczne dostępne w adwizory GitHub: GHSA-2vh6-whr3-cmq3.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:NStruktur Libheif
APPStruktur< 1.22.0
Powiązane podatności
libheif: heap OOB read w dekodowaniu siatki HEIF przez przepełnienie współrzędnych
libheif is a HEIF and AVIF file format decoder and encoder. Versions 1.21.2 and prior contain a heap-buffer-ov...
In Libheif 1.17.6, insufficient checks in ImageOverlay::parse() decoding a heif file containing an overlay ima...
libheif <= 1.17.6 contains a memory leak in the function JpegEncoder::Encode. This flaw allows an attacker to ...
libheif v1.17.5 was discovered to contain a segmentation violation via the component /libheif/exif.cc.