Luki w sterownikach OpenSSL, Glibc, util-linux, i915 i vmwgfx

W bibliotece kryptograficznej OpenSSL ujawniono podatność (CVE-2021-4160) związaną z błędem w implementacji sumatora w funkcji BN_mod_exp, skutkującą zwróceniem nieprawidłowego wyniku operacji podniesienia do kwadratu. Problem występuje tylko na sprzęcie opartym na architekturach MIPS32 i MIPS64 i może prowadzić do naruszenia algorytmów krzywych eliptycznych, w tym tych używanych domyślnie w TLS 1.3. Problem został rozwiązany w grudniowych aktualizacjach OpenSSL 1.1.1m i 3.0.1.

Należy zauważyć, że realizacja rzeczywistych ataków w celu uzyskania informacji o kluczach prywatnych z wykorzystaniem zidentyfikowanego problemu jest rozważana w przypadku RSA, DSA i algorytmu Diffiego-Hellmana (DH, Diffie-Hellmana) jako możliwa, ale mało prawdopodobna, zbyt skomplikowana do przeprowadzenia i wymagające ogromnych zasobów obliczeniowych. W tym przypadku wykluczony jest atak na TLS, gdyż w 2016 roku przy eliminacji luki CVE-2016-0701 zabroniono udostępniania jednego klucza prywatnego DH pomiędzy klientami.

Dodatkowo można zauważyć kilka niedawno zidentyfikowanych luk w projektach open source:

  • Wiele luk w zabezpieczeniach (CVE-2022-0330) w sterowniku karty graficznej i915 spowodowanych brakiem resetu TLB GPU. Jeśli IOMMU (translacja adresów) nie jest używana, luka umożliwia dostęp do losowych stron pamięci z przestrzeni użytkownika. Problem można wykorzystać do uszkodzenia lub odczytu danych z losowych obszarów pamięci. Problem występuje na wszystkich zintegrowanych i dyskretnych procesorach graficznych Intel. Poprawka polega na dodaniu obowiązkowego opróżniania TLB przed wykonaniem każdej operacji zwrotu bufora GPU do systemu, co doprowadzi do zmniejszenia wydajności. Wpływ na wydajność zależy od procesora graficznego, operacji wykonywanych na procesorze graficznym i obciążenia systemu. Poprawka jest obecnie dostępna wyłącznie jako łatka.
  • Luka (CVE-2022-22942) w sterowniku graficznym vmwgfx, wykorzystywana do implementacji akceleracji 3D w środowiskach VMware. Problem umożliwia nieuprzywilejowanemu użytkownikowi dostęp do plików otwieranych przez inne procesy w systemie. Atak wymaga dostępu do urządzenia /dev/dri/card0 lub /dev/dri/rendererD128, a także możliwości wykonania wywołania ioctl() z wynikowym deskryptorem pliku.
  • Luki w zabezpieczeniach (CVE-2021-3996, CVE-2021-3995) w bibliotece libmount dostarczonej w pakiecie util-linux pozwalają nieuprzywilejowanemu użytkownikowi na odmontowanie partycji dysku bez pozwolenia. Problem został zidentyfikowany podczas audytu programów głównych SUID umount i Fusermount.
  • Luki w standardowej bibliotece C Glibc wpływające na funkcje realpath (CVE-2021-3998) i getcwd (CVE-2021-3999).
    • Problem z realpath() jest spowodowany zwróceniem w pewnych warunkach nieprawidłowej wartości, zawierającej nierozwiązane dane resztkowe ze stosu. W przypadku programu utrwalacza SUID-root luka może zostać wykorzystana do uzyskania poufnych informacji z pamięci procesu, na przykład w celu uzyskania informacji o wskaźnikach.
    • Problem w getcwd() pozwala na jednobajtowe przepełnienie bufora. Problem jest spowodowany błędem występującym od 1995 roku. Aby spowodować przepełnienie, po prostu wywołaj funkcję chdir() w katalogu „/” w osobnej przestrzeni nazw punktu podłączenia. Nie ma informacji, czy luka ogranicza się do awarii procesów, ale w przeszłości zdarzały się przypadki tworzenia działających exploitów dla podobnych luk, pomimo sceptycyzmu programistów.
  • Luka (CVE-2022-23220) w pakiecie usbview umożliwia lokalnym użytkownikom zalogowanym przez SSH wykonanie kodu jako root ze względu na ustawienie w regułach PolKit (allow_any=yes) umożliwiające uruchomienie narzędzia usbview jako root bez uwierzytelniania. Operacja sprowadza się do użycia opcji „--gtk-module” w celu załadowania biblioteki do usbview. Problem został rozwiązany w wersji USBview 2.2.

Źródło: opennet.ru

Dodaj komentarz