Vulnera bilita w e2fsck, występująca podczas przetwarzania specjalnie przygotowanych katalogów.

W narzędziu e2fsck, dostarczanym w ramach pakietu e2fsprogs, wykryto luka (CVE-2019-5188), które pozwala na wykonanie kodu przez napastnika podczas sprawdzania systemu plików zawierającego specjalnie przygotowane katalogi. Obecność luki bezpieczeństwa potwierdzono w wydaniach od 1.43.3 do 1.45.4. Luka została usunięta w aktualizacji e2fsck 1.45.5. W dystrybucjach problem wciąż pozostaje nieskalibrowany (Debian, Arch Linux, SUSE/openSUSE, Ubuntu, RHEL).

Luka wynika z błędu w funkcji mutate_name() z pliku rehash.c, stosowanej przy rekonstrukcji powiązanych z katalogiem tabeli haszującej, które zapewniają odwzorowanie katalogu wszystkich znajdujących się w nim plików. Uszkodzenie powiązanej z katalogiem struktury hash_entry może prowadzić do zapisu danych napastnika w obszarze poza przydzielonym buforem. W przypadku wykrycia w tabeli haszującej powiązania z katalogiem kilku plików o tej samej nazwie, narzędzie e2fsck zmienia nazwy powtarzających się plików, dodając do nazwy ~0, ~1 itd. Do tymczasowego przechowywania nowej nazwy przy takim renomowaniu w stosie przydzielany jest bufor o rozmiarze 256 bajtów.

Rozmiar kopiowanych danych określany jest wyrażeniem "entry->name_len & 0xff", ale wartość entry->name_len jest ładowana z struktury na dysku, a nie obliczana na podstawie rzeczywistego rozmiaru nazwy. Jeśli rozmiar wynosi zero, indeks tablicy przyjmuje wartość -1 i tworzy warunki do przepełnienia całkowitego przez dolną granicę bufora (integer underflow) i nadpisania innych danych w stosie wartością "~0". Dla systemów 64-bitowych wykorzystanie luki oceniane jest jako mało prawdopodobne i wymaga braku ograniczeń na rozmiar stosu (ulimit -s unlimited). Dla systemów 32-bitowych wykorzystanie uznawane jest za możliwe, ale wynik bardzo zależy od tego, jak plik wykonywalny był kompilowany przez kompilator.

Aby przeprowadzić atak, napastnik musi w odpowiedni sposób uszkodzić dane w partycji z systemem plików ext2, ext3 lub ext4. Ponieważ operacja ta wymaga uprawnień superużytkownika, luka stanowi zagrożenie podczas sprawdzania przez narzędzie e2fsck zewnętrznych nośników lub otrzymanych obrazów systemu plików.

Ź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