Podatności Linux kernel
5630 znanych podatności CVE w Linux kernel, przetłumaczonych i ocenionych.
- CVE-2025-40012Wysokie
W jądrze Linux wykryto podatność w module SMC (Shared Memory Communications). Funkcja smc_rx_splice() wywołuje get_page() na buforach DMB alokowanych przez kzalloc(), które nie są stronami pamięci, co powoduje ostrzeżenie WARN_ON_ONCE() i może prowadzić do użycia po zwolnieniu (use-after-free).
- CVE-2025-40006Wysokie
W jądrze Linux wykryto podatność w mechanizmie hugetlb, gdzie podczas migracji strony może dojść do wyścigu z operacją fallocate. Funkcja remove_inode_single_folio sprawdza, czy folio jest zmapowane, ale robi to bez blokady, co prowadzi do błędnego usunięcia wciąż zmapowanego folio i wywołania BUG w filemap_unaccount_folio.
- CVE-2025-40000Wysokie
W sterowniku rtw89 dla układów WiFi Realtek wykryto błąd use-after-free w funkcji rtw89_core_tx_kick_off_and_wait(). Problem wynika z wyścigu między wątkiem oczekującym na zakończenie transmisji a wątkiem sygnalizującym jej zakończenie, co prowadzi do dostępu do już zwolnionego bufora skb.
- CVE-2025-39998Wysokie
W jądrze Linux w funkcji target_lu_gp_members_show w pliku target_core_configfs.c występuje podatność na przepełnienie bufora. Funkcja snprintf może zwrócić wartość większą niż rozmiar bufora (256 bajtów), co prowadzi do przepełnienia podczas kopiowania przez memcpy.
- CVE-2025-39994Wysokie
W sterowniku tunera xc5000 w jądrze Linux występuje błąd use-after-free (użycie po zwolnieniu) w funkcji xc5000_release. Funkcja cancel_delayed_work() nie gwarantuje zakończenia opóźnionego zadania timer_sleep, co prowadzi do wyścigu: zwolnienie pamięci priv, a następnie próba jej dereferencji przez wciąż działające zadanie.
- CVE-2025-39993Wysokie
W sterowniku iMON dla pilota zdalnego sterowania w jądrze Linuxa wykryto podatność na użycie po zwolnieniu (use-after-free). Problem wynika z braku synchronizacji między funkcją imon_disconnect() a aktywnymi operacjami zapisu, co może prowadzić do dostępu do zwolnionego wskaźnika usb_device.
- CVE-2025-39990Wysokie
W weryfikatorze BPF jądra Linux stwierdzono podatność polegającą na tym, że funkcja get_helper_proto może zwrócić NULL, gdy funkcja pomocnicza jest wyłączona przez opcję konfiguracji, co może prowadzić do dereferencji wskaźnika NULL. Poprawka dodaje sprawdzenie poprawności wskaźnika funkcji pomocniczej.
- CVE-2025-39988Wysokie
W sterowniku etas_es58x dla Linuxa brakuje implementacji funkcji ndo_change_mtu(), co pozwala atakującemu ustawić nieprawidłową wartość MTU (np. 9999) dla interfejsu CAN. Następnie przez gniazdo PF_PACKET można wysłać spreparowaną ramkę CAN XL, która omija standardowe kontrole i powoduje przepełnienie bufora (buffer overflow) o 247 bajtów.
- CVE-2025-39987Wysokie
W sterowniku CAN hi311x dla jądra Linux brakuje implementacji funkcji ndo_change_mtu(), co pozwala atakującemu ustawić nieprawidłową wartość MTU (np. 9999) i wysłać złośliwą ramkę CAN XL przez gniazdo PF_PACKET. Powoduje to przepełnienie bufora w funkcji hi3110_hw_tx() podczas kopiowania danych ramki, ponieważ sterownik błędnie interpretuje ramkę CAN XL jako zwykłą ramkę CAN.
- CVE-2025-39986Wysokie
W sterowniku sun4i_can dla układów CAN w jądrze Linux brakuje implementacji funkcji ndo_change_mtu(), co pozwala atakującemu na ustawienie dowolnie dużego MTU interfejsu. Wykorzystując to, przez gniazdo PF_PACKET można wysłać spreparowaną ramkę CAN XL, która po przejściu kontroli trafia do funkcji xmit() i powoduje przepełnienie bufora o 247 bajtów.
- CVE-2025-39985Wysokie
W sterowniku mcba_usb dla Linuxa brakuje implementacji funkcji ndo_change_mtu(), co pozwala atakującemu ustawić nieprawidłową wartość MTU (np. 9999) i wysłać złośliwą ramkę CAN XL przez gniazdo PF_PACKET. Ramka ta omija standardowe kontrole i powoduje przepełnienie bufora o 247 bajtów, ponieważ sterownik błędnie interpretuje pole flags jako długość danych.
- CVE-2025-39983Wysokie
W jądrze Linuxa w stosie Bluetooth wykryto podatność Use-After-Free (UAF) w funkcji hci_conn_tx_dequeue. Problem występuje podczas przetwarzania zdarzenia HCI_EV_NUM_COMP_PKTS z powodu braku odpowiedniego blokowania struktury hdev, co prowadzi do odczytu zwolnionej pamięci.
- CVE-2025-39982Wysokie
W jądrze Linux wykryto podatność use-after-free (UAF) w funkcjach Bluetooth: hci_acl_create_conn_sync i hci_le_create_conn_sync. Problem występuje, gdy połączenie oczekujące na zakończenie (conn->state == BT_OPEN) zostanie zwolnione przed zakończeniem operacji, co prowadzi do zapisu do już zwolnionej pamięci.
- CVE-2025-39981Wysokie
W jądrze Linux wykryto podatność Use-After-Free (UAF) w stosie Bluetooth MGMT. Problem wynika z możliwości zwolnienia struktury mgmt_pending podczas jej przetwarzania, co może prowadzić do dostępu do już zwolnionej pamięci. Łatka wprowadza funkcję mgmt_pending_valid oraz dodatkowe zabezpieczenia z blokadą mgmt_pending_lock.
- CVE-2025-39980Niskie ryzyko· EPSS 9%
W jądrze Linux stwierdzono podatność w mechanizmie nexthop, która pozwala na zmianę typu nexthopa z FDB na nie-FDB (i odwrotnie), gdy nexthop jest już członkiem grupy. Prowadzi to do dereferencji wskaźnika NULL (NPD) podczas routowania pakietów, co może skutkować awarią systemu.
- CVE-2025-39979Wysokie
W jądrze Linux w sterowniku sieciowym mlx5 występuje błąd use-after-free (UAF) podczas zwalniania licznika przepływu. Przy usuwaniu reguły HWS akcja licznika może być już zwolniona, a jej struktura nie ma zainicjowanych refcount i mutexu.
- CVE-2025-39978Wysokie
W jądrze Linux w sterowniku octeontx2-pf wykryto podatność polegającą na użyciu pamięci po jej zwolnieniu (use-after-free) w funkcji otx2_tc_add_flow(). Problem wynika z wywołania kfree_rcu() przed dereferencją wskaźnika new_node, co może prowadzić do naruszenia bezpieczeństwa pamięci.
- CVE-2025-39977Wysokie
W jądrze Linux wykryto podatność w mechanizmie futex, umożliwiającą użycie po zwolnieniu (use-after-free) podczas operacji requeue-PI. Błąd wynika z braku synchronizacji odczytu pola futex_q::task przed aktualizacją stanu requeue, co może prowadzić do wyścigu i dostępu do już zwolnionej pamięci.
- CVE-2025-39976Wysokie
W jądrze Linux w funkcji futex_hash_allocate_default() używana jest nieprawidłowa etykieta wyjścia błędu w copy_process(). Po niepowodzeniu alokacji używana jest etykieta bad_fork_core_free, która odblokowuje niepobrane blokady (tasklist_lock, siglock), zamiast poprawnej etykiety bad_fork_cancel_cgroup.
- CVE-2025-39973Wysokie
W sterowniku i40e w jądrze Linux brakuje walidacji parametru ring_len przekazywanego przez funkcję wirtualną (VF). Parametr ten jest przypisywany bezpośrednio do kontekstu pamięci sprzętowej (HMC), co może prowadzić do nieprawidłowej konfiguracji kolejek Tx i Rx.
- CVE-2025-39969Wysokie
W sterowniku i40e w jądrze Linux walidacja stanu VF w funkcji get resources używała flagi I40E_VF_STATE_ACTIVE, która nie jest jedynym stanem aktywności VF. Poprawka używa flagi I40E_VF_STATE_RESOURCES_LOADED, ustawianej tylko podczas pobierania zasobów i czyszczonej podczas resetu.
- CVE-2025-39967Wysokie
W jądrze Linuxa w sterowniku fbcon występuje podatność na przepełnienie liczb całkowitych w funkcji fbcon_do_set_font. Obliczenia rozmiaru czcionki mogą ulec przepełnieniu przy kontrolowanych przez użytkownika parametrach, prowadząc do zbyt małych alokacji i przepełnienia bufora.
- CVE-2025-39966Wysokie
W jądrze Linuxa w podsystemie iommufd wykryto podatność na użycie po zwolnieniu (UAF) podczas przerywania alokacji deskryptorów plików. Funkcja fput() nie wywołuje synchronicznie release(), co prowadzi do przedwczesnego zwolnienia obiektu iommufd_object przed zakończeniem operacji na pliku.
- CVE-2025-39965Wysokie
W jądrze Linux w podsystemie xfrm funkcja xfrm_alloc_spi może przypisać SPI równe 0, co jest nieprawidłowe (oznacza brak SPI). Powoduje to dodanie stanu do listy byspi, ale __xfrm_state_delete nie usuwa go stamtąd, co prowadzi do use-after-free przy kolejnym przejściu listy.
- CVE-2025-39964Wysokie
W jądrze Linuxa wykryto podatność w mechanizmie af_alg, która pozwalała na współbieżne zapisy do tego samego gniazda af_alg. Powodowało to nieprzewidywalne przeplatanie danych oraz potencjalne niespójności w stanie wewnętrznym gniazda.
- CVE-2025-39961Wysokie
W jądrze Linux wykryto podatność w sterowniku AMD IOMMU, polegającą na wyścigu podczas zwiększania poziomu tablicy stron. Funkcja fetch_pte() w ścieżce unmap odczytuje wskaźnik root i poziom tablicy bez blokady, co w skrajnym przypadku może prowadzić do niespójności i niepowodzenia operacji unmap.
- CVE-2025-39957Wysokie
W jądrze Linux w podsystemie mac80211 (WiFi) nie uwzględniono elementu zdolności S1G w scan_ies_len. Powoduje to błąd walidacji długości bufora w ieee80211_prep_hw_scan() i ostrzeżenie WARN w __ieee80211_start_scan(), uniemożliwiając skanowanie sprzętowe.
- CVE-2025-39956Wysokie
W sterowniku igc (Intel Gigabit Ethernet) jądra Linuxa, funkcja igc_probe() kończyła się niepowodzeniem, gdy igc_led_setup() zawiodła, co prowadziło do paniki jądra w free_netdev() z powodu pominięcia unregister_netdev(). Ponieważ obsługa LED nie jest obowiązkowa, poprawka traktuje błędy konfiguracji LED jako niekrytyczne i kontynuuje działanie z ostrzeżeniem, zapobiegając panice.
- CVE-2025-39955Wysokie
W jądrze Linuxa wykryto podatność w implementacji TCP Fast Open. Funkcja tcp_disconnect() nie czyściła wskaźnika fastopen_rsk, co powodowało, że po ponownym użyciu gniazda (np. po connect(AF_UNSPEC) i nowym connect()) uruchamiał się nieprawidłowy retransmiter, wywołując ostrzeżenie i potencjalnie zakłócając działanie sieci.
- CVE-2023-53635Wysokie
W jądrze Linux w module netfilter conntrack występuje błąd w obliczaniu wartości ct->timeout. Dla niepotwierdzonych połączeń wartość ta jest błędnie modyfikowana (dodawane/odejmowane nfct_time_stamp), co prowadzi do nieprawidłowych wartości limitu czasu.
- CVE-2022-50535Średnie
W jądrze Linux w sterowniku graficznym AMD (drm/amd/display) funkcja dm_resume może wykonać dereferencję wskaźnika NULL, jeśli 'aconnector->dc_link' jest null. Poprawka dodaje sprawdzenie na początku pętli, aby uniknąć tego problemu.
- CVE-2022-50527Średnie
W jądrze Linux w sterowniku AMDGPU funkcja amdgpu_bo_validate_size() nie sprawdza, czy menedżer domen TTM dla żądanej pamięci istnieje, co może prowadzić do błędu jądra (kernel oops) przy dereferencji wskaźnika 'man'. Poprawka dodaje sprawdzenie, czy wskaźnik menedżera nie jest NULL.
- CVE-2023-53596Wysokie
W jądrze Linuxa rozwiązano podatność związaną z niezwalnianiem zasobów urządzeń podczas ich wyrejestrowania. Problem dotyczy urządzeń bez magistrali lub sterownika, które mogą nie zostać zwolnione, jeśli zarządzany zasób utrzymuje odniesienie do urządzenia.
- CVE-2023-53543Wysokie
W jądrze systemu Linux zidentyfikowano podatność związaną z walidacją atrybutów w strukturze vdpa_nl_policy. Brak odpowiedniej polityki dla atrybutu max vqp może prowadzić do nielegalnych wskaźników nlattr, co z kolei może skutkować odczytem poza granicami pamięci.
- CVE-2022-50507Wysokie
W jądrze Linux w systemie plików NTFS3 (fs/ntfs3) brakowało walidacji offsetu przebiegu danych (data run offset). Może to prowadzić do użycia po zwolnieniu (use-after-free) lub nieoczekiwanego dostępu do pamięci podczas montowania specjalnie spreparowanego obrazu NTFS.
- CVE-2022-50479Średnie
W jądrze Linux w sterowniku drm/amd wykryto potencjalny wyciek pamięci. Problem występuje, gdy funkcja zwraca NULL na końcu, co prowadzi do niezwolnienia pamięci przydzielonej dla clk_src. Poprawka zamienia wywołanie free na kfree.
- CVE-2025-39953Średnie
W jądrze Linuxa wykryto podatność polegającą na zakleszczeniu (hung task) podczas testów LTP z kontrolerami cgroup. Problem występuje przy wielokrotnym montowaniu/odmontowywaniu kontrolerów perf_event i net_prio, gdy kolejkowanie zadań w jednej kolejce roboczej cgroup_destroy_wq prowadzi do blokady. Rozwiązaniem jest podział kolejki na trzy dedykowane: cgroup_offline_wq, cgroup_release_wq i cgroup_free_wq.
- CVE-2025-39952Wysokie
W jądrze Linuxa w sterowniku WiFi wilc1000 występuje podatność na przepełnienie bufora podczas konfiguracji łańcucha WID. Funkcja wilc_wlan_parse_response_frame kopiuje dane bez sprawdzania rozmiaru, co może prowadzić do przepełnienia bufora.
- CVE-2025-39951Wysokie
W sterowniku virtio_uml jądra Linux wykryto podatność use-after-free. Gdy funkcja register_virtio_device() zawiedzie, kod błędnie ustawia flagę vu_dev->registered = 1, co może prowadzić do użycia zwolnionej pamięci.
- CVE-2025-39949Wysokie
W sterowniku QLogic QED w jądrze Linuxa wykryto podatność polegającą na tym, że firmware może zwrócić zbyt wiele elementów GRC podczas zrzutu ochrony nadpisań, co prowadzi do zapisu poza przydzielonym buforem i paniki jądra. Problem występuje w funkcji qed_grc_dump_addr_range i może być wywołany przez sterowniki qede lub qedf.
- CVE-2025-39945Wysokie
W jądrze Linux wykryto podatność use-after-free w sterowniku cnic. Funkcja cnic_delete_task może być wywołana po zwolnieniu struktury cnic_dev, ponieważ cancel_delayed_work() nie gwarantuje zakończenia cyklicznego zadania opóźnionego, a flush_workqueue() nie oczekuje na zadania dodane po jego wywołaniu. Prowadzi to do wyścigu, w którym zwolniona pamięć jest nadal używana.
- CVE-2025-39944Wysokie
W jądrze Linux w sterowniku octeontx2-pf wykryto podatność use-after-free w funkcji otx2_sync_tstamp(). Problem wynika z użycia cancel_delayed_work() zamiast cancel_delayed_work_sync(), co nie gwarantuje zakończenia opóźnionego zadania przed zwolnieniem pamięci struktury otx2_ptp. Może to prowadzić do odwołania do już zwolnionej pamięci.
- CVE-2025-39941Wysokie
W jądrze Linux w sterowniku zram wykryto błąd wyścigu podczas równoczesnych zapisów do tego samego indeksu. Prowadzi to do wycieku uchwytów zsmalloc, ponieważ zs_free() jest wywoływane zbyt wcześnie.
- CVE-2025-39936Średnie
W jądrze Linux w sterowniku CCP (crypto: ccp) występuje podatność na dereferencję wskaźnika NULL podczas wywołania __sev_platform_shutdown_locked() z argumentem NULL. Problem pojawia się na ścieżce zamykania podczas zawieszania systemu do dysku (suspend to disk), co prowadzi do błędu Oops i potencjalnego zawieszenia systemu.
- CVE-2025-39931Wysokie
W jądrze Linuxa w podsystemie kryptograficznym (af_alg) wykryto podatność polegającą na tym, że w przypadku błędu w funkcji af_alg_sendmsg zmienna ctx->merge może zawierać śmieciową wartość z poprzedniej iteracji pętli. Może to prowadzić do awarii systemu przy kolejnym wywołaniu funkcji, gdy próbuje wykonać scalenie, które nie jest możliwe.
- CVE-2025-39929Wysokie
W jądrze Linuxa naprawiono podatność związaną z wyciekiem pamięci w funkcji smbd_negotiate() w przypadku błędów podczas odbierania danych przez klienta SMB.
- CVE-2023-53510Wysokie
W jądrze systemu Linux naprawiono podatność związaną z obsługą polecenia SCSI w funkcji ufshcd_queuecommand(). Problem polegał na tym, że funkcja ta mogła być wywoływana dwukrotnie z rzędu przed zakończeniem polecenia, co prowadziło do nieprawidłowego zachowania.
- CVE-2023-53491Wysokie
W jądrze Linux dodano atrybut funkcji __no_stack_protector dla start_kernel, aby zapobiec problemom związanym z ochroną stosu. Bez tego atrybutu, wywołanie boot_init_stack_canary może prowadzić do niezgodności wartości canary, co skutkuje wywołaniem __stack_chk_fail i paniką systemu.
- CVE-2022-50451Średnie
W jądrze Linux w systemie plików NTFS3 (fs/ntfs3) występuje wyciek pamięci na ścieżce błędu w funkcji ntfs_fill_super(). Poprawka zwalnia opcje montowania w przypadku błędu, co eliminuje wyciek.
- CVE-2022-50442Wysokie
W jądrze Linux w systemie plików NTFS3 (fs/ntfs3) brakowało walidacji długości bufora podczas parsowania indeksów. Funkcja indx_read nie sprawdzała poprawności zwracanej długości bufora indeksu, co mogło prowadzić do odczytu poza granicami pamięci (out-of-bounds). Problem został zgłoszony jako błąd KASAN: slab-out-of-bounds w funkcji hdr_find_e.

