Podatności Linux kernel
10 419 znanych podatności CVE w Linux kernel, przetłumaczonych i ocenionych.
- CVE-2026-98945Wysokie
W jądrze Linux w sterowniku HID steam istniało wąskie okno podczas sekwencji zamykania, w którym callbacki mogły być nadal planowane, a następnie odwoływać się do zwolnionej struktury steam (wiszący wskaźnik). Poprawka zmienia kolejność zamykania i przenosi anulowanie pracy rumble i przełączania trybu do steam_unregister.
- CVE-2026-98944Wysokie
W jądrze Linux w sterowniku HID steam uproszczono przepływ rejestracji/wyrejestrowania, usuwając założenie o numerze seryjnym na rzecz flagi logicznej. Poprawiono również błąd, w którym przy niepowodzeniu późniejszych kroków rejestracji nie wyrejestrowywano baterii, pozostawiając obiekt power_supply po zniszczeniu obiektu steam.
- CVE-2026-98942Niskie ryzyko· EPSS 5%
W jądrze Linux w podsystemie sched_ext naprawiono problem wyścigu podczas publikowania tablic cid. Tablice były widoczne dla kfunców cid w trakcie modyfikacji, co mogło prowadzić do odczytu niezainicjalizowanej pamięci lub niespójnych danych topologii przez współbieżne programy TRACING lub SYSCALL.
- CVE-2026-98941Wysokie
W jądrze Linux w podsystemie ext4 występuje błąd polegający na tym, że duże folie (large folios) nie są wyłączane dla zaszyfrowanych inodów, gdy funkcja szyfrowania zostanie włączona na już zamontowanym systemie plików. Prowadzi to do awarii jądra (NULL pointer dereference) podczas zapisu zaszyfrowanych danych. Problem dotyczy jąder od v6.19 do v7.2.
- CVE-2026-98940Niskie ryzyko· EPSS 6%
W jądrze Linux w sterowniku ASoC qcom lpass-cpu podczas konfiguracji DAI w trybie LPAIF_I2SCTL_MODE_QUAD01 używany jest identyfikator DAI do indeksowania tablicy variant->dai_driver. Na platformach, gdzie identyfikatory DAI są rzadkie (np. IPQ806x MI2S o ID 4), powoduje to zapis poza tablicą zamiast aktualizacji właściwego wpisu.
- CVE-2026-98937Niskie ryzyko· EPSS 6%
W jądrze Linux w podsystemie perf/core funkcja perf_event_open() sprawdza uprawnienia perf_allow_kernel() tylko na podstawie !attr.exclude_kernel. Użytkownicy mogą jednak żądać zbierania łańcuchów wywołań jądra z attr.exclude_callchain_kernel == 0 nawet gdy attr.exclude_kernel == 1, co nie jest egzekwowane.
- CVE-2026-98936Niskie ryzyko· EPSS 6%
W jądrze Linux w sterowniku wifi ath11k podczas restartu sprzętu (hw restart) licznik ar->num_stations nie jest resetowany w ath11k_mac_op_start(). Prowadzi to do sytuacji, w której nie można dodać nowych stacji lub peerów mesh, ponieważ licznik pozostaje zawyżony.
- CVE-2026-98935Niskie ryzyko· EPSS 7%
W jądrze Linux struktura rtc_wkalrm ma luki wypełniające po polu 'pending'. Gdy jest zwracana do przestrzeni użytkownika przez ioctl RTC_WKALRM_RD, niezainicjalizowane dane stosu jądra mogą wyciec.
- CVE-2026-98934Niskie ryzyko· EPSS 6%
W jądrze Linux naprawiono podatność w funkcji seg6_make_flowlabel() (IPv6 Segment Routing), która wywoływała skb_get_hash() bez wymaganego wskaźnika net. Gdy pakiet nie miał ustawionego skb->dev ani skb->sk (np. komunikat discovery przez bearer TIPC UDP z enkapsulacją seg6 przy włączonym net.ipv6.seg6_flowlabel), dochodziło do ostrzeżenia i błędu w __skb_flow_dissect(). Poprawka polega na użyciu skb_get_hash_net() z już dostępnym wskaźnikiem net.
- CVE-2026-98933Niskie ryzyko· EPSS 6%
W jądrze Linux rozwiązano problem polegający na tym, że przywracanie huba USB3 powodowało wyzwalanie problemu na platformach AMD z powodu zbyt długiego (200 ms) utrzymywania referencji PM runtime. Skrócono ten czas do 120 ms dla głównych hubów USB3 (roothub), zachowując 200 ms dla hubów zewnętrznych.
- CVE-2026-98932Wysokie
W jądrze Linux w sterowniku EDAC/altera naprawiono błąd use-after-free w ścieżkach błędów. Struktura dci była zwalniana przed wyrejestrowaniem obsługiwanych przerwań, co mogło prowadzić do użycia zwolnionej pamięci przez procedurę obsługi przerwania.
- CVE-2026-98931Niskie ryzyko· EPSS 6%
W jądrze Linux w podsystemie MTD/spinand naprawiono błąd dereferencji wskaźnika NULL, który występował gdy w drzewie urządzeń ustawiono 'nand-no-ecc-engine'. W takim przypadku nand->ecc.engine pozostawał NULL, a kod SPI-NAND bezwarunkowo go dereferencjonował, powodując oops podczas próby wykrycia urządzenia.
- CVE-2026-98927Wysokie
W jądrze Linux w KVM dla architektury arm64 (nv) naprawiono cykl życia tablicy nested_mmus. Tablica przechowująca cieniowe tablice stron mogła zostać przeniesiona podczas VCPU_INIT, gdy inny vCPU aktywnie działał, pozostawiając wiszący wskaźnik do zwolnionej pamięci.
- CVE-2026-98926Niskie ryzyko· EPSS 5%
W jądrze Linux w sterowniku drm/amd/display naprawiono problem polegający na tym, że w sekwencjach DPMS używano stream->sink bez sprawdzenia NULL. Ponieważ stream->sink jest opcjonalny, mogło to prowadzić do dereferencji NULL; zastąpiono go stream->link i dodano asercje.
- CVE-2026-98917Niskie ryzyko· EPSS 6%
W jądrze Linux na architekturze parisc zwiększono domyślny rozmiar stosu jądra (THREAD_SIZE_ORDER) do 32 kB dla jąder 64-bitowych, aby uniknąć panik jądra wywoływanych przepełnieniem stosu, obserwowanych m.in. przy budowaniu pakietu debian vtk9 z gcc 17.
- CVE-2026-98916Niskie ryzyko· EPSS 7%
W jądrze Linux rozwiązano podatność w wifi: nl80211, gdzie podczas zmiany koloru należy najpierw zweryfikować, czy łącze nadaje beacon, aby uniknąć wywołania sterownika z nieprawidłowym łączem.
- CVE-2026-98915Niskie ryzyko· EPSS 7%
W jądrze Linux rozwiązano podatność w media: video-i2c, gdzie sterownik używa vb2_fop_release() jako operacji zwolnienia pliku, więc podczas usuwania sterownika należy użyć vb2_video_unregister_device() zamiast video_unregister_device(). Zapewnia to prawidłowe odłączenie kolejki vb2 przed wyrejestrowaniem urządzenia wideo.
- CVE-2026-98914Niskie ryzyko· EPSS 5%
W jądrze Linux w sterowniku drm/amdgpu brakowało ograniczenia głębokości zagnieżdżenia tabel poleceń ATOM. Wprowadzono limit 32 poziomów z licznikiem execute_depth i zwracanie błędu -ELOOP po jego przekroczeniu.
- CVE-2026-98913Niskie ryzyko· EPSS 7%
W jądrze Linux w sterowniku net: thunderx funkcja cavium_ptp_get() pozyskuje referencję do urządzenia PCI PTP, ale w przypadku błędu inicjalizacji po jej wywołaniu referencja nie jest zwalniana. Dodano wspólną ścieżkę błędu zwalniającą referencję PTP przed powrotem z probe.
- CVE-2026-98912Niskie ryzyko· EPSS 8%
W jądrze Linux w ALSA seq oss funkcja snd_seq_oss_read() miała odwrócony warunek sprawdzania, czy kolejne zdarzenie zmieści się w buforze użytkownika. Powodowało to niekopiowanie poprawnych zdarzeń lub kopiowanie zdarzeń większych niż bufor odczytu.
- CVE-2026-98911Wysokie
W jądrze Linux w sterowniku dpaa2-switch ścieżka błędu w dpaa2_switch_rx() niepoprawnie wywoływała dpaa2_switch_free_fd(), która jest przeznaczona dla deskryptorów Tx i oczekuje wskaźnika skb. Poprawka przenosi dma_unmap_page() do dpaa2_switch_rx() i używa free_pages() lub kfree_skb() zależnie od etapu błędu.
- CVE-2026-98910Niskie ryzyko· EPSS 7%
W jądrze Linux w drm/amdkfd funkcja kfd_dbg_trap_enable() przy błędzie copy_to_user nie cofała aktywacji pułapki debugowania, ustawionego debug_trap_enabled, dodatkowej referencji procesu ani otwartego pliku zdarzeń debugowania. Poprawka dezaktywuje pułapkę i cofa resztę konfiguracji przed zwrotem błędu.
- CVE-2026-98909Niskie ryzyko· EPSS 8%
W jądrze Linux w sterowniku net: cpsw_new funkcja cpsw_probe() rejestruje devlink przed rejestracją portów CPSW. Gdy cpsw_register_ports() zawiedzie, ścieżka błędu nie wyrejestrowuje devlink, pozostawiając jego instancję i parametry zarejestrowane po nieudanym probe.
- CVE-2026-98908Niskie ryzyko· EPSS 7%
W jądrze Linux w sterowniku net: microchip: sparx5 funkcja sparx5_tc_flower_psfp_setup() alokuje zasoby PSFP przed dodaniem akcji VCAP, a przy późniejszym błędzie nie zwalnia wcześniej przydzielonych zasobów. Dodano ścieżki błędu zwalniające filtr strumienia, miernik przepływu i bramkę strumienia oraz poprawiono zwracanie identyfikatora miernika przepływu.
- CVE-2026-98907Niskie ryzyko· EPSS 5%
W jądrze Linux w btrfs funkcja sb_write_pointer() odczytuje superblok z pamięci podręcznej stron urządzenia blokowego przez read_cache_page_gfp() bez ochrony przed zmianą rozmiaru bloku. Poprawka obejmuje ten odczyt blokadą invalidate lock, aby zsynchronizować go ze zmianami rozmiaru bloku.
- CVE-2026-98906Niskie ryzyko· EPSS 7%
W jądrze Linux w sterowniku net: lan966x funkcja lan966x_fdma_reload() przy nieudanej alokacji zasobów RX dla nowego MTU nie przywracała pól rx->page_order i rx->max_mtu ani rejestracji page pool w XDP RXQ portów. Poprawka zapisuje i przywraca te pola oraz starą rejestrację page pool przed ponownym uruchomieniem RX.
- CVE-2026-98905Niskie ryzyko· EPSS 7%
W jądrze Linux w drm/amdkfd funkcja set_queue_properties_from_criu() nie wywoływała kfd_queue_acquire_buffers() po wydzieleniu tej funkcji z set_queue_properties_from_user(), przez co pola buforów queue_properties nie były wypełniane. Poprawka dodaje właściwe wywołanie oraz poprawne rzutowanie typów.
- CVE-2026-98904Niskie ryzyko· EPSS 7%
W jądrze Linux w sterowniku mailbox imx występuje problem z kolejnością inicjalizacji i wyłączania zarządzania energią (pm_runtime). Wczesne wywołanie pm_runtime_enable() przed zakończeniem probe może prowadzić do użycia urządzenia w niepełnym stanie. Poprawka przenosi obsługę pm_runtime na mechanizm devm i zmienia kolejność rejestracji kontrolera mailbox.
- CVE-2026-98903Niskie ryzyko· EPSS 7%
W jądrze Linux w sterowniku mailbox imx występuje wyścig między obsługą przerwania (imx_mu_isr) a zamykaniem kanału (imx_mu_shutdown). W krótkim oknie zdarzenie RX może zostać ponownie włączone przez ISR po wyłączeniu w shutdown, co przy współdzielonych handlerach przerwań może prowadzić do komunikatu "nobody cared". Poprawka dodaje pole shutdown sygnalizujące zamykanie kanału i serializuje dostęp za pomocą blokady.
- CVE-2026-98902Niskie ryzyko· EPSS 7%
W jądrze Linux w podsystemie md/raid5 porównanie 32-bitowego licznika sekwencji bm_seq w partii stripe nie jest odporne na przepełnienie. Po zawinięciu licznika nowsza wartość może wyglądać na mniejszą niż starsza. Poprawka wprowadza bezpieczne dla przepełnienia porównanie.
- CVE-2026-98901Niskie ryzyko· EPSS 7%
W jądrze Linux w serwerze ksmbd występuje błąd obsługi stanów lease break i potwierdzeń. Przy przerywaniu lease'ów poziomu II/czytania dla zapisów i obcięć pomijane są prawidłowe stany zawierające WRITE_CACHING. Poprawka stosuje potwierdzony stan bezpośrednio i utrzymuje przerwanie w stanie oczekującym przy nieudanych potwierdzeniach.
- CVE-2026-98900Niskie ryzyko· EPSS 7%
W jądrze Linux w module xen/gntalloc funkcja gntalloc_ioctl_alloc() przydziela tablicę identyfikatorów grantów przed sprawdzeniem, czy żądana liczba mieści się w globalnym limicie. Liczby przekraczające limit nie mogą się powieść, więc poprawka odrzuca je przed wywołaniem kcalloc(). Wprowadzono też sprawdzenie oparte na odejmowaniu pod blokadą gref_mutex oraz rzutowanie przed mnożeniem przez rozmiar strony.
- CVE-2026-98899Wysokie
W jądrze Linux w podsystemie netfilter ipset obszary chronione blokadą RCU nie są prawidłowo oznaczane. Po zwiększeniu licznika uref nie ma potrzeby utrzymywania blokady RCU, ponieważ odwoływana tablica hash nie może zniknąć. Poprawka koryguje użycie blokad RCU i spinlock w mtype_gc.
- CVE-2026-98898Niskie ryzyko· EPSS 7%
W jądrze Linux w sterowniku drm/amd/pm/si kolejka pracy termicznej nie jest inicjalizowana, gdy DPM jest wyłączone parametrem modułu amdgpu.dpm=0. Mimo to podejmowana jest próba zaplanowania pracy w tej kolejce. Poprawka zapobiega planowaniu pracy termicznej, gdy kolejka nie jest zainicjalizowana.
- CVE-2026-98897Niskie ryzyko· EPSS 5%
W jądrze Linux w serwerze ksmbd funkcja __smb_break_all_levII_oplock() oczekuje na potwierdzenie przerwania lease'a, trzymając blokadę ci->m_lock do odczytu. Klient cifs.ko reaguje na przerwanie lease'a uchwytu zamknięciem odroczonego uchwytu, co wymaga blokady do zapisu i blokuje się, powodując oczekiwanie do 35 sekund. Poprawka zbiera opinfo pod blokadą, a następnie przerywa je po jej zwolnieniu, używając referencji.
- CVE-2026-98896Niskie ryzyko· EPSS 8%
W jądrze Linux w podsystemie thunderbolt obsługa zdarzeń hotplug odbywa się w kolejce pracy, która może zostać uruchomiona po usunięciu domeny przez tb_domain_remove(). Może to prowadzić do użycia po zwolnieniu (UAF), gdy sterownik jest wyładowywany w trakcie podłączania urządzenia. Poprawka pobiera referencję do domeny przed zaplanowaniem procedury hotplug.
- CVE-2026-98895Wysokie
W jądrze Linux w sterowniku net/mlx5 HWS występuje problem podczas niszczenia tabeli, która ma tabelę miss utworzoną przez mlx5hws_table_set_default_miss. Tabela miss przechowuje w liście tabelę, która na nią wskazuje. Przy usuwaniu takiej tabeli nie jest ona usuwana z listy tabeli miss, co pozostawia węzeł z nieprawidłowymi danymi.
- CVE-2026-98894Niskie ryzyko· EPSS 5%
W jądrze Linux w obsłudze drm/amd/ras wykryto błąd polegający na tym, że przy przepełnieniu pierścienia CPER rozmiar wpisu jest odczytywany z uszkodzonych danych. Może to spowodować brak postępu wskaźnika odczytu i zawieszenie wątku roboczego zapisującego kolejny rekord CPER. Poprawka wykrywa brak postępu i resetuje pierścień CPER do stanu pustego.
- CVE-2026-98893Niskie ryzyko· EPSS 8%
W jądrze Linux w sterowniku firmware arm_scmi parser powiadomień SENSOR_UPDATE nie weryfikował, czy odebrany ładunek zawiera wszystkie odczyty czujników wynikające z opisu czujnika. Odczyty były parsowane mimo obcięcia danych. Poprawka odrzuca obcięte powiadomienia przed odczytem tablicy zmiennej długości.
- CVE-2026-98892Niskie ryzyko· EPSS 8%
W jądrze Linux w arm_scmi parser powiadomień BASE_ERROR_EVENT używał liczby raportów z pola error_status bez sprawdzenia, czy odebrany ładunek zawiera wszystkie zgłoszone wpisy. Obcięte ładunki mogły powodować kopiowanie poza granice bufora. Poprawka odrzuca obcięte ładunki przed kopiowaniem tablicy raportów.
- CVE-2026-98891Niskie ryzyko· EPSS 7%
W jądrze Linux w module wifi mac80211 funkcja ieee80211_rx_mgmt_deauth() odczytywała kod przyczyny deautoryzacji przed sprawdzeniem, czy pole stałe faktycznie występuje w odebranej ramce. Poprawka najpierw waliduje długość ramki deautoryzacji, a dopiero potem odczytuje kod przyczyny.
- CVE-2026-98890Niskie ryzyko· EPSS 8%
W jądrze Linux w sterowniku wifi libertas funkcja lbs_hard_start_xmit() w trybie monitorowania rzutowała dane skb na nagłówek radiotap TX i kopiowała adres docelowy 802.11 z przesunięcia 4, bez sprawdzenia minimalnej długości ramki. Ogólne sprawdzenie długości odrzucało tylko puste i zbyt duże skb, więc krótka ramka monitorowania mogła spowodować odczyt poza końcem danych skb. Poprawka wymaga wystarczającej liczby bajtów na nagłówek radiotap TX i pole adresu docelowego.
- CVE-2026-98889Wysokie
W jądrze Linux w sterowniku wifi iwlwifi mvm skanowanie zaplanowane budowało probe request przed sprawdzeniem iwl_mvm_scan_fits(), więc zbyt duże IE mogły zostać skopiowane do stałego bufora preq przed walidacją długości. Poprawka przenosi iwl_mvm_build_scan_probe() po sprawdzeniu fits oraz zgłasza max_sched_scan_ie_len za pomocą iwl_mvm_max_scan_ie_len(), aby limity przestrzeni użytkownika uwzględniały bajty DS/TPC wstawiane przez sterownik.
- CVE-2026-98888Niskie ryzyko· EPSS 8%
W jądrze Linux na architekturze arm64 podatność dotyczy obsługi kprobes podczas single-steppingu. Trafienie kprobe w stanie KPROBE_HIT_SS było błędnie uznawane za nieodwracalne, co mogło prowadzić do utraty stanu przerwań i trwałego wyłączenia przerwań. Poprawka umożliwia bezpieczne ponowne wejście w kprobe w tym stanie oraz zapisuje i przywraca saved_irqflag w struct prev_kprobe.
- CVE-2026-98887Niskie ryzyko· EPSS 12%
W jądrze Linux w module wifi mac80211_hwsim funkcja hwsim_tx_info_frame_received_nl() rzutowała ładunek HWSIM_ATTR_TX_INFO na strukturę hwsim_tx_rate * i bezwarunkowo odczytywała IEEE80211_TX_MAX_RATES wpisów (8 bajtów). Polityka ograniczała atrybut tylko od góry, a operacja ustawiała GENL_DONT_VALIDATE_STRICT, więc krótki lub pusty atrybut był akceptowany i pętla czytała poza ładunkiem. Poprawka wymaga dokładnej długości w polityce, aby nieprawidłowy atrybut był odrzucany przed uruchomieniem handlera.
- CVE-2026-98886Niskie ryzyko· EPSS 8%
W jądrze Linux w sterowniku drm/gma500 funkcja xfer_read() czekała na zakończenie transakcji HDMI I2C, ale ignorowała zarówno przekroczenie limitu czasu, jak i przerwanie sygnału z wait_for_completion_interruptible_timeout(). Jeśli przerwanie nigdy nie zmieniło stanu transakcji, pętla mogła czekać w nieskończoność. Poprawka zwraca -ETIMEDOUT przy wygaśnięciu oczekiwania, propaguje przerwane oczekiwania i sprawia, że callback master_xfer zwraca pierwszy błąd transferu zamiast zgłaszać sukces.
- CVE-2026-98885Niskie ryzyko· EPSS 7%
W jądrze Linux naprawiono błąd w podsystemie IMA (Integrity Measurement Architecture), który podczas wczesnego rozruchu próbował zmieniać rozszerzone atrybuty (xattr) plików na systemie plików tylko do odczytu. W przypadku ext4 powodowało to uruchomienie transakcji journaling i ostrzeżenie jądra. Poprawka wcześnie wykrywa stan pliku i zwraca błąd zamiast podejmować niedozwoloną operację.
- CVE-2026-98884Niskie ryzyko· EPSS 8%
W jądrze Linux w podsystemie MMC (mmc: core) brakowało walidacji pola max_segs dostarczanego przez sterownik hosta. Jeśli sterownik ustawi zbyt dużą wartość, pole typu unsigned short może zostać obcięte do zera, co powoduje wywołanie kmalloc(0) i zwrócenie wskaźnika ZERO_SIZE_PTR, a następnie dostęp do nieprawidłowej pamięci w sg_init_table() i awarię jądra (Oops).
- CVE-2026-98883Niskie ryzyko· EPSS 5%
W jądrze Linux sterownik portu szeregowego 8250 nie rozpoznawał typu UPIO_AU (typ 4), co powodowało ostrzeżenie i nieobsługiwany typ UART podczas próbkowania na systemach MIPS Alchemy. Poprawka dodaje rozpoznanie UPIO_AU w set_io_from_upio() bez wykonywania dodatkowych działań, ponieważ parametry są już ustawione w au_platform_setup().
- CVE-2026-98882Niskie ryzyko· EPSS 9%
W jądrze Linux sterownik media chips-media wave5 nie sprawdzał zakresu danych w dec_output_info, co mogło prowadzić do zapisu poza dozwolonym obszarem pamięci (przepełnienie bufora inst->frame_buf). Poprawka dodaje kontrolę zakresu dla tych danych.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

