Vulnerability w libnv w FreeBSD oraz luki w Netfilter w Linux.

W opublikowanej na początku września poprawce dotyczącej luk w bibliotece libnv zidentyfikowano błąd logiczny, który uniemożliwił skuteczne usunięcie tej luki, pozostawiając system narażony na atak. Biblioteka libnv rozwijana jest w projekcie FreeBSD i wykorzystywana jest w jądrze oraz w aplikacjach podstawowego systemu do przetwarzania list w formacie klucz/wartość oraz organizacji przesyłu danych w interakcji międzyprocesowej. Biblioteka oparta jest na algorytmie nvlist stosowanym w projekcie OpenZFS, jednak w FreeBSD stworzono własną implementację, dlatego luka nie dotyczy OpenZFS.

Luka ta została spowodowana przez przepełnienie całkowitoliczbowe, prowadzące do przydzielenia bufora o rozmiarze mniejszym niż zapisany w buforze blok danych. Popełniony błąd może być potencjalnie wykorzystywany do zwiększenia swoich uprawnień poprzez nadpisywanie obszarów pamięci w jądrze oraz procesach systemowych, na przykład biblioteka libnv jest wykorzystywana w libcasper w interakcji między kodem uprzywilejowanym a nieuprzywilejowanym. Odpowiednia poprawka luki (CVE-2024-45287) została zaproponowana w aktualizacjach 14.1-RELEASE-p5, 14.0-RELEASE-p11, 13.4-RELEASE-p1 oraz 13.3-RELEASE-p7, a także w formie poprawki.

W FreeBSD usunięto również lukę (CVE-2024-41721) w hypervisorze bhyve, potencjalnie umożliwiającą wykonanie kodu w procesie uruchamianym na stronie systemu gospodarza (zwykle z prawami roota, ale izolowanym przez sandbox oparty na Capsicum) podczas manipulacji wewnątrz systemu gościa. Luka występuje w kodzie emulującym kontroler USB XHCI i wynika z niewystarczającej weryfikacji granic bufora, co może prowadzić do odczytu danych spoza obszaru bufora, a także potencjalnie do możliwości zapisu do dowolnego obszaru pamięci procesu. Atak może być zrealizowany pod warunkiem uruchomienia uprzywilejowanych procesów w systemie gościa. Luka została usunięta w aktualizacjach FreeBSD 14.1-RELEASE-p5, 14.0-RELEASE-p11, 13.4-RELEASE-p1 oraz 13.3-RELEASE-p7.

Dodatkowo można zauważyć publikację roboczych prototypów exploitów oraz opisów metod wykorzystania wcześniej zidentyfikowanych luk w jądrze Linux CVE-2024-26808 i CVE-2024-1085. Problemy zostały rozwiązane w aktualizacjach jądra 5.10.210, 5.15.149, 6.1.76, 6.6.15, 6.7.3 i 6.8, a już zostały poprawione w głównych dystrybucjach (Debian, Ubuntu, RHEL, SUSE, Fedora). Luki te są spowodowane dostępem do już zwolnionego obszaru pamięci w funkcjach nft_chain_filter i nft_setelem_catchall_deactivate w podsystemie netfilter, umożliwiając wykonanie kodu z uprawnieniami roota. Do przeprowadzenia ataku wymagany jest dostęp do nftables, który można uzyskać przy posiadaniu uprawnień CAP_NET_ADMIN w dowolnej przestrzeni nazw identyfikatorów użytkowników lub przestrzeni nazw sieci (network namespace), udostępnianej na przykład w izolowanych kontenerach.

Eksplojty zostały przygotowane przez uczestników inicjatywy KernelCTF (Kernel Capture the Flag), w ramach której firma Google wypłaca nagrody za wykrywanie luk w jądrze Linux. Początkowo problemy te były traktowane jako jedne z wielu potencjalnych luk w jądrze — na przykład w czerwcowej aktualizacji pakietu jądra 5.10 w Debianie oprócz CVE-2024-26808 naprawiono jeszcze 345 (!) potencjalnych luk. Co tydzień w jądrze wykrywa się kilka dziesiątków nowych luk, które wcześniej nie były identyfikowane jako problemy z bezpieczeństwem (na przykład w zeszłym tygodniu zidentyfikowano 68 luk).

Ź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