Podatności Linux kernel
7563 znanych podatności CVE w Linux kernel, przetłumaczonych i ocenionych.
- CVE-2026-90123Nieznane
W jądrze Linux callback irq_domain_activate() dla irqchip ast2700-intc wywołuje fwnode_device_is_compatible(), która alokuje pamięć z GFP_KERNEL. Dzieje się to przy wyłączonych przerwaniach i trzymanej surowej blokadzie spinlock, co jest niedozwolone i może prowadzić do problemów z alokacją.
- CVE-2026-90122Nieznane
W jądrze Linux funkcja visconti_clk_register_gate() wypełnia init.parent_data, zakładając, że init.parent_names jest NULL, ale to pole pozostaje niezainicjalizowane. Może to powodować subtelne błędy, a nawet awarię, zwłaszcza przy włączonych opcjach CONFIG_INIT_STACK_ALL_PATTERN lub CONFIG_INIT_STACK_NONE.
- CVE-2026-90121Nieznane
W jądrze Linux konfiguracja powinowactwa IRS w irqchip gic-v5 publikuje wskaźnik IRS i stan IAFFID w danych per-CPU, zanim dalsza inicjalizacja IRS może się nie powieść. Ścieżka błędu zwalnia dane IRS bez wyczyszczenia opublikowanego stanu, pozostawiając procesory powiązane ze zwolnioną pamięcią.
- CVE-2026-90119Nieznane
W jądrze Linux funkcja snd_ice1712_probe() wykonuje wiele kroków inicjalizacji po snd_card_new(), ale przy błędach późniejszych kroków zwraca błąd bez zwolnienia karty ALSA. Powoduje to wyciek zasobów, gdy sondowanie się nie powiedzie.
- CVE-2026-90117Nieznane
W jądrze Linux funkcja ntfs_mft_record_alloc() odczytuje numer sekwencji aktualizacji z niezwalidowanego rekordu MFT, używając niezaufanego pola usa_ofs. Uszkodzony rekord może spowodować, że odczyt dwóch bajtów wykroczy poza folio, prowadząc do użycia po zwolnieniu (use-after-free).
- CVE-2026-90106Nieznane
W jądrze Linux w module mostu sieciowego (bridge) występuje błąd w obsłudze proxy ARP/ND polegający na bezpośrednim odczycie adresu neigh ha. Może to prowadzić do częściowych lub niespójnych odczytów, gdy wpis neigh jest w trakcie aktualizacji. Problem rozwiązano poprzez użycie funkcji neigh_ha_snapshot do stabilnego pobrania adresu.
- CVE-2026-90105Nieznane
W jądrze Linux w module vxlan występuje błąd polegający na bezpośrednim odczycie adresu neigh ha przez funkcje arp/neigh_reduce. Może to prowadzić do częściowych odczytów podczas aktualizacji wpisu neigh. Problem rozwiązano stosując neigh_ha_snapshot, podobnie jak w route_shortcircuit.
- CVE-2026-90101Nieznane
W jądrze Linux w sterowniku bnxt_en występuje błąd polegający na przekazaniu urządzenia platformowego zamiast urządzenia monitoringu sprzętowego jako pierwszego parametru do hwmon_notify_event(). To złamanie API powoduje niezdefiniowane zachowanie i może prowadzić do awarii.
- CVE-2026-90100Nieznane
W jądrze Linux w sterowniku ptp netc występuje błąd obcięcia okresu i potencjalnego dzielenia przez zero w PEROUT. Wartość max_period przekracza U32_MAX, co powoduje ciche obcięcie period_ns do zera i dzielenie przez zero w roundup_u64(). Dodatkowo zerowa wartość pp->period powoduje zawinięcie unsigned do 0xFFFFFFFD i błędne zaprogramowanie rejestru FIPER.
- CVE-2026-90099Nieznane
Podatność w jądrze Linux w mechanizmie klasyfikatorów net/sched pozwala nieuprzywilejowanym użytkownikom na przypięcie pamięci jądra poza kontrolą memcg, poprzez użycie alokacji GFP_KERNEL bez __GFP_ACCOUNT w ścieżkach *_change() klasyfikatorów, a także w tablicy akcji tcf_exts_init_ex(). Dodatkowo występuje błąd w ścieżce błędów cls_basic, który pozostawia wiszący wskaźnik w IDR.
- CVE-2026-90098Nieznane
W jądrze Linux w sterowniku sparx5 występuje błąd polegający na usypianiu w kontekście atomowym podczas dostępu do tablicy MAC. Funkcja sparx5_set_rx_mode() działa z założonym netif_addr_lock_bh i iteruje po dev->mc, co prowadzi do zajęcia mutexa sparx5->lock i odpytywania rejestru w kontekście atomowym, co jest niedozwolone. Rozwiązaniem jest konwersja sterownika na nowe wywołanie zwrotne .ndo_set_rx_mode_async.
- CVE-2026-90097Nieznane
W jądrze Linux w module hv vmbus występuje błąd polegający na próbie czyszczenia niezainicjalizowanego modułu VMBus w przypadku głównej partycji niezanurzonej. Funkcja hv_acpi_init() nic nie robi w takim scenariuszu, ale zgłasza sukces, więc moduł jest ładowany. Późniejsze wyładowanie modułu próbuje posprzątać niezainicjalizowane zasoby, co prowadzi do błędów pamięci i paniki.
- CVE-2026-90096Nieznane
W jądrze Linux w systemie plików FUSE wykryto podatność związaną z zapisem bezpośrednim z flagą O_APPEND. Funkcja fuse_direct_write_iter() używała nieaktualnej pozycji przed sprawdzeniem zapisu, co powodowało unieważnianie błędnego zakresu stron po zapisie. Może to prowadzić do niespójności danych, gdy rozmiar pliku nie jest wyrównany do rozmiaru strony.
- CVE-2026-90095Nieznane
W jądrze Linuxa naprawiono warunek umożliwiający użycie over-io-uring w FUSE. Funkcja fuse_uring_cmd() wymaga teraz ustawienia flagi FUSE_OVER_IO_URING w odpowiedzi FUSE_INIT, aby zaakceptować polecenie IORING_OP_URING_CMD. Bez tej flagi istnieje ryzyko zakleszczenia (deadlock) w przypadku próby użycia io-uring. Zmiana jest trywialna, ale zmienia zachowanie: serwery FUSE muszą ustawić tę flagę, aby obsługiwać io-uring.
- CVE-2026-90094Nieznane
W jądrze Linuxa naprawiono błąd w zarządzaniu kontekstem dla procesów ARM64 związany z trybem Memory Tagging Extension (MTE) typu store-only. Bit SCTLR_EL1.TCSO0 nie był uwzględniany w masce SCTLR_USER_MASK, co powodowało, że po przełączeniu kontekstu ustawienie to nie było kasowane i mogło być dziedziczone przez inny zadanie. Poprawka dodaje SCTLR_EL1_TCSO0_MASK do SCTLR_USER_MASK, aby zapewnić poprawne kasowanie podczas przełączania.
- CVE-2026-90090Nieznane
W jądrze Linux sterownik Bluetooth btmtksdio w ścieżce nadawania (TX) zaokrągla rozmiar transferu do rozmiaru bloku SDIO (256 bajtów), ale przekazuje kontrolerowi bufor SKB bez wypełnienia. Kontroler odczytuje w ten sposób do 255 bajtów niezainicjowanej pamięci, a odczyt może wykroczyć poza koniec bufora.
- CVE-2026-90088Nieznane
W jądrze Linux w implementacji Bluetooth RFCOMM funkcja rfcomm_apply_pn() przyjmuje wartość MTU z ramki negocjacji parametrów (PN) bez sprawdzenia zera. Gdy zdalny peer wyśle MTU równe zero, d->mtu zostaje ustawione na 0, co powoduje nieskończoną pętlę przy fragmentacji danych i wyczerpanie pamięci systemowej.
- CVE-2026-90087Nieznane
W jądrze Linux występuje wyciek struktury hci_conn, gdy drugie połączenie LE zostanie odrzucone. Funkcja create_le_conn_complete() błędnie porównuje nieudane połączenie z hci_lookup_le_connect(), co przy dwóch jednocześnie oczekujących połączeniach powoduje pominięcie wywołania hci_conn_failed() i pozostawienie połączenia w stanie BT_CONNECT na stałe. W efekcie wszystkie kolejne próby nawiązania połączenia LE kończą się błędem -EBUSY i wymagają resetu adaptera.
- CVE-2026-90086Nieznane
W jądrze Linux ścieżka zero-copy podsystemu xsk odczytuje metadane TX zawsze, gdy UMEM ma przestrzeń na metadane, nawet jeśli deskryptor nie ustawia flagi XDP_TX_METADATA. Poprawka przekazuje opcje deskryptora przez helpery metadanych i ignoruje metadane, gdy opcja nie jest ustawiona.
- CVE-2026-90085Nieznane
W jądrze Linux sterownik octeontx2-af w funkcji rvu_dbg_nix_tm_tree_display() odwołuje się do pfvf->sq_ctx bez sprawdzenia, czy kontekst SQ został przydzielony. Odczyt pliku /sys/kernel/debug/octeontx2/nix/tm_tree dla NIX LF bez skonfigurowanych kolejek nadawczych powoduje oops jądra.
- CVE-2026-90084Nieznane
W jądrze Linux sterownik octeontx2-vf ma wyścig między kolejką roboczą a urządzeniem sieciowym w ścieżkach probe/remove. Kolejka robocza VF nie jest inicjalizowana przed register_netdev(), więc ndo_set_rx_mode może zakolejkować pracę na NULL, a kolejka jest niszczona przed wyrejestrowaniem netdev.
- CVE-2026-90083Nieznane
W jądrze Linuxa wykryto podatność w module act_ife (net/sched), która powoduje panikę jądra (skb_under_panic) przy przetwarzaniu ramek niepochodzących z Ethernetu. Problem wynika z użycia skb->dev->hard_header_len zamiast ETH_HLEN, co prowadzi do błędnych operacji na buforze skb. Poprawka ogranicza działanie IFE wyłącznie do ramek Ethernetowych i wymusza odpowiednią długość nagłówka.
- CVE-2026-90082Nieznane
W jądrze Linux sterownik net: mana w funkcji mana_gd_query_max_resources() wylicza gc->num_msix_usable na podstawie resp.max_msix i liczby CPU, ale nie uwzględnia rozmiaru tablicy MSI-X urządzenia. Na maszynie z 1792 vCPU daje to 1793 wektory przy tablicy 1024 wpisów, co powoduje wyjście poza zmapowany region i błąd page fault.
- CVE-2026-90081Nieznane
W jądrze Linux funkcja rds_cong_map_updated() w net/rds używa waitqueue_active() bez wymaganej bariery pamięci, co prowadzi do wzorca store-buffering. Aktualizujący może zaobserwować pustą kolejkę oczekujących, podczas gdy oczekujący wciąż widzi port jako zatłoczony, więc nie zostaje wysłane wybudzenie.
- CVE-2026-90080Nieznane
W jądrze Linux w sterowniku octeontx2-pf występuje podatność polegająca na braku sprawdzenia wskaźnika af_xdp_zc_qidx przed użyciem go w funkcji test_bit(). Wskaźnik ten jest inicjowany tylko dla ścieżek AF_XDP zero-copy, a reprezentory i inne ścieżki pozostawiają go jako NULL, co prowadzi do błędu dereferencji NULL podczas przełączania trybu devlink eswitch.
- CVE-2026-90079Nieznane
W jądrze Linux w sterowniku octeontx2-af występuje wyciek pamięci i błędy zwalniania zasobów przy wielokrotnym wywołaniu rvu_mbox_init(). Każde wywołanie alokowało nowy obiekt ng_rvu, nadpisując poprzedni wskaźnik, a ścieżki błędów zwalniały zasoby nieprawidłowo, pozostawiając pamięć skrzynek pocztowych w użyciu.
- CVE-2026-90078Nieznane
W jądrze Linux w module net/sched act_skbmod występują błędy obliczania długości nagłówków. Funkcja tcf_skbmod_act() wywołuje skb_network_header_len() bez gwarancji ustawienia transport_header oraz skb_mac_header_len() na urządzeniach L3, co powoduje ostrzeżenia i błędne odrzucanie prawidłowych krótkich pakietów.
- CVE-2026-90077Nieznane
W jądrze Linux w funkcji copy_net_ns() występuje wyciek zasobów w ścieżce obsługi błędów. Gdy preinit_net() zwróci błąd, kod przechodzi do etykiety dec_ucounts, pomijając zwolnienie zasobów zaalokowanych przez net_alloc(), takich jak key_remove_domain() i net_passive_dec().
- CVE-2026-90076Nieznane
W jądrze Linux w module net/sched fq występuje przepełnienie liczbowe przy obliczaniu quantum i initial_quantum. Urządzenie z ogromnym MTU powoduje, że psched_mtu() zwraca 0x80000000, a mnożenie przez 2 i 10 zawija się do zera, co prowadzi do nieskończonej pętli w fq_dequeue() i soft lockup.
- CVE-2026-90075Nieznane
W jądrze Linux w module net/sched fq_codel występuje brak ograniczenia wartości quantum i mtu. Urządzenie z ogromnym MTU powoduje przepełnienie signed flow->deficit do INT_MIN, co prowadzi do nieskończonej pętli i soft lockup, a także cichego wyłączenia mechanizmu CoDel.
- CVE-2026-90074Nieznane
W jądrze Linux w module net/sched fq_pie występuje brak ograniczenia domyślnej wartości quantum. Urządzenie z ogromnym MTU powoduje przepełnienie signed flow->deficit do INT_MIN w fq_pie_qdisc_dequeue(), co prowadzi do nieskończonej pętli i soft lockup.
- CVE-2026-90073Nieznane
W jądrze Linux w module net/sched hhf występuje brak sprawdzenia przepełnienia przy ustawianiu quantum. Urządzenie z ogromnym MTU powoduje przepełnienie signed deficit w hhf_dequeue(), co prowadzi do nieskończonej pętli, a także błędu -EINVAL przy dodawaniu qdisc z opcjami.
- CVE-2026-90072Nieznane
W jądrze Linux w module net/sched sfq występuje brak ograniczenia wartości quantum. Urządzenie z ogromnym MTU powoduje, że slot->allot przyjmuje wartość INT_MIN, a operacja INT_MIN + INT_MIN oscyluje między INT_MIN i 0, powodując nieskończoną pętlę w sfq_dequeue() i soft lockup.
- CVE-2026-90070Nieznane
W jądrze Linux funkcja st33zp24_status() ignoruje wynik odczytu transportu i zwraca dane nawet gdy nie odebrano żadnego bajtu. W transporcie I2C, gdy zapis wyboru rejestru jest zbyt krótki lub kończy się niepowodzeniem, i2c_master_recv() jest pomijane, pozostawiając dane niezainicjalizowane. Wartość ze stosu może zostać zinterpretowana jako flagi TPM_STS i spowodować fałszywe zakończenie sprawdzania statusu.
- CVE-2026-90068Nieznane
W jądrze Linux funkcja snd_soc_dapm_put_enum_double() odrzuca item[0] gdy osiągnie e->items, ale pozwala item[1] być równym tej wartości. Oba trafiają do snd_soc_enum_item_to_val(), które indeksuje e->values bez własnego ograniczenia, więc enum z tabelą wartości odczytuje jeden element poza końcem. Problem dotyczy tylko adav80x, który łączy tabelę wartości z dwoma przesunięciami.
- CVE-2026-90066Nieznane
W jądrze Linux funkcja ftrace_direct_multi_init() przypisuje wynik kthread_run() do simple_tsk bez sprawdzenia IS_ERR(). Gdy kthread_run() zawiedzie, zwraca ERR_PTR(-ENOMEM), ale init nadal zwraca 0, więc moduł ładuje się z simple_tsk wskazującym na wskaźnik błędu. Przy wyładowaniu ftrace_direct_multi_exit() przekazuje ten ERR_PTR do kthread_stop(), co prowadzi do dereferencji wskaźnika NULL.
- CVE-2026-90065Nieznane
W jądrze Linux gniazda IPPROTO_SMC tworzą wewnętrzne gniazdo TCP ("clcsock") w hooku proto->init. Gdy utworzenie gniazda zawiedzie po uruchomieniu proto->init — np. program cgroup BPF podpięty do BPF_CGROUP_INET_SOCK_CREATE odmówi — sk_common_release() wywołuje sk_prot->destroy tylko jeśli jest ustawione, ale ani smc_inet_prot ani smc_inet6_prot go nie definiuje, a smc_destruct() kończy się wcześnie. W rezultacie każde nieudane wywołanie socket(AF_INET, SOCK_STREAM, IPPROTO_SMC) wycieka jeden tcp_sock.
- CVE-2026-90064Nieznane
W jądrze Linux w sterowniku drm/xe włączony scratch nie czyni VM zdolną do obsługi odzyskiwalnych błędów stron. Przepuszczanie VM ze scratch przez wyszukiwanie ASID dopuszcza również VM w trybie dma-fence. Jeśli taka VM zgłosi błąd na już prawidłowym VMA, handler raportuje sukces bez naprawy błędu, powodując nieskończone ponawianie przez GPU.
- CVE-2026-90063Nieznane
W jądrze Linux w virtio-net użytkownik może określić dowolny gso_size w pakiecie utworzonym przez gniazdo AF_PACKET PACKET_VNET_HDR, nawet mniejszy niż TCP_MIN_GSO_SIZE = 8. Ponieważ GSO_MAX_SIZE = 8 * GSO_MAX_SEGS = 8 * 65535, przy gso_size < 8 istnieje ryzyko przepełnienia 16-bitowego pola gso_segs przy dzieleniu długości SKB przez gso_size.
- CVE-2026-90061Nieznane
W jądrze Linux w netfilter nf_tables zarówno ścieżka dynset, jak i newsetelem klonują istniejące wyrażenia zbioru przy ustawianiu wyrażeń elementów zbioru, jeśli nie podano wyrażeń nadpisujących. Powoduje to podwójne klonowanie. Poprawka dodaje flagę override_exprs do oznaczania wyrażeń nadpisujących i warunkowo zwalnia wyrażenia, co naprawia również niezrównoważenie licznika referencji modułu dla wyrażenia connlimit.
- CVE-2026-90060Nieznane
W jądrze Linuxa w warstwie ALSA control istnieje podatność na dereferencję wskaźnika NULL. Można utworzyć element sterujący tylko do zapisu, bez funkcji pobierania (get), co prowadzi do awarii jądra (Oops) podczas wywołania snd_ctl_led_notify().
- CVE-2026-90058Nieznane
Podatność w jądrze Linux w module net/sched pozwala na wywołanie miękkiego zawieszenia (soft lockup) poprzez spreparowaną tablicę rozmiaru pakietów (stab) w schedulerach DRR i ETS. Atakujący z uprawnieniami CAP_NET_ADMIN w przestrzeni nazw może wygenerować ogromną wartość qdisc_pkt_len (nawet ~1 GiB), co prowadzi do pętli w schedulerze i zawieszenia systemu.
- CVE-2026-90056Nieznane
W jądrze Linuxa w sterowniku FEC (Fast Ethernet Controller) funkcja fec_ptp_stop() jest wywoływana bezwarunkowo na ścieżkach nieudanego inicjalizowania i odinstalowania, mimo że fec_ptp_init() jest wywoływana tylko gdy bufdesc_ex jest dostępny. Może to zatrzymać niezinicjalizowany PTP.
- CVE-2026-90055Nieznane
W jądrze Linux w module usbatm (USB ATM) wykryto błąd inicjalizacji pola ci_range, w którym vpi_bits i vci_bits ustawiano na wartość ATM_CI_MAX (-1). Wartości te są używane jako liczniki przesunięć bitowych w net/atm/common.c, co powoduje niezdefiniowane zachowanie (shift-out-of-bounds) i ostrzeżenia UBSAN. Problem został naprawiony poprzez ustawienie vpi_bits na 8 i vci_bits na 16.
- CVE-2026-90054Nieznane
W jądrze Linuxa w protokole TCP występuje uszkodzenie danych pilnych (urgent data) podczas retransmisji wielosesyjnej. Na ścieżce retransmisji nie ma zabezpieczenia przed tworzeniem wielu segmentów, co powoduje błędne kopiowanie wskaźnika urg_ptr i odbiorca traktuje zwykłe dane jako pilne.
- CVE-2026-90053Nieznane
W jądrze Linux w funkcji htb_classify() (moduł net/sched/sch_htb) nie ograniczano liczby przeskoków między klasami wewnętrznymi HTB wybieranymi przez filtry. Filtr na klasie wewnętrznej może wskazywać na siebie samą lub tworzyć cykl, co prowadzi do nieskończonej pętli w ścieżce klasyfikacji pakietów z trzymaną blokadą qdisc i wyłączonym BH — pojedynczy pakiet powoduje soft lockup lub panikę jądra. Problem naprawiono, wprowadzając licznik przeskoków ograniczony do TC_HTB_MAXDEPTH i odrzucanie pakietu z ostrzeżeniem po przekroczeniu limitu.
- CVE-2026-90050Nieznane
W jądrze Linuxa w module net/sched fq stwierdzono podatność związaną z brakiem odpowiedniego ograniczenia wartości parametrów quantum i initial_quantum podczas zmiany konfiguracji przez użytkownika. Umożliwia to przywrócenie stanu, który może powodować nadmierne spowolnienie transmisji w sieci, ze względu na możliwość ustawienia zbyt małych wartości quantum.
- CVE-2026-90046Wysokie
W jądrze Linux w funkcji free_pages_nolock() na systemach jednoprocesorowych (UP) użyto spin_trylock() w kontekście NMI, co jest niebezpieczne. Błąd dotyczy ścieżki zwalniania stron i może prowadzić do awarii jądra. Podatność może być wykorzystana przez lokalnego atakującego do eskalacji uprawnień.
- CVE-2026-90043Wysokie
W jądrze Linux w module zram bit blokady slotu jest ustawiany w niewłaściwej pozycji na systemach 64-bitowych big-endian. Zamiast w polu flags trafia w pole ac_time, co przy włączonym ZRAM_TRACK_ENTRY_ACTIME powoduje kasowanie blokady i pozwala innemu CPU przejąć ten sam slot. Wartość czasu dostępu z ustawionym bitem może sprawić, że slot pozostanie zablokowany na zawsze. Poprawka przenosi bit blokady do połowy flags na big-endian 64-bit.
- CVE-2026-90035Nieznane
W jądrze Linux funkcja get_estimated_bw() w sterowniku drm/amd/display dzieli przez bw_granularity, które jest zerowane i wypełniane dopiero po obsłużeniu DP_TUNNELING_BW_ALLOC_CAP_CHANGED. Jeśli urządzenie USB4/DPIA zgłosi zmianę szacowanej przepustowości przed zmianą możliwości, w obsłudze przerwania DPCD dochodzi do dzielenia przez zero.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

