Katalog podatności CVE
Przetłumaczone opisy podatności z bazy NVD NIST - w języku polskim
Przeglądaj podatności według pakietuKatalog CISA KEV zaktualizowany: (v2026.11.06)
Cotygodniowy digest CVE
Jeden mail w tygodniu z nowo opublikowanymi podatnościami, o których warto wiedzieć. Bez zakładania konta.
Digest dotyczy ogólnie nowych podatności, nie Twoich serwerów. Jeśli chcesz wiedzieć, które z nich faktycznie działają w Twojej infrastrukturze, tym zajmuje się Secvalis : skanuje Twoje maszyny i zgłasza wyłącznie to, co ich dotyczy.
W jądrze Linux funkcja __svc_create() ignorowała wartości zwracane przez percpu_counter_init() przy inicjalizacji trzech liczników statystyk puli RPC. Gdy alokacja per-CPU pamięci nie powiedzie się (np. przy presji pamięciowej), usługa RPC (nfsd, lockd, callback NFS) jest uruchamiana z niepoprawnie zainicjalizowanymi licznikami, których wskaźnik per-CPU ma wartość NULL. Powoduje to cichą korupcję danych w obszarze per-CPU bieżącego procesora oraz zwracanie błędnych wartości w /proc/fs/nfsd/pool_stats.
W jądrze Linux występuje wyścig podczas odbioru backchannel, gdy usługa callback NFS jest niszczona. xprt_enqueue_bc_request() może pominąć zakolejkowanie lub zwolnienie żądania, jeśli xprt->bc_serv zostało już wyczyszczone, prowadząc do wycieku lub użycia zwolnionej struktury.
W jądrze Linux funkcja svc_rqst_free() zwalnia rq_argp i rq_resp synchronicznie, podczas gdy struktura rqstp jest zwalniana przez kfree_rcu(). Powoduje to okno, w którym czytelnicy RCU mogą uzyskać dostęp do już zwolnionych pól, prowadząc do use-after-free.
W jądrze Linux naprawiono cztery powiązane błędy w dekoderze tablicy opcji gssx (SUNRPC). Błędy powodowały dereferencję NULL w funkcji wywołującej, wyciek licznika referencji obiektu group_info oraz potencjalne użycie zwolnionej pamięci (use-after-free).
W jądrze Linux występuje podatność use-after-free w funkcjach __rpc_clnt_handle_event i __rpc_clnt_remove_pipedir w podsystemie sunrpc. Pole clnt->pipefs_sb nie jest odświeżane przy zdarzeniach montowania ani czyszczone przy odmontowaniu, co prowadzi do porównania z nieaktualnym wskaźnikiem i pominięcia sprzątania. W efekcie wpisy pipefs mogą wskazywać na zwolnioną strukturę rpc_clnt, co powoduje use-after-free podczas późniejszych wywołań rpc_info_open() lub rpc_show_info().
W jądrze Linux naprawiono podatność w funkcji gss_krb5_unwrap_v2() modułu SUNRPC, która przed walidacją długości tokenu odczytywała pola nagłówka EC i RRC poza granicami bufora. Błędna arytmetyka na liczbach bez znaku (underflow) mogła prowadzić do memmove o rozmiarze bliskim UINT_MAX, a w przypadku zerowej długości bufora do dzielenia przez zero. Dodano cztery zabezpieczenia walidujące długość tokenu i bufora.
W jądrze Linux naprawiono podatność w funkcji gss_unwrap_resp_priv() w module SUNRPC. Błędna walidacja długości tokenu RPCSEC_GSS (opaque_len) pozwalała na przepełnienie arytmetyki u32 oraz brak dolnego limitu długości, co umożliwiało odczyty poza zakresem bufora w gss_krb5_unwrap_v2().
W jądrze Linux występuje wyścig (race condition) w module sunrpc. Wpis /proc/net/rpc/use-gss-proxy jest publikowany przez proc_create_data() zanim mutex sn->gssp_lock zostanie zainicjalizowany przez mutex_init(), co pozwala zapisującemu procesowi użyć niezainicjalizowanego muteksa.
W jądrze Linux w funkcji gssx_dec_option_array() podsystemu SUNRPC nie odrzucane są zduplikowane opcje CREDS_VALUE. Każde wystąpienie CREDS_VALUE powoduje wywołanie gssx_dec_linux_creds(), które nadpisuje creds->cr_group_info bez zwolnienia poprzedniej alokacji, prowadząc do wycieku pamięci. Wystarczy odpowiedź zawierająca dwie opcje CREDS_VALUE, aby wyciekła pierwsza alokacja group_info.
W jądrze Linux naprawiono podatność w funkcji gss_krb5_unwrap_v2() w module SUNRPC. Token Kerberos v2 z polem 'extra count' (ec) większym niż długość tekstu jawnego, mimo że pochodzi od uwierzytelnionego peera z ważnym kontekstem GSS, pozostawiał bufor xdr_buf w niespójnym stanie (zerowa długość, niezgodne długości iov). Poprawka odrzuca takie tokeny przed wywołaniem xdr_buf_trim(), zwracając błąd GSS_S_DEFECTIVE_TOKEN.
W jądrze Linux występuje luka w funkcji gss_krb5_verify_mic_v2() z modułu SUNRPC, która nie sprawdza minimalnej długości tokenu MIC przed odczytem danych. Zdalny atakujący (np. złośliwy serwer NFS) może przesłać zbyt krótki token, powodując odczyt poza zaalokowanym buforem. Problem został naprawiony poprzez dodanie sprawdzenia długości tokenu.
W jądrze Linux w funkcji xs_tls_handshake_sync() podsystemu SUNRPC występuje problem use-after-free związany z wyścigiem przy anulowaniu uzgadniania TLS. Gdy handshake_req_cancel() zwróci false (bo handshake_complete() już oznaczył żądanie jako zakończone), oczekujący może zwolnić referencję do niższego transportu, zanim callback xs_tls_handshake_done() zakończy działanie. Może to doprowadzić do zwolnienia transportu w trakcie jego użycia.
W jądrze Linux w funkcji svc_rdma_free() podsystemu svcrdma występuje use-after-free wynikający z kolejności operacji. Funkcja rpcrdma_rn_unregister() jest wywoływana po rdma_destroy_id(), przez co wpis sc_rn pozostaje w rd_xa urządzenia po zwolnieniu cm_id. Równoległe przejście ib_unregister_device może wywołać svc_rdma_xprt_done() na zwolnionym sc_cm_id. Dodatkowo brak sprawdzenia NULL przy dereferencji sc_cm_id.
W jądrze Linux w module svcrdma, gdy obsługa zdarzenia ADDR_CHANGE tworzy zastępczy identyfikator połączenia (cm_id) i alokacja się nie powiedzie, wskaźnik sc_cm_id nadal wskazuje na stary cm_id, który rdzeń CM ma zniszczyć. Późniejsze użycie sc_cm_id, np. w wywołaniu rdma_disconnect() z svc_rdma_detach(), prowadzi do use-after-free.
W jądrze Linux naprawiono błąd w funkcji svc_rdma_read_chunk_range() w module svcrdma, dotyczący arytmetyki przesunięć przy budowaniu zakresu odczytu chunków RDMA. Błędne użycie operatora '>' zamiast '>=' oraz niewłaściwe zastosowanie min_t() powodowało niedomiar typu u32, zawyżone długości DMA i potencjalnie duże alokacje pamięci (multi-MiB kmalloc_array_node). Dodatkowo funkcja odrzucała poprawne żądania z zerową długością.
W jądrze Linux występuje podatność w komponencie svcrdma związana z makrem pcl_for_each_segment. Gdy lista segmentów zawiera chunk z ch_segcount równym zero, obliczenie górnej granicy powoduje niedomiar (underflow) i wyjście poza zakres tablicy ch_segments, co prowadzi do odczytu poza granicami pamięci i błędu general protection fault. Problem jest osiągalny z sieci poprzez chunk Write lub Reply z zerową liczbą segmentów, gdy transport negocjuje Send-With-Invalidate.
W jądrze Linux w module svcrdma funkcja handle_connect_req() nie podejmuje żadnych działań, gdy svc_rdma_create_xprt() nie zdoła zaalokować nowego transportu. Ponieważ rdzeń CM zwraca 0 dla zdarzeń CONNECT_REQUEST, nowy rdma_cm_id nie jest niszczony, co przy presji pamięci powoduje wyciek jednego rdma_cm_id na każdą nieudaną alokację.
W jądrze Linux występuje podatność w module svcrdma (RPC-over-RDMA). Klient może zażądać odpowiedzi bez listy zapisu lub fragmentu odpowiedzi, co powoduje, że funkcja linearyzująca kopiuje dane poza bufor sc_xprt_buf i uszkadza sąsiednią pamięć slab. Nadmiarowa długość jest następnie zapisywana w sc_sges[0].length i wysyłana do urządzenia, które odczytuje dane poza zmapowanym obszarem.
W jądrze Linux w module svcrdma dekoder listy Read RPC/RDMA przechowuje długości segmentów podane w komunikacie bez walidacji. Zbyt duża wartość rs_length trafia do svc_rdma_build_read_segment(), gdzie na jej podstawie wyliczany jest nr_bvec i może dojść do dużej dynamicznej alokacji bvec przed sprawdzeniem liczby dostępnych rq_pages; jeśli zabezpieczenie przed przekroczeniem stron zadziała, świeżo pozyskany kontekst rw nie jest zwracany, co powoduje wyciek zasobu.
W jądrze Linux w module svcrdma pojedyncze długości segmentów Read są walidowane podczas dekodowania, ale nic nie powstrzymuje klienta przed wysłaniem wielu segmentów, których łączna długość przekracza budżet tablicy rq_pages. Gdy jeden segment dokładnie wypełnia tablicę stron, zabezpieczenie w svc_rdma_build_read_segment() jest pomijane, ponieważ len osiąga zero, a kolejny segment sięga do slotu sentinela NULL w rq_pages[rq_maxpages], powodując dereferencję NULL podczas mapowania DMA.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

