Podatność integer overflow w bibliotece imlib2 przed wersją 1.4.9 na platformach 32-bitowych umożliwia zdalnemu atakującemu wykonanie dowolnego kodu. Przyczyną jest niewystarczająca walidacja wymiarów obrazu, prowadząca do zapisu poza granicami sterty (heap out-of-bounds write).
▸ Pokaż oryginał (EN)
Integer overflow in imlib2 before 1.4.9 on 32-bit platforms allows remote attackers to execute arbitrary code via large dimensions in an image, which triggers an out-of-bounds heap memory write operation.
Atakujący dostarcza specjalnie spreparowany plik graficzny zawierający ekstremalnie duże wartości wymiarów (szerokość lub wysokość). Na platformach 32-bitowych obliczenie rozmiaru bufora na podstawie tych wymiarów powoduje przepełnienie liczby całkowitej (integer overflow), w wyniku czego alokowany bufor jest zbyt mały. Następuje zapis poza granicami przydzielonego obszaru sterty (heap memory), co może zostać wykorzystane do przejęcia kontroli nad wykonaniem programu.
Udany atak pozwala zdalnemu atakującemu na wykonanie dowolnego kodu (RCE) z uprawnieniami procesu przetwarzającego obraz. W praktyce może to oznaczać pełne przejęcie kontroli nad systemem.
Należy zaktualizować imlib2 do wersji 1.4.9 lub nowszej. Użytkownicy Debian Linux powinni zastosować poprawkę opisaną w biuletynie DSA-3555. Użytkownicy openSUSE powinni zainstalować aktualizacje dostępne w ramach opensuse-updates z maja 2016 roku. Szczegółowe informacje dostępne są w referencjach producenta.
imlib2 w wersjach przed 1.4.9 działający na platformach 32-bitowych; dotknięte są również pakiety Debian Linux oraz openSUSE korzystające z podatnych wersji biblioteki.
Podatność dotyczy wyłącznie platform 32-bitowych – systemy 64-bitowe nie są podatne ze względu na odmienną arytmetykę typów całkowitych. Poprawka dostępna w repozytorium git projektu Enlightenment (commit 7eba2e4c8ac0e20838947f10f29d0efe1add8227).
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HDebian
OSDebian7.08.0Enlightenment Imlib2
APPEnlightenment≤ 1.4.8Opensuse
OSOpensuse13.2
Powiązane podatności
GNU Inetutils telnetd: ominięcie uwierzytelnienia przez zmienną USER
Sudo: eskalacja uprawnień do root poprzez opcję --chroot (CVE-2025-32463)
RCE przez deserializację PHP w Roundcube Webmail (parametr _from)
Erlang/OTP SSH — nieuwierzytelniony RCE (CVSS 10.0)
Apple WebKit: out-of-bounds write umożliwiający ucieczkę z sandbox przeglądarki