Podatności Linux kernel
5621 znanych podatności CVE w Linux kernel, przetłumaczonych i ocenionych.
- CVE-2025-21707Krytyczne
W jądrze Linux w implementacji MPTCP wykryto podatność polegającą na nieprawidłowym zarządzaniu stanem opcji podrzędnych. Zerowanie maski bitowej przed parsowaniem nie zapewnia spójności stanu, co prowadzi do użycia niezainicjalizowanych pól bitowych i może skutkować błędem KMSAN.
- CVE-2022-49561Krytyczne
W jądrze Linux naprawiono podatność w module netfilter conntrack, gdzie po wstawieniu wpisu conntrack może dojść do kolizji, co prowadzi do zwolnienia skb->_nfct i ustawienia go na już potwierdzony wpis. Problem nie był wcześniej wykrywany ze względu na opóźnione zwalnianie pamięci i konieczność włączenia zdarzeń.
- CVE-2022-49418Krytyczne
W jądrze Linux w podsystemie NFSv4 występuje błąd polegający na zwolnieniu niezainicjalizowanej struktury nfs4_label podczas wyszukiwania referencji (referral lookup). Poprawka polega na przekazaniu już zaalokowanego atrybutu fattr wraz z nfs4_fs_locations i usunięciu kopiowania fattr, co naprawia awarię (crash) podczas operacji 'ls'.
- CVE-2022-49407Krytyczne
W jądrze Linux w module DLM wykryto podatność powodującą nieprawidłowy odczyt pamięci (invalid read) podczas obsługi operacji odblokowania plików (plock). Błąd polega na tym, że struktura 'plock_op' jest rzutowana na 'plock_xop' i odczytywane są pola, które nie są dostępne w tej strukturze, co prowadzi do odczytu poza zakresem (slab-out-of-bounds). Poprawka polega na przeniesieniu pola 'callback' do 'struct plock_op', aby wskazywało, kiedy rzutowanie jest dozwolone.
- CVE-2022-49362Krytyczne
W jądrze Linux w funkcji nfsd_file_put() w NFSD naprawiono potencjalne użycie po zwolnieniu (use-after-free). Funkcja nfsd_file_put_noref() może zwolnić obiekt @nf, więc nie należy go dereferencjonować po powrocie.
- CVE-2022-49356Krytyczne
W jądrze Linux w funkcji svc_rdma_build_writes() w SUNRPC naprawiono problem przepełnienia segmentów RDMA. Dodano zabezpieczenie, aby zapobiec wychodzeniu poza tablicę segmentów w chunkach Write.
- CVE-2022-49280Krytyczne
W jądrze Linux w funkcji nfssvc_decode_writeargs() w NFSD naprawiono problem niedomiaru (underflow) argumentu 'args->len'. Zmieniono typ na unsigned, aby zapobiec tej sytuacji.
- CVE-2022-49260Krytyczne
W jądrze Linux w sterowniku kryptograficznym hisilicon/sec naprawiono problem z fallbackiem oprogramowania dla aead. Nieprawidłowe użycie wskaźnika subreq powodowało sporadyczne paniki systemu przy ustawieniu strony 64K.
- CVE-2022-49194Krytyczne
W jądrze Linux w sterowniku bcmgenet wykryto problem z kolejnością operacji odczytu/zapisu rejestrów urządzenia. Kompilator GCC12 optymalizuje operacje na pamięci w sposób, który łamie zakładaną kolejność, co prowadzi do przekroczenia limitu czasu kolejki transmisyjnej i ostrzeżeń NETDEV WATCHDOG. Poprawka polega na użyciu bezpieczniejszych funkcji readl/writel zamiast wariantów relaxed.
- CVE-2022-49149Krytyczne
W jądrze Linux w module rxrpc występuje wyścig między uruchomieniem timera wywołania a zniszczeniem wywołania, co może prowadzić do ponownego uruchomienia timera po zatrzymaniu i potencjalnego błędu (oops). Poprawka polega na przejęciu referencji do struktury rxrpc_call przed uruchomieniem timera.
- CVE-2022-49094Krytyczne
W jądrze Linux w module net/tls naprawiono błąd slab-out-of-bounds w funkcji decrypt_internal. Problem wynikał z nieprawidłowego rozmiaru IV dla AES128-CCM, co powodowało odczyt poza przydzieloną pamięcią.
- CVE-2022-49058Krytyczne
W jądrze Linuxa naprawiono podatność w sterowniku cifs, która mogła prowadzić do przepełnienia bufora podczas obsługi dowiązań symbolicznych. Problem wynikał z braku sprawdzenia, czy długość linku (link_len) nie przekracza rozmiaru bufora link_str. Dodano odpowiednie sprawdzenie.
- CVE-2025-21673Krytyczne
W jądrze Linux w kliencie CIFS/SMB wykryto podwójne zwolnienie pamięci pola hostname w strukturze TCP_Server_Info. Problem występuje, gdy wątek cifsd podczas zamykania serwera nadal próbuje łączyć się z wieloma celami DFS, zanim zakończy pętlę, co prowadzi do wyścigu i podwójnego zwolnienia pamięci.
- CVE-2024-57947Krytyczne
W jądrze Linux w module netfilter (nf_set_pipapo) występuje błąd w inicjalizacji mapy wypełnienia podczas wyszukiwania w zestawach. Początkowy bufor jest inicjowany na wszystkie jedynki, ale ograniczenie do rozmiaru pierwszego pola jest pomijane, co powoduje wyciek bitów do kolejnych rund i błędne wyniki dopasowania dla zestawów, gdzie pierwsze pole nie jest największe.
- CVE-2025-21663Krytyczne
W sterowniku dwmac-tegra dla kontrolerów MGBE w jądrze Linuxa stwierdzono podatność polegającą na użyciu zakodowanego na stałe identyfikatora strumienia IOMMU (SID) dla kontrolera MGBE0, zamiast odczytywania go z drzewa urządzeń. Powoduje to przekazywanie nieprawidłowego SID do rejestru MGBE_WRAP_AXI_ASID0_CTRL dla innych kontrolerów (np. MGBE1), co prowadzi do przekroczeń czasu oczekiwania miękkiego przerwania (softirq) i paniki jądra.
- CVE-2024-57936Krytyczne
W jądrze Linux w sterowniku RDMA/bnxt_re występuje problem z maksymalną liczbą SGE (Scatter-Gather Elements) dla żądań roboczych. Dla generacji P7 zgłaszane jest 13 SGE, ale struktura WQE może pomieścić tylko 6, co prowadzi do awarii ruchu i systemu.
- CVE-2024-57932Krytyczne
W jądrze Linux w sterowniku gve brakuje zabezpieczenia w callbacku XDP XMIT NDO, który powinien sprawdzać, czy dedykowane kolejki XDP istnieją. Gdy program XDP nie jest zainstalowany lub interfejs jest w dół, może wystąpić dzielenie przez zero lub dostęp do pustego wskaźnika TX.
- CVE-2024-57882Krytyczne
W jądrze Linux wykryto podatność w implementacji MPTCP, polegającą na błędnym obliczaniu długości opcji TCP, co prowadzi do przepełnienia bufora opcji. W pewnych okolicznościach opcja ADD_ADDR nie jest poprawnie wykluczana z opcją DSS, co powoduje uszkodzenie pamięci (nr_frags) i może doprowadzić do awarii systemu (paniki jądra).
- CVE-2024-57802Krytyczne
W jądrze Linux wykryto podatność w protokole NET/ROM (netrom), gdzie funkcja nr_route_frame nie sprawdza długości bufora przed dostępem do danych. Może to prowadzić do odczytu niezainicjalizowanej pamięci, co zostało zgłoszone przez narzędzie Syzkaller.
- CVE-2024-36476Krytyczne
W jądrze Linuxa w podsystemie RDMA/rtrs naprawiono błąd powodujący dereferencję wskaźnika NULL. Deklaracja listy 'ib_sge list' została przeniesiona poza blok 'always_invalidate', aby była dostępna w całej funkcji, co eliminuje awarię typu 'BUG: kernel NULL pointer dereference'.
- CVE-2024-57843Krytyczne
W jądrze Linux w sterowniku virtio-net występuje błąd przepełnienia w funkcji virtnet_rq_alloc. Gdy fragment (frag) ma rozmiar jednej strony, a całkowity rozmiar bufora wraz z strukturą virtnet_rq_dma przekracza rozmiar strony, może dojść do przepełnienia, co prowadzi do awarii systemu lub błędów SCP.
- CVE-2024-57793Krytyczne
W jądrze Linux w module virt: tdx-guest występuje podatność polegająca na tym, że w maszynach wirtualnych CoCo niegodny zaufania host może spowodować niepowodzenie funkcji set_memory_decrypted(), co skutkuje zwróceniem pamięci współdzielonej do alokatora stron. Może to prowadzić do problemów funkcjonalnych lub bezpieczeństwa. Poprawka polega na wycieku odszyfrowanej pamięci w przypadku błędu, bez drukowania komunikatu, ponieważ funkcja set_memory_decrypted() sama wywołuje WARN_ONCE().
- CVE-2024-49571Krytyczne
W jądrze Linux w module net/smc podczas odbierania wiadomości propozycji (proposal msg) na serwerze, pola iparea_offset i ipv6_prefixes_cnt pochodzą od zdalnego klienta i nie są w pełni zaufane. Jeśli iparea_offset przekroczy maksymalną wartość, może dojść do dostępu do nieprawidłowego adresu i awarii systemu. Łata dodaje sprawdzenie tych pól przed ich użyciem.
- CVE-2024-49568Krytyczne
W jądrze Linux w module net/smc podczas odbierania wiadomości propozycji (proposal msg) na serwerze, pola v2_ext_offset, eid_cnt i ism_gid_cnt pochodzą od zdalnego klienta i nie są w pełni zaufane. Nieprawidłowe wartości mogą prowadzić do dostępu pod zły adres i awarii. Poprawka dodaje sprawdzenie tych pól przed ich użyciem.
- CVE-2024-47408Krytyczne
W jądrze Linux w module net/smc podczas odbierania wiadomości propozycji (proposal msg) na serwerze, pole smcd_v2_ext_offset pochodzi od zdalnego klienta i nie jest w pełni zaufane. Jeśli wartość smcd_v2_ext_offset przekroczy maksymalną wartość, może dojść do dostępu do nieprawidłowego adresu i awarii systemu. Łata dodaje sprawdzenie wartości smcd_v2_ext_offset przed jej użyciem.
- CVE-2024-56779Krytyczne
W jądrze Linux wykryto podatność w serwerze NFS (nfsd), która prowadzi do wycieku pamięci (memory leak) podczas równoczesnych operacji otwierania plików (nfsd4_open). Problem wynika z nieprawidłowego zarządzania obiektami nfs4_openowner, gdy dwa równoległe żądania otwarcia tego samego pliku są przetwarzane przez różne wątki nfsd. W skrajnych przypadkach może to doprowadzić do awarii systemu (kernel panic) podczas zatrzymywania serwera NFS.
- CVE-2024-56719Krytyczne
W jądrze Linux w sterowniku stmmac wykryto błąd w obsłudze DMA dla TSO, który powoduje oops. Problem wynika z przesunięcia przypisania cookie DMA w funkcji stmmac_tso_xmit(), co prowadzi do niezgodności z wymaganiami API DMA. Skutkuje to niepowodzeniem mapowania DMA i komunikatami o próbie zwolnienia nieprzydzielonej pamięci DMA.
- CVE-2024-56645Krytyczne
W jądrze Linux w podsystemie CAN (J1939) występuje błąd w zliczaniu referencji skb w funkcji j1939_session_new(). Funkcja j1939_session_skb_queue() wykonuje dodatkowe skb_get() dla każdego nowego skb, ale dla początkowego skb tego nie robi, co prowadzi do niedomiaru licznika referencji.
- CVE-2024-53209Krytyczne
W jądrze Linuxa w sterowniku bnxt_en wykryto podatność związaną z nieprawidłowym zarządzaniem parametrami pierścienia odbiorczego podczas zmiany MTU przy aktywnym XDP. Zmiana MTU po podłączeniu bufora wielokrotnego XDP może prowadzić do niespójności konfiguracji pierścienia agregacji, co skutkuje przypadkowym uszkodzeniem pamięci i awariami systemu.
- CVE-2024-53206Krytyczne
W jądrze Linux w stosie TCP występuje podatność use-after-free w funkcji reqsk_timer_handler(). Poprzednia poprawka zastąpiła inet_csk_reqsk_queue_drop_and_put() przez __inet_csk_reqsk_queue_drop() i reqsk_put(), ale przekazuje niewłaściwy wskaźnik (req zamiast oreq) do reqsk_put(), co może prowadzić do użycia po zwolnieniu.
- CVE-2024-53186Krytyczne
W jądrze Linux w module ksmbd występuje podatność polegająca na wyścigu między obsługą żądań SMB w funkcji ksmbd_conn_handler_loop() a zwalnianiem struktury ksmbd_conn w handlerze workqueue handle_ksmbd_work(). Prowadzi to do użycia po zwolnieniu (UAF). Poprawka rozwiązuje ten problem.
- CVE-2024-53179Krytyczne
W kliencie SMB jądra Linux wykryto użycie po zwolnieniu (use-after-free) klucza podpisującego w strukturze sesji. Wyścig między operacjami montowania a wysyłaniem pakietów może prowadzić do dostępu do zwolnionej pamięci podczas obliczania podpisu.
- CVE-2024-53176Krytyczne
W jądrze Linux w systemie plików CIFS/SMB wykryto podatność prowadzącą do BUG-a podczas odmontowywania. Wyścig między procesem odmontowania a operacjami na katalogach buforowanych powoduje, że dentry nie są zwalniane, co wywołuje błąd jądra. Problem rozwiązano przez przeniesienie zwalniania dentry do kolejki prac i odpowiednie synchronizowanie.
- CVE-2024-53146Krytyczne
W jądrze Linuxa w module NFSD wykryto potencjalne przepełnienie liczby całkowitej. Jeśli długość tagu jest większa lub równa U32_MAX - 3, operacja dodawania "length + 4" może spowodować przepełnienie. Poprawka polega na podzieleniu dekodowania na kilka kroków, aby uniknąć arytmetyki na niebezpiecznej wartości długości.
- CVE-2024-53138Krytyczne
W jądrze Linux w sterowniku mlx5e dla kTLS wykryto nieprawidłowe zliczanie referencji stron. Mieszanie funkcji get_page() i page_ref_inc() przy zwiększaniu referencji oraz używanie tylko put_page() przy zwalnianiu prowadzi do zbyt częstego dereferencjonowania strony folio, co może powodować błędy pamięci.
- CVE-2024-53094Krytyczne
W jądrze Linux w sterowniku RDMA/siw brakuje sprawdzenia sendpage_ok(), co prowadzi do użycia strony slab w sendpage i wyzwala ostrzeżenie w skb_splice_from_iter(). Problem występuje podczas pracy ISER over SIW.
- CVE-2024-53066Krytyczne
W jądrze Linuxa w funkcji decode_getfattr_attrs() w systemie NFS wykryto ostrzeżenie KMSAN o użyciu niezainicjalizowanej wartości. Pole fattr->mdsthreshold nie jest inicjalizowane, co może prowadzić do nieprawidłowego działania.
- CVE-2024-53058Krytyczne
W jądrze Linux w sterowniku sieciowym stmmac wykryto podatność związaną z niezbalansowanym mapowaniem/odmapowywaniem DMA dla danych niebędących stronami (non-paged) w kontekście TSO. Błędne przypisanie adresu bufora DMA do niewłaściwego elementu tablicy tx_skbuff_dma powoduje przedwczesne odmapowanie bufora, zanim sprzęt DMA zakończy jego użycie. Może to prowadzić do transmisji uszkodzonych danych lub błędów IOMMU.
- CVE-2024-50286Krytyczne
W jądrze Linux w module ksmbd występuje podatność slab-use-after-free w funkcji ksmbd_smb2_session_create. Istnieje wyścig między tą funkcją a ksmbd_expire_session, co wymaga dodania brakującego blokowania tabeli sesji podczas dodawania/usuwania sesji z globalnej tabeli.
- CVE-2024-50283Krytyczne
W jądrze Linuxa w serwerze ksmbd naprawiono podatność typu slab-use-after-free w funkcji smb3_preauth_hash_rsp. Wywołanie ksmbd_user_session_put powinno być wykonane w obrębie smb3_preauth_hash_rsp, aby uniknąć zwolnienia sesji przed jej użyciem.
- CVE-2024-50276Krytyczne
W jądrze Linux naprawiono podatność w sterowniku Vertexcom MSE102x, która mogła prowadzić do podwójnego zwolnienia bufora skb (TX skb). Problem występował, gdy konieczne było powiększenie bufora TX skb — zwalniano oryginalny bufor zamiast tymczasowego, co skutkowało ponownym zwolnieniem w funkcji mse102x_tx_work() i awarią systemu.
- CVE-2024-50206Krytyczne
W jądrze Linux w module net: ethernet: mtk_eth_soc występuje podatność polegająca na uszkodzeniu pamięci podczas inicjalizacji DMA fq. Pętla odpowiedzialna za alokację buforów MTK_FQ_DMA_LENGTH dotyka zbyt wielu deskryptorów, co prowadzi do uszkodzenia niezwiązanej pamięci. Poprawka koryguje liczbę iteracji pętli.
- CVE-2024-50152Krytyczne
W jądrze Linux w kliencie SMB (smb2_set_ea()) wykryto możliwość podwójnego zwolnienia pamięci. Błąd występuje, gdy po pierwszym zwolnieniu zmienna 'ea' nie jest ponownie inicjalizowana przed kolejną próbą, co prowadzi do drugiego zwolnienia tej samej pamięci.
- CVE-2024-50086Krytyczne
W jądrze Linux w module ksmbd występuje problem użycia po zwolnieniu (UAF) podczas wylogowywania sesji SMB2. Istnieje wyścig między wylogowaniem sesji a jej ustanowieniem, co może prowadzić do UAF. Poprawka dodaje blokadę sesji przy ustawianiu flagi SMB2_SESSION_EXPIRED oraz licznik referencji do struktury sesji, aby zapobiec jej zwolnieniu podczas użycia.
- CVE-2024-50043Krytyczne
W jądrze Linux w serwerze NFS (nfsd) występuje problem w obsłudze FREE_STATEID. Wysłanie wielu FREE_STATEID dla tego samego stanu delegacji może prowadzić do użycia po zwolnieniu (UAF) lub niedomiaru licznika referencji. Poprawka dotyczy sekcji krytycznej w nfsd4_free_stateid(), gdzie blokada jest zwalniana przed wywołaniem nfs4_put_stid(), co pozwala na ponowne znalezienie stanu.
- CVE-2024-50033Krytyczne
W jądrze Linux wykryto podatność w funkcji slhc_remember() sterownika SLIP, która nieprawidłowo weryfikowała pakiety sieciowe. Brak odpowiednich sprawdzeń mógł prowadzić do odczytu niezainicjalizowanej pamięci, co zostało zgłoszone przez narzędzie syzbot.
- CVE-2022-49003Krytyczne
W jądrze Linux wykryto podatność w podsystemie NVMe, polegającą na braku ochrony SRCU podczas przeglądania listy nvme_ns_head w funkcji nvme_mpath_revalidate_paths(). Brak synchronizacji przy usuwaniu przestrzeni nazw może prowadzić do użycia po zwolnieniu (use-after-free) podczas współbieżnego skanowania.
- CVE-2022-48985Krytyczne
W jądrze Linux w sterowniku sieciowym mana występuje wyścig (race condition) dotyczący zmiennej per-CQ napi work_done. Po wywołaniu napi_complete_done() bit NAPIF_STATE_SCHED może zostać wyczyszczony, a inny procesor może uruchomić wątek napi i uzyskać dostęp do zmiennej cq->work_done. Jeśli inny wątek ustawi ją na wartość >= budget, ten wątek będzie kontynuował działanie, gdy powinien się zatrzymać, co może prowadzić do uszkodzenia pamięci i paniki. Poprawka zapisuje zmienną work_done w zmiennej lokalnej przed napi_complete_done(), aby uniknąć jej uszkodzenia.
- CVE-2024-49996Krytyczne
W jądrze systemu Linux naprawiono podatność związana z przepełnieniem bufora podczas analizy punktów ponownego przetwarzania NFS. Problem wynikał z nieprawidłowego obliczania rozmiaru bufora danych, co prowadziło do dostępu poza jego granice.
- CVE-2024-49855Krytyczne
W jądrze Linux w module nbd występuje wyścig między timeoutem a normalnym zakończeniem żądania. Jeśli timeout jest obsługiwany przez nbd_requeue_cmd(), normalne zakończenie musi zostać zatrzymane, aby uniknąć użycia po zwolnieniu (UAF). Poprawka czyści flagę NBD_CMD_INFLIGHT w nbd_requeue_cmd() i zapewnia, że blokada cmd->lock jest przechwycona przed wyczyszczeniem flagi i ponownym umieszczeniem w kolejce.

