Podatności Linux kernel
10 419 znanych podatności CVE w Linux kernel, przetłumaczonych i ocenionych.
- CVE-2026-89649Krytyczne
W jądrze Linux występuje luka w funkcji __build_xattrs() w podsystemie Ceph, która dekoduje atrybuty xattr dostarczone przez serwer MDS. Brak sprawdzenia długości wartości ostatniego atrybutu pozwala złośliwemu lub przejętemu serwerowi metadanych ustawić długość większą niż rzeczywisty rozmiar bufora, co prowadzi do odczytu poza granicami alokacji. Poprawka dodaje wymaganą weryfikację ceph_decode_need(), która zwraca -EIO zamiast przechowywania nieprawidłowej długości.
- CVE-2026-89643Krytyczne
W jądrze Linux w funkcji audit_del_rule() występuje błąd use-after-free przy automatycznym usuwaniu reguł fsnotify. Bezwarunkowe audit_put_tree() zakłada przypadek szablonu, przez co dla reguł mieszanych AUDIT_DIR i AUDIT_EXE zdarzenie autoremove zwalnia żywą referencję drzewa zainstalowanej reguły. Powtórzenie tego może zwolnić drzewo, gdy inna reguła wciąż je referencjonuje, prowadząc do dereferencji zwolnionej ścieżki. Poprawka przenosi zwolnienie tymczasowego drzewa do audit_rule_change().
- CVE-2026-89630Krytyczne
W kliencie SMB jądra Linux funkcja is_valid_oplock_break() przestała skutecznie sprawdzać pole DataOffset. W wyniku wcześniejszej zmiany w obsłudze nagłówka RFC1002 wyrażenie używane do walidacji zawsze daje zero, przez co sprawdzenie nigdy nie odrzuca nieprawidłowych wartości.
- CVE-2026-89610Krytyczne
W jądrze Linux w dekoderze par mapowania systemu plików NTFS brakowało sprawdzenia, czy długość zakresu nie wykracza poza granicę wolumenu. Złośliwy obraz NTFS mógł spowodować dostęp do pamięci poza granicą wolumenu, prowadząc do uszkodzenia pamięci i eskalacji uprawnień.
- CVE-2026-89558Krytyczne
W jądrze Linux w funkcji raid10_sync_request() zmienna still_degraded została odwrócona (przypisano false zamiast true) podczas konwersji z int na bool. Powoduje to, że podczas odbudowy urządzenia przy jednoczesnym braku innego dysku lustrzanego bitmapa jest czyszczona nieprawidłowo, co prowadzi do cichego uszkodzenia danych po ponownym dodaniu brakującego dysku.
- CVE-2026-89555Krytyczne
W jądrze Linux funkcja mpls_select_multipath() buforuje wskaźnik hdr do nagłówka MPLS, a następnie wywołuje pskb_may_pull(), która może zastąpić nagłówek skb i zwolnić stary, pozostawiając hdr wskazujący na zwolnioną pamięć. Prowadzi to do use-after-free podczas odczytu wewnętrznego nagłówka IP.
- CVE-2026-89551Krytyczne
W jądrze Linux funkcja xdr_buf_trim() nie ogranicza odejmowania od buf->len, co przy wartości buf->len mniejszej niż suma iov_lens prowadzi do niedomiaru (underflow) i zawinięcia do wartości bliskiej UINT_MAX. Stan ten jest osiągalny przez gss_krb5_unwrap_v2(), a zawinięta wartość propaguje się do wszystkich niższych dekoderów XDR.
- CVE-2026-89550Krytyczne
W jądrze Linux w funkcji svcauth_gss_unwrap_priv() sprawdzana była tylko górna granica długości tokenu dostarczonego przez sieć, bez minimalnej długości. Token krótszy lub równy 16 bajtów (rozmiar nagłówka RFC 4121) trafiał do gss_krb5_unwrap_v2(), gdzie odczyt nagłówka wykraczał poza bufor, a funkcja rotate_left() mogła doprowadzić do dzielenia przez zero. Podatność naprawiono dodając sprawdzenie minimalnej długości tokenu przed przekazaniem go do mechanizmu unwrap.
- CVE-2026-89546Krytyczne
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.
- CVE-2026-89542Krytyczne
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.
- CVE-2026-89541Krytyczne
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().
- CVE-2026-89538Krytyczne
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.
- CVE-2026-89537Krytyczne
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.
- CVE-2026-89536Krytyczne
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.
- CVE-2026-89533Krytyczne
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ą.
- CVE-2026-89532Krytyczne
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.
- CVE-2026-89530Krytyczne
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.
- CVE-2026-89526Krytyczne
W jądrze Linux w module svcrdma pole pozycji fragmentu Read RPC/RDMA jest dostarczane przez zdalnego klienta i przechowywane bez weryfikacji. xdr_count_read_segments() sprawdza tylko wyrównanie do 4 bajtów i nigdy nie porównuje pozycji z długością otrzymanego ciała inline, co w ścieżce pojedynczego fragmentu prowadzi do niedomiaru długości ogona i ujawnienia sąsiedniej pamięci slab, a w ścieżce wielu fragmentów do niedomiarów przy obliczaniu odstępów i kopiowania poza bufor odbioru.
- CVE-2026-89479Krytyczne
W jądrze Linux występuje podatność use-after-free w obsłudze protokołu SCTP. Zdalny peer może w jednym pakiecie połączyć chunki COOKIE ECHO, SHUTDOWN i SHUTDOWN ACK, co prowadzi do zwolnienia asocjacji i jej transportów, a następnie do zapisu do zwolnionej pamięci w pętli endpointu. Problem występuje, gdy pakiet jest przetwarzany z kolejki backlogu gniazda w kontekście zadania.
- CVE-2026-89478Krytyczne
W jądrze Linux w funkcji sctp_rcv() transport jest przypisywany do chunka i pozostaje w nim do momentu przetworzenia. Uwierzytelniony pakiet ASCONF DEL-IP może w międzyczasie usunąć ten transport z asocjacji i zwolnić go przez RCU, a następnie kolejny opóźniony SACK odczytuje stan już zwolnionego transportu. Podatność prowadzi do use-after-free.
- CVE-2026-89448Krytyczne
W jądrze Linux w funkcji detect_intel_iommu() warunki żądania ACS nie uwzględniały tboot, co mogło prowadzić do błędnej konfiguracji z wyłączonym ACS, gdy IOMMU jest później wymuszane przez tboot_force_iommu(). Poprawka dodaje sprawdzenie tboot w detect_intel_iommu().
- CVE-2026-81002Krytyczne
W jądrze Linux funkcja xdp_convert_zc_to_xdp_frame() klonuje pakiet XSK do strony rzędu 0 i ogłasza PAGE_SIZE jako rozmiar ramki, pozwalając skopiowanej ramce zająć ogon strony potrzebny dla skb_shared_info. Prowadzi to do nakładania się skb na skb_shared_info lub umieszczenia go poza przydzieloną stroną, co skutkuje błędem KASAN slab-out-of-bounds w skb_gro_receive.
- CVE-2026-80986Krytyczne
W jądrze Linux występuje błąd w module net/smc, gdzie liczba kluczy rkey partnera w komunikatach SMC-Rv2 LLC nie jest ograniczana. Na łączach z urządzeniem o max_recv_sge == 1 funkcja smc_llc_save_add_link_rkeys() odczytuje rozszerzenie v2 poza zaalokowanym buforem, co prowadzi do odczytu poza granicami (slab-out-of-bounds). Błąd występuje przy każdym dodaniu łącza SMC-Rv2, niezależnie od danych wysłanych przez partnera.
- CVE-2026-80981Krytyczne
W jądrze Linux w funkcji smc_llc_srv_add_link() (podsystem net/smc) występuje błąd use-after-free. Wskaźnik add_llc wskazuje na wpis kolejki, który zostaje zwolniony przez smc_llc_flow_qentry_del(), a następnie jest używany w smc_llc_save_add_link_rkeys() na łączu bez współdzielonego bufora odbioru v2. Problem został naprawiony.
- CVE-2026-80980Krytyczne
W jądrze Linux w podsystemie net/smc trzy flagi stanu połączenia (killed, freed, out_of_sync) są polami bitowymi zajmującymi wspólny bajt struktury smc_connection. Ponieważ nie są zapisywane pod wspólnym zamkiem, zapis jednej flagi modyfikuje sąsiednie bity, co prowadzi do wyścigu i błędnego stanu połączenia.
- CVE-2026-80976Krytyczne
W jądrze Linux występuje podatność w obsłudze segmentowego routingu IPv6 (SRv6). Funkcja decap_and_validate() nie resetuje bloku kontrolnego IPv6 (IP6CB) po dekapulacji, przez co nieuprzywilejowany użytkownik może doprowadzić do odczytu poza buforem (slab-out-of-bounds) w ip6_protocol_deliver_rcu().
- CVE-2026-80945Krytyczne
W jądrze Linux w sterowniku kryptograficznym iaa występuje błąd podczas dekompresji sprzętowej. Gdy wystąpi błąd analityki sprzętowej, ścieżka dekompresji przechodzi do fallbacku programowego, który zapisuje do req->dst, podczas gdy bufor jest nadal zmapowany jako DMA_FROM_DEVICE. Przy aktywnym SWIOTLB późniejsze dma_unmap_sg() kopiuje nieaktualny bufor pośredniczący nad req->dst, uszkadzając wynik.
- CVE-2026-80725Krytyczne
W jądrze Linux wykryto podatność w mechanizmie GRO (Generic Receive Offload) dotyczącą agregacji pakietów BIG TCP. Niewłaściwa walidacja kryteriów agregacji pozwala na zapis poza granicami bufora (out-of-bounds write) oraz zawinięcie wskaźnika mac_header, co może prowadzić do awarii systemu lub potencjalnego wykonania kodu. Problem dotyczy starszych gałęzi stabilnych, np. 6.18.y, i został naprawiony przez zaostrzenie warunków w funkcji skb_gro_receive().
- CVE-2026-80714Krytyczne
W jądrze Linux w IPVS występuje problem z propagacją flagi one-packet do synchronizowanych połączeń, co może prowadzić do pozostawienia nieaktualnych wpisów w tablicy skrótów i użycia zwolnionej pamięci.
- CVE-2026-80694Krytyczne
W jądrze Linux w sterowniku sieciowym mtk_eth_soc wykryto błąd polegający na przekazaniu niewłaściwego wskaźnika (net_device zamiast mtk_eth) do funkcji mtk_handle_irq_rx w mtk_poll_controller. Może to prowadzić do awarii systemu podczas korzystania z CONFIG_NET_POLL_CONTROLLER.
- CVE-2026-80693Krytyczne
W jądrze Linux w sterowniku idpf wykryto błąd polegający na tym, że funkcja idpf_get_reg_intr_vecs() wypełnia tablicę reg_vals[] bez ograniczenia jej rozmiaru do faktycznej liczby wektorów przydzielonych przez sterownik. Odpowiedź z kontrolera (PF lub hypervisor) może zawierać sumę wektorów większą niż przydzielona, co prowadzi do zapisu poza końcem tablicy (out-of-bounds write).
- CVE-2026-80684Krytyczne
W jądrze Linux w podsystemie KVM dla architektury s390, funkcja airq_iv_create() może zwrócić NULL, ale jej wynik nie jest sprawdzany. W przypadku błędu zdev->aibv będzie NULL, co prowadzi do dereferencji NULL w kvm_zpci_set_airq(). Poprawka dodaje sprawdzenie NULL i zwalnia wcześniej przydzielone zasoby.
- CVE-2026-80681Krytyczne
W jądrze Linux w podsystemie vxlan, po wywołaniu route_shortcircuit(), wskaźnik do nagłówka Ethernet może wskazywać na zwolnioną pamięć, ponieważ funkcja może realokować bufor skb. Prowadzi to do użycia po zwolnieniu (use-after-free) przy odczycie adresu docelowego.
- CVE-2026-80674Krytyczne
W jądrze Linuxa odkryto podatność w systemie plików NTFS. Atrybuty listy atrybutów (attribute list) dla węzłów bazowych nie były poprawnie walidowane, gdy były rezydentne, co pozwalało na odczyt poza zakresem bufora. Dodano funkcję walidującą wpisy listy atrybutów, która sprawdza poprawność nagłówków i długości przed użyciem.
- CVE-2026-80673Krytyczne
W jądrze Linux w systemie plików NTFS funkcja ntfs_external_attr_find() podczas przeszukiwania listy atrybutów nieprawidłowo sprawdza granice następnego wpisu, co może prowadzić do odczytu poza zakresem bufora (slab out-of-bounds read) przy specjalnie spreparowanym dysku. Poprawka dodaje walidację wpisu przed jego użyciem.
- CVE-2026-80671Krytyczne
W narzędziu perf sched w jądrze Linux funkcja register_pid() ma kilka problemów przy przetwarzaniu niezaufanego pliku perf.data: przepełnienie liczby całkowitej, przepełnienie bufora przez strcpy, BUG_ON przy błędzie alokacji oraz wyciek pamięci przy realloc. Poprawka ogranicza pid, używa strlcpy, dodaje sprawdzenia NULL i bezpieczne wzorce realloc.
- CVE-2026-80670Krytyczne
W narzędziu perf w jądrze Linux funkcja machine__resolve() nie sprawdza poprawności indeksu CPU z niezaufanego pliku perf.data przed dostępem do tablicy env->cpu, co może prowadzić do odczytu poza zakresem sterty. Poprawka używa funkcji perf_env__get_cpu_topology() i dodaje sprawdzenie granic.
- CVE-2026-80668Krytyczne
W jądrze Linuxa w podsystemie netfilter (nf_conntrack_expect) zastąpiono mechanizm timerów dla oczekiwań (expectations) pracą wątku GC (garbage collector). Zmiana eliminuje wyścig, w którym oczekiwanie mogło uzyskać dostęp do zwolnionego wskaźnika exp->master, oraz dodaje flagę NF_CT_EXPECT_DEAD do bezpiecznego usuwania oczekiwań.
- CVE-2026-80634Krytyczne
W jądrze Linux w module netfilter flowtable występuje problem z niedomiarem num_encaps podczas usuwania tagu VLAN na moście, co może prowadzić do odczytu poza stosem. Problem występuje tylko w przypadku błędnego stosu ścieżki mostu.
- CVE-2026-80630Krytyczne
W jądrze Linuxa w module net/sched/sch_fq_codel występuje podatność polegająca na wywołaniu funkcji qdisc_tree_reduce_backlog podczas operacji peek przed przywróceniem licznika qlen. Może to prowadzić do błędnej dezaktywacji klasy nadrzędnej, a w konsekwencji do dzikiego dostępu do pamięci w schedulerze qfq, co objawia się błędem ogólnej ochrony (general protection fault).
- CVE-2026-80617Krytyczne
W jądrze Linux w sterowniku sieciowym airoha występuje przepełnienie bufora sterty w funkcji foe_check_time. Tablica jest deklarowana jako wskaźnik u16, ale alokowana jest tylko ppe_num_entries bajtów zamiast ppe_num_entries * sizeof(u16), co prowadzi do zapisu poza przydzielony obszar.
- CVE-2026-80612Krytyczne
W jądrze Linuxa odkryto podatność w mechanizmie LWT (Lightweight Tunnels). Podczas enkapsulacji tuneli LWT, metadane skb (przekazywane między XDP a TC) znajdujące się w headroom pakietu są nadpisywane lub usuwane, co prowadzi do ostrzeżeń i błędów w działaniu, szczególnie w przypadku pakietów przekazywanych dalej (forwarded) z metadanymi XDP. Problem dotyczy wszystkich typów enkapsulacji LWT (mpls, seg6, ioam6, BPF) i wszystkich trybów przekierowania LWT.
- CVE-2026-80609Krytyczne
W jądrze Linuxa sterownik qede miał błąd polegający na sprawdzaniu zakresu poza tablicą cqe->len_list[] po jej użyciu. Poprawka przenosi sprawdzenie indeksu przed dostęp do elementu, co zapobiega odczytowi poza zakresem.
- CVE-2026-80603Krytyczne
W jądrze Linuxa funkcja parse_dcc() w netfilter nf_conntrack_irc miała błąd off-by-one prowadzący do odczytu poza zakresem (OOB). Traktowała wskaźnik końcowy jako inkluzywny, podczas gdy wywołujący przekazywał wskaźnik o jeden za ostatnim bajtem. Poprawka zmienia pętlę na ścisłe mniejsze niż, zgodnie z konwencją wywołującego.
- CVE-2026-80600Krytyczne
W jądrze Linux w module batman-adv funkcja dat nie odświeża wskaźnika do źródłowego adresu ARP po realokacji bufora przez pskb_may_pull(). Może to prowadzić do użycia po zwolnieniu (use-after-free).
- CVE-2026-80589Krytyczne
W jądrze Linux wykryto podatność w podsystemie block, gdzie podczas zwalniania dysku, który nigdy nie został dodany (np. po nieudanym probe), nie zatrzymywano timera limitu czasu kolejki żądań. Prowadzi to do użycia po zwolnieniu (use-after-free) w mechanizmie timerów, co może skutkować awarią systemu lub eskalacją uprawnień.
- CVE-2026-80587Krytyczne
W jądrze Linuxa w module MPTCP wykryto podatność polegającą na braku odrzucania wzajemnie wykluczających się podopcji MPTCP w przychodzących pakietach. Atakujący może wysłać pakiet z kombinacją podopcji, które według RFC 8684 nie mogą występować razem, co może prowadzić do nieoczekiwanego zachowania stosu sieciowego. Poprawka wprowadza walidację zgodną z regułami stosowanymi przy wysyłaniu, ignorując nieprawidłowe kombinacje.
- CVE-2026-80586Krytyczne
W jądrze Linux w module MPTCP zdalny peer może wysłać nieprawidłowy DSS z błędnym rozmiarem, co prowadzi do ignorowania pierwszej podopcji, ale pozostawienia niektórych pól zapisanych, co może powodować niespójność lub dostęp do niezainicjalizowanych danych. Poprawka polega na jawnym resetowaniu pól, które mogły zostać zmodyfikowane w przypadku nieoczekiwanego rozmiaru.
- CVE-2026-80585Krytyczne
W jądrze Linux w module MPTCP funkcja mptcp_fastopen_subflow_synack_set_params() ustawiała flagę is_mptfo przed sprawdzeniem, czy w kolejce znajdują się dane SYN. To powodowało, że SYN bez danych (TFO) wywoływał ostrzeżenie WARN i pozostawiał nieaktualny stan MPTFO, co mogło prowadzić do błędu stanu w check_fully_established(). Poprawka polega na oznaczaniu subflow jako MPTFO dopiero po potwierdzeniu, że SKB został zakolejkowany.
- CVE-2026-80561Krytyczne
W jądrze Linux w funkcji decode_locker() w cls_lock_client.c wykryto trzy niebezpieczne operacje dekodowania, które pozwalają złośliwemu lub skompromitowanemu OSD na wywołanie odczytów poza granicami (slab-out-of-bounds). Brak kontroli granic przed kopiowaniem nazwy, niekontrolowane przesunięcie wskaźnika oraz nieograniczona długość danych mogą doprowadzić do naruszenia pamięci. Poprawka polega na zastąpieniu niebezpiecznych operacji ich bezpiecznymi odpowiednikami i zwróceniu błędu -EINVAL w przypadku naruszenia granic.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

