Podatności Linux kernel
10 407 znanych podatności CVE w Linux kernel, przetłumaczonych i ocenionych.
- CVE-2026-90376Niskie ryzyko· EPSS 10%
Problem z identyfikatorem MLD w TXD i HIF TXP w sterowniku mt7996. Gdy pole MLD_ID nie jest ani głównym, ani pomocniczym identyfikatorem linku, może powodować zapętlenie firmware podczas trybu oszczędzania energii trzeciego linku. Poprawka przekierowuje ramki na główny identyfikator wcid.
- CVE-2026-90375Niskie ryzyko· EPSS 6%
Błąd w liczeniu pakietów non-AQL dla stacji MLO w sterowniku mt76. Funkcja nadpisuje wcid przekazany przez sterownik, co powoduje, że licznik jest aktualizowany na niewłaściwym wcid. Po przekroczeniu limitu scheduler może trwale zablokować obsługę stacji.
- CVE-2026-90374Niskie ryzyko· EPSS 10%
W sterowniku mt7996 brakuje walidacji pola band_idx w deskryptorze RX. Pole (2 bity) może być nieprawidłowe i powodować dostęp poza zakres tablicy phys[] lub odwołanie do NULL-a, co może prowadzić do awarii.
- CVE-2026-90373Niskie ryzyko· EPSS 10%
W sterowniku mt7915 występuje wyścig przy czyszczeniu maski wcid w funkcji remove_interface. Maska jest czyszczona bez trzymania mutexa i przed wyczyszczeniem wskaźnika RCU, co może prowadzić do wycieku lub ponownego przydzielenia wcid, a nawet jego usunięcia.
- CVE-2026-90372Wysokie
W sterowniku mt7915 występuje niedomiar (underflow) przy obliczaniu liczby strumieni przestrzennych. Jeśli mapa MCS nie zawiera żadnych wspieranych strumieni, funkcja zwraca wartość 255, która jest zapisywana do pól beamforming w firmware.
- CVE-2026-90371Wysokie
W sterowniku mt76 występuje wyścig w recyklingu buforów RXDMAD_C. Te bufory pochodzą z pul stron powiązanych z innym NAPI, co powoduje, że bezpośredni recykling może kolidować z właścicielem NAPI, prowadząc do błędów.
- CVE-2026-90370Niskie ryzyko· EPSS 9%
W sterowniku mt7996 występuje błąd w przeglądaniu listy TLV w funkcji mcu_get_chip_config. Pętla zwiększa pozycję o długość TLV bez minimalnej wartości, co może prowadzić do nieskończonej pętli przy zerowej długości, a także odczyt poza zakresem.
- CVE-2026-90369Niskie ryzyko· EPSS 9%
W sterownikach mt76 funkcje mmio_write_copy i mmio_read_copy iterują do ALIGN(len,4), co dla długości niebędącej wielokrotnością czwórki powoduje odczyt poza źródłem lub zapis poza celem.
- CVE-2026-90368Niskie ryzyko· EPSS 10%
W jądrze Linux w funkcji mt7915_add_interface() sterownika wifi mt76 występuje błąd braku wycofania zmian przy niepowodzeniu dodawania interfejsu. Gdy alokacja mt76_wcid_alloc() się nie powiedzie, funkcja zwraca błąd bez wyczyszczenia ustawionych bitów vif_mask/omac_mask, bez usunięcia wcześniej dodanych informacji o urządzeniu firmware i bez wyzerowania wskaźnika monitor_vif. Ponieważ mac80211 nie wywołuje remove_interface() po nieudanym dodaniu, indeksy i wpis firmware wyciekają trwale, a testmode może odwołać się do nieaktualnego wskaźnika monitor_vif.
- CVE-2026-90367Wysokie
W jądrze Linux w sterowniku wifi mt76 (mt7996) funkcja mt7996_mac_reset_work() zatrzymywała wątek tx i wyłączała NAPI RX/TX przed pobraniem muteksu dev->mt76.mutex. Ponieważ mt76_worker_disable()/_enable() nie są zliczane referencyjnie, a __mt76_set_channel() przełącza ten sam wątek i bit MT76_RESET pod muteksem, wyścig między obsługą SER L1 a zmianą kanału mógł pozostawić wątek wznowiony i bit MT76_RESET wyczyszczony podczas resetowania pierścieni DMA, uszkadzając deskryptory lub tokeny.
- CVE-2026-90366Niskie ryzyko· EPSS 6%
W jądrze Linux w sterowniku wifi mt76 (mt7996) funkcja mt7996_mcu_beacon_cntdwn() emituje dwa wpisy bss_bcn_cntdwn_tlv (odliczanie CSA i BCC przerwania CCA), ale stała MT7996_BEACON_UPDATE_SIZE rezerwowała miejsce tylko na jeden. Przy włączonym MBSSID i niemal maksymalnym szablonie beacon dodatkowe 8 bajtów mogło przekroczyć MT7996_MAX_BSS_OFFLOAD_SIZE i wywołać skb_over_panic().
- CVE-2026-90365Niskie ryzyko· EPSS 11%
W jądrze Linux w sterownikach wifi mt76 oba sterowniki anulowały dump_work przy wyrejestrowaniu urządzenia, ale pozostawiały reset_work i rc_work do opróżnienia dopiero przez destroy_workqueue() w mt76_free_device(), które uruchamia się po wyrejestrowaniu hw i zatrzymaniu sprzętu. reset_work uruchomiony w tym oknie wywołuje ieee80211_restart_hw() i ponownie uzbraja mac_work na wyrejestrowanym hw, a rc_work dotyka stanu stacji będącej w trakcie niszczenia.
- CVE-2026-90364Niskie ryzyko· EPSS 9%
W jądrze Linux funkcja acpi_processor_driver_init() rejestruje notyfikator polityki cpufreq przed zarejestrowaniem sterownika ACPI processor i skonfigurowaniem stanu hotplug CPU. Jeśli driver_register() lub cpuhp_setup_state() zawiedzie, ścieżka błędu wyrejestrowuje tylko sterownik ACPI processor i sterownik idle, pozostawiając notyfikator cpufreq zarejestrowany mimo niepowodzenia inicjalizacji.
- CVE-2026-90363Niskie ryzyko· EPSS 10%
W jądrze Linux w sterownikach MDP4/MDP5 dla układów graficznych MSM podwójne niszczenie stanu KMS podczas nieudanej inicjalizacji prowadzi do użycia po zwolnieniu (use-after-free). Błąd występuje, gdy funkcja kms_init() zawiedzie, a sterownik sam czyści stan, a następnie wspólna ścieżka błędów robi to ponownie.
- CVE-2026-90362Niskie ryzyko· EPSS 11%
W jądrze Linux w sterowniku drm/msm/dsi wywołanie dev_pm_opp_set_rate(0) usuwa głos określony w required-opps, ale nie zatrzymuje faktycznie zegara, przez co działa on bez niezbędnego wsparcia zasilania. Poprawka usuwa to jawne wywołanie; każde miejsce wywołania ops->link_clk_disable() jest poprzedzone pm_runtime_put(), więc głos zasilania zostanie wycofany, jeśli uzna się to za bezpieczne.
- CVE-2026-90361Niskie ryzyko· EPSS 11%
W jądrze Linux w sterowniku wifi ath11k funkcja ath11k_service_ready_ext_event() może alokować svc_rdy_ext.mac_phy_caps podczas parsowania TLV. Jest to alokacja tymczasowa zwalniana na ścieżce sukcesu, ale nie na ścieżce błędu — jeśli parsowanie powiedzie się na tyle, by zaalokować mac_phy_caps, a następnie zawiedzie na późniejszym TLV, alokacja wycieka.
- CVE-2026-90360Niskie ryzyko· EPSS 15%
W jądrze Linux regulator_init_complete_work używa system_wq (nieodmrażalnego) przez schedule_delayed_work(), co pozwala mu działać równolegle z zawieszeniem systemu. Praca ta uruchamia się ~30 s po starcie, aby wyłączyć nieużywane regulatory przez I2C; gdy wyścig z PM suspend nastąpi, adapter I2C może być już zawieszony, co wywołuje ostrzeżenie -ESHUTDOWN w __i2c_transfer().
- CVE-2026-90359Niskie ryzyko· EPSS 10%
W jądrze Linux btf_distill_func_proto() buduje model funkcji używany dla trampolin fentry/fexit/fmod_ret/fsession i struct_ops, akceptując 16-bajtową wartość zwracaną __int128 od czasu wprowadzenia trampoliny. Trampolina BPF zachowuje jednak tylko 8 bajtów wartości zwracanej (RAX/R0), więc dla typów dołączenia czytających wartość zwracaną (fexit, fmod_ret, fsession i warianty _multi oraz struct_ops) druga połowa nie jest zapisywana ani przywracana, co uszkadza wartość widzianą przez rzeczywistego wywołującego.
- CVE-2026-90358Wysokie
W jądrze Linux funkcja btf_distill_func_proto() akceptuje argumenty funkcji do 16 bajtów, więc 128-bitowy typ __int128 trafia do trampoliny x86 z arg_size równym 16. Obecna implementacja zakłada jednak, że argument __int128 wymaga tylko jednego rejestru, przez co obszar zapisu rejestrów jest niedoszacowany, a save_args() nadpisuje sąsiednie sloty stosu.
- CVE-2026-90357Wysokie
W sterowniku wifi mt76 (mt7915) przepływ TWT jest dodawany do dev->twt_list przed wysłaniem umowy do firmware, ale ścieżka błędu pozostawia go na liście, mimo że flowid_mask nie jest ustawiany. Slot przepływu może zostać ponownie użyty i wyzerowany, gdy wciąż znajduje się na liście, co uszkadza twt_list, a usunięcie stacji pozostawia wiszący wpis.
- CVE-2026-90356Niskie ryzyko· EPSS 10%
W sterowniku wifi mt76 (mt7996) funkcja mt7996_mac_reset_vif_iter() kolejkuje niedomyślne linki vif do kfree_rcu, podczas gdy dev->wcid[] wciąż przechowuje wskaźniki do wcid osadzonego w każdym zwalnianym linku. Następnie mt76_reset_device() dereferencjonuje te wpisy i uruchamia mt76_wcid_cleanup() na zwolnionej pamięci, jeśli upłynie okres karencji.
- CVE-2026-90355Niskie ryzyko· EPSS 10%
W sterowniku wifi mt76 (mt7996) po pełnym resecie chipu ścieżka resetu zwalnia struktury linków bez wyczyszczenia bitów w mvif->valid_links, przez co odtworzenie konfiguracji przez mac80211 nie tworzy ponownie rekordów dev_info/bss_info/STA i nie rejestruje ponownie link wcid, pozostawiając urządzenie niedziałające. Reset wycieka też wszystkie przydzielone indeksy MLD, co przy powtarzanych resetach wyczerpuje przestrzeń indeksów.
- CVE-2026-90354Niskie ryzyko· EPSS 6%
W sterowniku wifi mt76 (mt7915) funkcja mt7915_pci_init_hif2() była wywoływana bezwarunkowo oraz ponownie w gałęzi nieaktywnego WED. Powodowało to podwójne zwiększenie globalnego hif_idx, dwukrotny zapis rejestru PCIe RECOG_ID i wyciek referencji urządzenia, ponieważ usunięcie zwalnia tylko jedną referencję.
- CVE-2026-90353Wysokie
W sterowniku wifi mt76 (mt7915) po udanym mt7915_register_ext_phy() awaria mt7915_init_debugfs() lub mt7915_coredump_register() dla głównego PHY powodowała odkręcenie przez free_phy2, które wywoływało ieee80211_free_hw() na ext PHY wciąż zarejestrowanym w mac80211, ponieważ mt76_unregister_device() wyrejestrowuje tylko główny hw.
- CVE-2026-90352Niskie ryzyko· EPSS 10%
W sterowniku wifi mt76 (mt7915) referencja hif2 uzyskana przez mt7915_pci_init_hif2() jest zwalniana tylko na ścieżkach błędów opartych na dev->hif2, który nie jest przypisany aż do konfiguracji IRQ. Jeśli pci_alloc_irq_vectors() lub główne devm_request_irq() zawiodą, referencja wycieka.
- CVE-2026-90351Niskie ryzyko· EPSS 10%
W sterowniku wifi mt76 (mt7996) jeśli attach WED dla głównej funkcji PCIe zawiedzie, ścieżka sondowania nadal podłącza wed_hif2 dla funkcji pomocniczej, pozostawiając urządzenie w niespójnej konfiguracji połowicznego WED, która później powoduje awarię. Wywołanie hif2 ponownie włącza też hwrro_mode, który nieudany główny attach właśnie wyłączył.
- CVE-2026-90350Niskie ryzyko· EPSS 10%
W sterowniku wifi mt76 funkcja mt76_vif_link() indeksuje mvif->link[] bez walidacji link_id, a wywołujący przekazują mvif->deflink_id / msta->deflink_id, które przechowują IEEE80211_LINK_UNSPECIFIED (0xf) do momentu dodania pierwszego linku. Ponieważ IEEE80211_MLD_MAX_NUM_LINKS wynosi 15, odczyt następuje o jeden element poza tablicą, aliasując mt76_vif_data.offchannel_link.
- CVE-2026-90349Niskie ryzyko· EPSS 10%
W sterowniku wifi mt76 (mt7996) gdy mac80211 pozostawia link nieokreślony, mt7996_tx() podstawia główny identyfikator linku stacji lub vif. Wartość ta to IEEE80211_LINK_UNSPECIFIED (0xf) do momentu dodania pierwszego linku i jest używana bez sprawdzenia do indeksowania vif->link_conf[], mvif->mt76.link[] i sta->link[], które mają po 15 elementów.
- CVE-2026-90348Niskie ryzyko· EPSS 12%
W jądrze Linuksa w sterowniku ath10k dla SNOC (WCN3990) podczas kopiowania obszaru MSA do zrzutu pamięci używana jest funkcja memcpy(), która wykonuje niepoprawne (niezrównane) dostęp do pamięci zmapowanej jako MEMREMAP_WT. Powoduje to błąd wyrównania i awarię jądra podczas zbierania devcoredump, a także zerowanie bufora zrzutu pamięci.
- CVE-2026-90347Wysokie
W jądrze Linuksa dla architektury arm64 w mechanizmie ptrace występuje problem z synchronizacją wartości 'orig_x0' i x0 podczas wchodzenia do syscalla. Poprzednia poprawka nie aktualizowała 'orig_x0' podczas przetwarzania SECCOMP_RET_TRACE, co pozwalało tracertowi na modyfikację argumentu syscalla bez kontroli seccomp i audytu.
- CVE-2026-90346Niskie ryzyko· EPSS 11%
W jądrze Linuksa w funkcji nl80211_color_change() stwierdzono wyciek pamięci podczas przetwarzania danych beacon_next. Jeśli parsowanie beacon_next zakończy się błędem, towary parametry (takie jak mbssid_ies i rnr_ies) nie są zwalniane, ponieważ funkcja zwraca błąd bez użycia ścieżki czyszczącej out:.
- CVE-2026-90345Niskie ryzyko· EPSS 11%
W jądrze Linuksa w sterowniku brcmfmac występuje problem z obsługą ramek akcji P2P, gdy nie istnieje wirtualny interfejs P2P. Niektóre ścieżki zakładają, że taki interfejs jest zawsze dostępny, co nie jest prawdą dla ramek publicznych wysyłanych przez interfejs główny lub gdy abort ramki ma miejsce przed utworzeniem vif P2P.
- CVE-2026-90344Niskie ryzyko· EPSS 9%
W jądrze Linuksa w podsystemie mac80211 stwierdzono błędne porównanie kanału zero podczas parsowania CSA (Channel Switch Announcement). Refaktoryzacja mylnie traktowała kanał zero jako brak informacji, przez co AP ogłaszający przełączenie na nieprawidłowy kanał 0 nie powodował rozłączenia, co może prowadzić do awarii firmware na niektórych urządzeniach Intel.
- CVE-2026-90343Wysokie
W jądrze Linuksa w cfg80211 stwierdzono brak zatrzymywania pomiarów PMSR przed wyłączeniem interfejsów P2P i NAN. Funkcje cfg80211_stop_p2p_device() i cfg80211_stop_nan() nie wywołują cfg80211_pmsr_wdev_down(), co może pozostawić nieaktualne żądania w sterowniku i prowadzić do niespójności.
- CVE-2026-90342Niskie ryzyko· EPSS 9%
W jądrze Linuksa w mechanizmie BPF arena stwierdzono potencjalny zakleszczenie (deadlock) na mmap_lock w przypadku niepowodzenia przejęcia spinlocka w funkcji arena_vm_fault(). Funkcja zwraca VM_FAULT_RETRY bez wcześniejszego zwolnienia mmap_lock, co powoduje podwójne założenie blokady przy ponowieniu.
- CVE-2026-90341Wysokie
W jądrze Linuksa w sterowniku coreboot stwierdzono brak walidacji granic tabeli. coreboot_table_probe() zastępuje długość zasobu platformy wartościami z firmware, co może prowadzić do przepełnienia przy dodawaniu rozmiaru 32-bitowego lub mapowania pamięci poza zasobem przez źle sformowaną tabelę.
- CVE-2026-90340Niskie ryzyko· EPSS 9%
W jądrze Linuksa w podsystemie pinctrl (generic) stwierdzono wyciek pamięci w funkcji pinctrl_generic_to_map(). Jeśli któryś z kolejnych kroków (mux, grupa, config) zwróci błąd, wskaźnik *maps może zawierać częściowo przydzielone wpisy, które nie są zwalniane, co prowadzi do wycieku pamięci dla wszystkich sterowników używających tej funkcji.
- CVE-2026-90339Niskie ryzyko· EPSS 11%
W jądrze Linuksa dla architektury PowerPC wykryto podatność związaną z obsługą syscalli po włączeniu GENERIC_ENTRY. Gdy seccomp lub ptrace przechwytuje syscall i ustawia wartość zwrotną, system_call_exception() nie obsługiwał sygnału -1, co powodowało nadpisanie ustawionej wartości przez -ENOSYS. Poprawka wprowadza flagę wątku, która śledzi jawne ustawienie wartości zwrotnej i zapobiega jej nadpisaniu.
- CVE-2026-90338Niskie ryzyko· EPSS 10%
W jądrze Linux występuje podatność w sterowniku konsoli szeregowej amba-pl011. Funkcja pl011_console_write_atomic() wywoływana w kontekście atomowym (nbcon) używa clk_enable(), które w jądrze z PREEMPT_RT może zasnąć, co prowadzi do błędu "sleeping function called from invalid context". Problem dotyczy urządzeń arm32 i arm64 z Device Tree, gdzie UART korzysta z zegara zarządzanego przez common-clk.
- CVE-2026-90337Niskie ryzyko· EPSS 11%
W jądrze Linux w podsystemie serial core występuje podatność polegająca na tym, że alokacje pamięci dla uport->tty_groups i uport->name są wykonywane po rejestracji konsoli, co w przypadku niepowodzenia alokacji prowadzi do wyrejestrowania portu, podczas gdy konsola pozostaje zarejestrowana, a wskaźniki wskazują na zwolnioną pamięć. Może to prowadzić do dereferencji NULL (w konsoli PL011) lub use-after-free (w konsoli i.MX).
- CVE-2026-90336Niskie ryzyko· EPSS 11%
W jądrze Linux w funkcji uart_register_driver() występuje problem polegający na tym, że w przypadku niepowodzenia tty_alloc_driver() wskaźnik drv->state pozostaje wskazujący na zwolnioną pamięć, a w przypadku niepowodzenia tty_register_driver() wskaźnik drv->tty_driver również pozostaje po zwolnieniu referencji. Sterowniki używające drv->state jako flagi 'już zarejestrowany' mogą pominąć rejestrację przy następnym probe i przekazać zwolniony stan do uart_add_one_port().
- CVE-2026-90335Niskie ryzyko· EPSS 11%
W jądrze Linux w podsystemie TTY występuje podatność polegająca na tym, że rejestracja urządzenia TTY może zakończyć się niepowodzeniem przed alokacją cdev. Serial core zachowuje port, więc setserial może go nadal używać, a późniejsze usunięcie przekazuje wskaźnik NULL do cdev_del(), co powoduje dereferencję NULL.
- CVE-2026-90334Niskie ryzyko· EPSS 11%
W jądrze Linux w funkcji tty_cdev_add() występuje problem polegający na tym, że w przypadku niepowodzenia cdev_add() referencja do cdev jest zwalniana, ale wskaźnik driver->cdevs[index] pozostaje wskazujący na zwolnioną pamięć. Późniejsze wywołanie tty_unregister_device() przekazuje ten nieaktualny wskaźnik do cdev_del(), co prowadzi do use-after-free.
- CVE-2026-90333Niskie ryzyko· EPSS 5%
W jądrze Linux w module dm-integrity występuje podatność polegająca na tym, że znacznik bloku dysku o wartości wszystkich bajtów 0xf6 (DISCARD_FILLER) jest traktowany jako dowód, że blok został odrzucony, i pomija weryfikację HMAC. Atakujący z dostępem do zapisu na urządzeniu bazowym, ale bez klucza integralności, może oznaczyć dowolny blok takim znacznikiem i uzyskać jego autoryzację.
- CVE-2026-90332Wysokie
W jądrze Linux w sterowniku PCI dwc ep występuje podatność polegająca na tym, że w ścieżce MSI nie ma odpowiednika flush dla zapisu MSI przed odmapowaniem wpisu iATU. Może to spowodować utratę lub błędne przekierowanie zapisu MSI, który jest w locie, gdy wpis iATU jest usuwany.
- CVE-2026-90331Niskie ryzyko· EPSS 9%
W jądrze Linux w sterowniku HID dla urządzeń ASUS występuje wiele problemów: brak sprawdzania rozmiaru w asus_raw_event(), nieczyste sprzątanie w asus_probe przy błędzie, możliwe use-after-free w asus_probe, używanie wielu kolejek pracy, wywołania usypiające w kontekście atomowym oraz wysyłanie pakietów o nieprawidłowym rozmiarze do kontrolera klawiatury.
- CVE-2026-90330Niskie ryzyko· EPSS 11%
W jądrze Linux w sterowniku HID Logitech (hidpp) występuje problem polegający na tym, że w funkcji hidpp_ff_init(), jeśli alokacje prywatnych danych, tablicy ID efektów lub kolejki pracy nie powiodą się po utworzeniu urządzenia force-feedback, funkcja zwraca błąd bez niszczenia urządzenia FF, co prowadzi do wycieku zasobów.
- CVE-2026-90329Wysokie
W jądrze Linux w podsystemie HID występuje podatność polegająca na tym, że hid_device_io_start() pozwala na równoległe wykonywanie raportów z probe. Jeśli probe zakończy się niepowodzeniem, __hid_device_probe() zwalnia zasoby sterownika i czyści hdev->driver bez wykluczania tych wywołań zwrotnych raportów, co może prowadzić do use-after-free, np. w hidraw_report_event().
- CVE-2026-90328Niskie ryzyko· EPSS 11%
W jądrze Linux sterownik HID dla kontrolera Steam (HID: steam) ufał rozmiarowi wiadomości raportowanej w samym komunikacie FEATURE, zamiast weryfikować rzeczywistą długość odczytu. Prowadziło to do problemu z krótkimi odczytami (short reads).
- CVE-2026-90327Niskie ryzyko· EPSS 11%
W jądrze Linux funkcja pep_getsockopt() w module phonet ograniczała raportowaną długość do bufora wywołującego za pomocą min_t(), ale następnie zapisywała wartość przez put_user(), co zawsze zapisuje sizeof(int) bajtów. Wywołanie getsockopt() z optlen mniejszym niż sizeof(int) raportowało ograniczoną długość, ale zapisywało pełny int, od jednego do trzech bajtów poza buforem użytkownika.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

