Podatności Linux kernel
7564 znanych podatności CVE w Linux kernel, przetłumaczonych i ocenionych.
- CVE-2024-26828Krytyczne
W jądrze Linux w module cifs występuje niedomiar (underflow) w funkcji parse_server_interfaces() z powodu porównania typu ssize_t z size_t, co prowadzi do kontynuacji pętli przy ujemnej wartości bytes_left. Poprawka rozwiązuje problem z konwersją typów.
- CVE-2021-47215Krytyczne
W jądrze Linux w sterowniku mlx5e (dla kart sieciowych Mellanox) występuje błąd w przepływie resynchronizacji TLS RX, prowadzący do awarii. Lista kontekstów TLS jest narażona na uszkodzenia z powodu braku ochrony wpisów przed ruchami pochodzącymi z resync_handle_seq_match(), dopóki ich obsługa w napi nie zostanie zakończona.
- CVE-2024-26811Krytyczne
W jądrze Linux w module ksmbd brakuje walidacji rozmiaru danych odpowiedzi IPC, co może prowadzić do przepełnienia pamięci lub naruszenia granic (slab-out-of-bounds). Poprawka dodaje walidację trzech odpowiedzi IPC z danymi.
- CVE-2024-26800Krytyczne
W jądrze Linux występuje podatność use-after-free w TLS podczas nieudanego odszyfrowania w kolejce. Gdy operacja kryptograficzna zwraca -EBUSY, funkcja tls_do_decryption czeka na zakończenie wszystkich asynchronicznych odszyfrowań, a jeśli jedno z nich zawiedzie, strony są zwalniane, ale zostały już przekazane do asynchronicznego wywołania zwrotnego.
- CVE-2024-26760Krytyczne
W jądrze Linux w podsystemie SCSI target (pscsi) występuje błąd w obsłudze przypadku błędu przy zwalnianiu obiektu bio. Bio przydzielony przez bio_kmalloc() musi być zwolniony przez bio_uninit() i kfree(), ale w tym przypadku nie jest to poprawnie wykonane, co prowadzi do ostrzeżenia WARN i dereferencji wskaźnika NULL w bio_free().
- CVE-2024-26665Krytyczne
W jądrze Linux w funkcjach tuneli (np. VXLAN) występuje błąd polegający na odczycie poza zakresem pamięci podczas budowania błędu PMTU dla IPv6. Problem pojawia się, gdy błąd ICMPv6 jest tworzony z nie-liniowego skb, co prowadzi do naruszenia pamięci (KASAN: slab-out-of-bounds).
- CVE-2021-47168Krytyczne
W jądrze Linux w funkcji filelayout_decode_layout() w NFS użyto nieprawidłowego rozmiaru struktury, co może prowadzić do uszkodzenia pamięci. Poprawka zmienia rozmiar na NFS_MAXFHSIZE, który odpowiada rozmiarowi bufora.
- CVE-2021-47162Krytyczne
W jądrze Linux w module TIPC wykryto podatność polegającą na nieprawidłowym dołączaniu fragmentów pakietów do listy frag_list skb, co może prowadzić do użycia po zwolnieniu (use-after-free). Problem występuje, gdy skb został sklonowany lub zmodyfikowany przez pskb_copy() lub pskb_may_pull(), a nowy fragment jest współdzielony przez wiele skb, mimo że tylko raz wykonano na nim skb_get().
- CVE-2021-47137Krytyczne
W jądrze Linux w sterowniku sieciowym lantiq występuje podatność prowadząca do uszkodzenia pamięci w pierścieniu RX. W sytuacji, gdy alokacja pamięci lub mapowanie DMA nie powiedzie się, do deskryptora programowany jest nieprawidłowy adres, co może prowadzić do uszkodzenia pamięci. Poprawka powoduje, że w przypadku niepowodzenia alokacji DMA ponownie używa poprzedniego skb i mapowania oraz odrzuca pakiet, zwiększając licznik odrzuceń.
- CVE-2021-47107Krytyczne
W jądrze systemu Linux zidentyfikowano podatność związana z przepełnieniem bufora w funkcji READDIR. Problem występuje, gdy klient wysyła zbyt mały argument count, co prowadzi do błędnych obliczeń rozmiaru bufora i umożliwia zapis poza jego granicami.
- CVE-2021-47103Krytyczne
Podatność w jądrze Linux dotyczy błędnego zarządzania polem sk_rx_dst w strukturach gniazd TCP, które nie przestrzegało standardowych zasad RCU. Może to prowadzić do użycia po zwolnieniu (use-after-free) w funkcjach wczesnego demultipleksowania pakietów, co zostało zgłoszone przez syzbot.
- CVE-2023-52515Krytyczne
W jądrze Linux w podsystemie RDMA/srp występuje problem polegający na tym, że procedura srp_abort() wywołuje scsi_done(), co może prowadzić do użycia po zwolnieniu (use-after-free). Poprawka usuwa to wywołanie, pozostawiając wywołanie srp_free_req() przed zwróceniem SUCCESS.
- CVE-2023-52480Krytyczne
W jądrze Linux w module ksmbd wykryto wyścig między wyszukiwaniem sesji a jej wygaśnięciem, co może prowadzić do użycia po zwolnieniu (UAF). Problem został naprawiony przez dodanie semafora rwsem synchronizującego te operacje.
- CVE-2021-47036Krytyczne
W jądrze Linuxa w module UDP występuje podatność polegająca na nieprawidłowej agregacji L4 dla pakietów tunelowanych UDP. Gdy włączone są opcje GRO, może dojść do uszkodzenia wewnętrznych protokołów, np. ignorowania różnych identyfikatorów VXLAN.
- CVE-2021-47013Krytyczne
W jądrze Linux naprawiono podatność use-after-free w funkcji emac_mac_tx_buf_send w sterowniku sieciowym EMAC. Problem polega na tym, że po zwolnieniu skb w przypadku błędu w emac_tx_fill_tpd(), skb jest nadal używany przez netdev_sent_queue(,skb->len), co prowadzi do użycia po zwolnieniu.
- CVE-2021-46999Krytyczne
W jądrze Linux wykryto podatność w protokole SCTP, prowadzącą do użycia po zwolnieniu (use-after-free) struktury transportu. Problem występuje podczas przetwarzania zduplikowanego fragmentu COOKIE-ECHO w funkcji sctp_sf_do_dupcook_a(), gdzie fragmenty COOKIE-ACK i SHUTDOWN są przypisywane do nowego skojarzenia (asoc), ale później używane przez stare skojarzenie, co może doprowadzić do paniki systemu.
- CVE-2021-46911Krytyczne
W jądrze Linuxa w module ch_ktls występuje problem powodujący panikę jądra. Zwiększanie licznika referencji strony nie jest idealne i może prowadzić do paniki, dlatego zaleca się użycie blokady tx_ctx dla całego przesyłania skb, aby uniknąć czyszczenia strony w trakcie transmisji.
- CVE-2019-25160Krytyczne
W jądrze Linux w module netlabel występują dwa przypadki odczytu poza granicami tablicy: w funkcji cipso_v4_map_lvl_valid() oraz w netlbl_bitmap_walk(). Poprawki są proste i dotyczą sprawdzania zakresów.
- CVE-2024-26594Krytyczne
W jądrze Linux naprawiono podatność w ksmbd: brak walidacji tokenu mechanizmu w żądaniu sesji. Jeśli klient wyśle nieprawidłowy token, ksmbd powinien go zweryfikować i zwrócić błąd.
- CVE-2024-26592Krytyczne
W jądrze Linux naprawiono podatność use-after-free w funkcji ksmbd_tcp_new_connection() w module ksmbd. Problem wynika z wyścigu między obsługą nowego połączenia TCP a jego rozłączeniem, co prowadzi do użycia po zwolnieniu struktury tcp_transport.
- CVE-2024-26585Krytyczne
W jądrze Linux w module tls występuje podatność polegająca na wyścigu między planowaniem pracy transmisji a zamknięciem gniazda. Wątek zgłaszający (recvmsg/sendmsg) może zakończyć działanie natychmiast po wywołaniu complete() przez asynchroniczny handler kryptograficzny. Poprawka zmienia kolejność: najpierw planowanie pracy, potem wywołanie complete().
- CVE-2024-26584Krytyczne
W jądrze Linuxa w module TLS naprawiono problem z obsługą żądań kryptograficznych, które mogą być umieszczane w kolejce oczekującej (backlog). Gdy flaga CRYPTO_TFM_REQ_MAY_BACKLOG jest ustawiona, funkcje crypto_aead mogą zwracać -EBUSY zamiast -EINPROGRESS, co powodowało podwójne wywołanie callbacku asynchronicznego. Poprawka konwertuje -EBUSY na -EINPROGRESS, aby uniknąć modyfikacji ścieżek obsługi błędów.
- CVE-2024-26583Krytyczne
W jądrze Linuxa występuje podatność wyścigu (race condition) w implementacji TLS, między asynchronicznym powiadomieniem a zamknięciem gniazda. Wątek wywołujący recvmsg/sendmsg może zakończyć działanie natychmiast po wywołaniu complete() przez asynchroniczny handler kryptograficzny, co grozi dostępem do już zwolnionych danych.
- CVE-2024-26582Krytyczne
W jądrze Linux w module TLS występuje podatność use-after-free przy częściowych odczytach i asynchronicznym odszyfrowaniu. Funkcja tls_decrypt_sg nie przechowuje referencji do stron z clear_skb, co prowadzi do zwolnienia ich przez put_page() w tls_decrypt_done, a następnie użycia po zwolnieniu w process_rx_list.
- CVE-2023-52442Krytyczne
W jądrze Linux naprawiono podatność w ksmbd: brak walidacji identyfikatora sesji i drzewa w żądaniu złożonym. Funkcja smb2_get_msg() zawsze zwraca pierwszy nagłówek SMB2, co może prowadzić do pominięcia sprawdzenia identyfikatora drzewa. Poprawka używa ksmbd_req_buf_next() do uzyskania bieżącego polecenia.
- CVE-2023-52441Krytyczne
W jądrze Linux w module ksmbd występuje dostęp poza granicami w funkcji init_smb2_rsp_hdr(). Jeśli klient wyśle żądanie negocjacji SMB2, a następnie SMB1, funkcja jest wywoływana dla żądania SMB1, co prowadzi do problemu. Poprawka ignoruje pakiety SMB1 po ustawieniu need_neg na false.
- CVE-2023-52440Krytyczne
W jądrze Linux naprawiono podatność w ksmbd: przepełnienie bufora w funkcji ksmbd_decode_ntlmssp_auth_blob(). Jeśli rozmiar klucza sesji w authblob jest większy niż rozmiar klucza sesji (CIFS_KEY_SIZE), może wystąpić przepełnienie w kodach wymiany kluczy. Funkcja cifs_arc4_crypt kopiuje do tablicy klucza sesji z SessionKey od klienta.
- CVE-2024-1086WysokieAktywnie exploitowane
Podatność use-after-free w komponencie netfilter: nf_tables jądra Linux może być wykorzystana do lokalnej eskalacji uprawnień. Funkcja nft_verdict_init() pozwala na dodatnie wartości jako błąd drop w werdykcie haka, co może prowadzić do podwójnego zwolnienia pamięci w nf_hook_slow().
- CVE-2022-2586ŚrednieAktywnie exploitowane
Odkryto, że obiekt lub wyrażenie nft może odwoływać się do zestawu nft w innej tabeli nft, co prowadzi do użycia po zwolnieniu (use-after-free) po usunięciu tej tabeli.
- CVE-2023-38426Krytyczne
W jądrze Linux przed wersją 6.3.4 odkryto problem związany z odczytem poza zakresem w funkcji smb2_find_context_vals. Problem występuje, gdy długość nazwy create_context jest większa niż długość tagu.
- CVE-2023-1380Wysokie
W funkcji brcmf_get_assoc_ies w pliku drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c jądra Linux wykryto problem odczytu poza granicami bufora (slab-out-of-bounds). Do zdarzenia może dojść, gdy dane assoc_info->req_len są większe niż rozmiar bufora zdefiniowany jako WL_EXTRA_BUF_MAX, co prowadzi do odmowy usługi.
- CVE-2023-0386WysokieAktywnie exploitowane
W jądrze Linux znaleziono błąd w podsystemie OverlayFS, dotyczący nieautoryzowanego dostępu do pliku setuid z uprawnieniami podczas kopiowania pliku z montowania nosuid do innego montowania. Błąd mapowania uid pozwala lokalnemu użytkownikowi na eskalację uprawnień w systemie.
- CVE-2023-0266WysokieAktywnie exploitowane
W pakiecie ALSA PCM w jądrze Linux istnieje podatność use-after-free. SNDRV_CTL_IOCTL_ELEM_{READ|WRITE}32 brakuje blokad, które mogą być użyte w use-after-free, co może skutkować eskalacją uprawnień do uzyskania dostępu ring0 z poziomu użytkownika systemu.
- CVE-2022-0995WysokieAktywnie exploitowane
W jądrze Linuxa w podsystemie watch_queue znaleziono błąd zapisu poza zakresem pamięci, który może nadpisać części stanu jądra.
- CVE-2022-27666Wysokie
W kodzie transformacji ESP IPsec w plikach net/ipv4/esp4.c i net/ipv6/esp6.c występuje przepełnienie bufora sterty. Umożliwia to lokalnemu atakującemu z uprawnieniami zwykłego użytkownika nadpisanie obiektów jądra, co może prowadzić do eskalacji uprawnień.
- CVE-2022-0847WysokieAktywnie exploitowane
Błąd w inicjalizacji pola "flags" w nowej strukturze bufora potoku w funkcjach copy_page_to_iter_pipe i push_pipe jądra Linux. Nieuprzywilejowany lokalny użytkownik może nadpisywać strony w pamięci podręcznej powiązane z plikami tylko do odczytu i podnieść uprawnienia.
- CVE-2021-20322Wysokie
W jądrze Linux stwierdzono wadę w przetwarzaniu błędów ICMP (fragmentacja ICMP i przekierowanie ICMP), która umożliwia szybkie skanowanie otwartych portów UDP. Pozwala to zdalnemu użytkownikowi spoza ścieżki na ominięcie randomizacji źródłowego portu UDP.
- CVE-2022-0185WysokieAktywnie exploitowane
Znaleziono błąd przepełnienia bufora na stercie w sposobie, w jaki funkcja legacy_parse_param w funkcjonalności Filesystem Context jądra Linux weryfikowała długość dostarczonych parametrów. Nieuprzywilejowany (w przypadku włączonych nieuprzywilejowanych przestrzeni nazw użytkownika, w przeciwnym razie wymagany jest uprawnienie CAP_SYS_ADMIN w przestrzeni nazw) lokalny użytkownik, który może otworzyć system plików nieobsługujący API Filesystem Context (a zatem korzystający z legacy handling), może wykorzystać tę wadę do eskalacji swoich uprawnień w systemie.
- CVE-2021-22600ŚrednieAktywnie exploitowane
Błąd podwójnego zwolnienia (double free) w funkcji packet_set_ring() w net/packet/af_packet.c może być wykorzystany przez lokalnego użytkownika poprzez spreparowane wywołania systemowe do eskalacji uprawnień lub odmowy usługi. Zaleca się aktualizację jądra poza wersje, których dotyczy problem, lub przebudowanie po commicie ec6af094ea28f0f2dda1a6a33b14cd57e36a9755.
- CVE-2021-1048WysokieAktywnie exploitowane
W funkcji ep_loop_check_proc w pliku eventpoll.c występuje możliwość uszkodzenia pamięci z powodu użycia po zwolnieniu (use-after-free). Może to prowadzić do lokalnej eskalacji uprawnień bez potrzeby dodatkowych uprawnień wykonawczych. Interakcja użytkownika nie jest wymagana do wykorzystania podatności.
- CVE-2021-22555WysokieAktywnie exploitowane
Odkryto podatność polegającą na zapisie poza zakresem sterty w jądrze Linux od wersji v2.6.19-rc1 w pliku net/netfilter/x_tables.c. Pozwala to atakującemu na uzyskanie uprawnień lub spowodowanie DoS (poprzez uszkodzenie pamięci sterty) przez przestrzeń nazw użytkownika.
- CVE-2021-3493WysokieAktywnie exploitowane
Implementacja overlayfs w jądrze Linux nie walidowała poprawnie ustawiania capabilities plików w odniesieniu do przestrzeni nazw użytkowników. W połączeniu z nieuprzywilejowanymi przestrzeniami nazw i łatką w jądrze Ubuntu umożliwiającą nieuprzywilejowane montowanie overlay, atakujący mógł uzyskać podwyższone uprawnienia.
- CVE-2019-13272WysokieAktywnie exploitowane
W jądrze Linux przed wersją 5.1.17 funkcja ptrace_link w kernel/ptrace.c nieprawidłowo obsługuje zapisywanie poświadczeń procesu, co pozwala lokalnym użytkownikom uzyskać dostęp root w określonych scenariuszach relacji rodzic-dziecko, gdzie rodzic obniża uprawnienia i wywołuje execve. Problem obejmuje również kwestię cyklu życia obiektu i błędne oznaczenie relacji ptrace jako uprzywilejowanej.
- CVE-2018-14634WysokieAktywnie exploitowane
W funkcji create_elf_tables() jądra Linux wykryto błąd przepełnienia liczb całkowitych. Nieuprzywilejowany lokalny użytkownik mający dostęp do pliku binarnego SUID (lub innego uprzywilejowanego) może wykorzystać tę lukę do podniesienia uprawnień w systemie. Podatne są wersje jądra 2.6.x, 3.10.x oraz 4.14.x.
- CVE-2017-13715Krytyczne
Funkcja __skb_flow_dissect w jądrze Linux przed wersją 4.3 nie zapewnia inicjalizacji n_proto, ip_proto i thoff, co umożliwia zdalnym atakującym spowodowanie awarii systemu lub potencjalne wykonanie dowolnego kodu za pomocą jednego spreparowanego pakietu MPLS.
- CVE-2017-5897Krytyczne
Funkcja ip6gre_err w jądrze Linuxa umożliwia zdalnym atakującym wywołanie nieokreślonego wpływu poprzez wykorzystanie flag GRE w pakiecie IPv6, co prowadzi do dostępu poza przydzielony obszar pamięci.
- CVE-2016-10150Krytyczne
Podatność typu use-after-free w funkcji kvm_ioctl_create_device w jądrze Linux przed wersją 4.8.13 umożliwia użytkownikom systemu operacyjnego gospodarza spowodowanie awarii systemu (denial of service) lub potencjalne uzyskanie uprawnień poprzez spreparowane wywołania ioctl na urządzeniu /dev/kvm.
- CVE-2016-9555Krytyczne
Funkcja sctp_sf_ootb w jądrze Linux przed wersją 4.8.8 nie sprawdza długości pierwszego kawałka, co pozwala zdalnym atakującym na spowodowanie odmowy usługi (dostęp do pamięci poza przydzielonym obszarem) lub potencjalnie innych nieokreślonych skutków poprzez spreparowane dane SCTP.
- CVE-2016-7117Krytyczne
Podatność typu use-after-free w funkcji __sys_recvmmsg w jądrze Linux przed wersją 4.5.2 pozwala zdalnym atakującym na wykonanie dowolnego kodu poprzez nieprawidłowe przetwarzanie błędów podczas wywołania systemowego recvmmsg.
- CVE-2016-3955Krytyczne
Funkcja usbip_recv_xbuff w jądrze Linux przed wersją 4.5.3 umożliwia zdalnym atakującym spowodowanie odmowy usługi (zapisy poza przydzielonym obszarem pamięci) lub potencjalnie inny nieokreślony wpływ poprzez spreparowaną wartość długości w pakiecie USB/IP.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

