Luka w Glibc, wykorzystywana przez skrypty PHP

W standardowej bibliotece C Glibc wykryto lukę (CVE-2024-2961), prowadzącą do przepełnienia bufora podczas konwersji specjalnie sformatowanych ciągów w kodowaniu ISO-2022-CN-EXT przez funkcję iconv(). Badacz, który ujawnił problem, planuje wystąpienie na konferencji OffensiveCon 10 maja, w zapowiedzi którego wspomniano o możliwości wykorzystania luki w aplikacjach napisanych w języku PHP. Zgłoszono, że problem dotyczy całego ekosystemu PHP oraz niektórych aplikacji.

Podczas konwersji ciągów w kodowaniu UCS4, zgodnie z wymaganiami RFC 1922, biblioteka dodaje pewne znaki ucieczki, które wyróżniają części ciągu, w których kodowanie zostało zmienione. Luka jest spowodowana nieprawidłowym sprawdzaniem granic wewnętrznych buforów przez funkcję iconv(), co może prowadzić do przepełnienia bufora maksymalnie o 4 bajty. Przy przepełnieniu poza granice bufora mogą być zapisane określone stałe wartości, takie jak ‘$+I’, ‘$+J’, ‘$+K’, ‘$+L’, ‘$+M’ oraz ‘$*H’. Mimo iż wykorzystanie takiej luki do wykonania kodu wydaje się mało prawdopodobne, według badacza, który ujawnił problem, okazało się to wystarczające, aby przygotować kilka prototypów exploitów do zdalnego ataku na aplikacje PHP, prowadzących do wykonania kodu.

Luka jest obecna od 2000 roku i została naprawiona w rozwijanej wersji Glibc 2.40. Poprawka jest również dostępna w postaci łatek dla wydań Glibc od 2.32 do 2.39. W dystrybucjach można śledzić poprawkę luki na stronach: Debian, Ubuntu, Gentoo, RHEL, SUSE, Fedora, Arch.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster