Podatności Linux kernel
7565 znanych podatności CVE w Linux kernel, przetłumaczonych i ocenionych.
- CVE-2024-46754Wysokie
W jądrze Linux usunięto funkcję test_run z lwt_seg6local_prog_ops, ponieważ operacje BPF związane z lwt_seg6 mogły być wywoływane przez bpf_test_run() bez wcześniejszego wejścia do input_action_end_bpf(). Testy self test dla BPF_PROG_TYPE_LWT_SEG6LOCAL prawdopodobnie nie działały, ponieważ zmienna per-CPU seg6_bpf_srh_states::srh nie była przypisywana w testach.
- CVE-2024-46741Wysokie
W jądrze Linuxa w sterowniku misc: fastrpc występuje podwójne zwolnienie bufora 'buf' w ścieżce błędów funkcji fastrpc_req_mmap(). Bufor jest zwalniany w fastrpc_req_munmap_impl() jeśli unmap się powiedzie, ale na końcu następuje bezwarunkowe wywołanie fastrpc_buf_free(), co prowadzi do podwójnego zwolnienia.
- CVE-2024-46737Wysokie
W jądrze Linux w module nvmet-tcp wykryto błąd prowadzący do awarii jądra przy niepowodzeniu alokacji poleceń. Gdy alokacja się nie powiedzie, dereferencja wskaźnika NULL w funkcji nvmet_tcp_release_queue_work powoduje crash.
- CVE-2024-46713Wysokie
W jądrze Linux w podsystemie perf/aux wykryto problem z serializacją bufora AUX. Mutex mmap_mutex jest niewystarczający do pełnej serializacji, co może prowadzić do wyścigów i niespójności danych.
- CVE-2024-46674Wysokie
W sterowniku USB dwc3 dla platform ST w jądrze Linux wykryto problem z licznikiem referencji urządzenia platformowego podczas obsługi błędów w funkcji probe. Funkcja probe nie alokuje żadnych urządzeń platformowych, więc ścieżka błędu 'undo_platform_dev_alloc' jest błędna i zmniejsza licznik referencji dla badanego urządzenia. Może to prowadzić do niezbalansowanych liczników referencji i przedwczesnego zwolnienia zasobów, co może skutkować użyciem po zwolnieniu (use-after-free).
- CVE-2024-46673Wysokie
W jądrze Linuxa, w sterowniku SCSI aacraid, wykryto podwójne zwolnienie pamięci podczas niepowodzenia inicjalizacji (probe). Funkcja aac_probe_one() wywołuje funkcje inicjalizujące specyficzne dla sprzętu, które ostatecznie wywołują aac_init_adapter(). Jeśli aac_init_adapter() zawiedzie po przydzieleniu pamięci dla aac_dev::queues, zwalnia pamięć, ale nie czyści tego pola, co prowadzi do podwójnego zwolnienia w ścieżce błędu.
- CVE-2023-52909Wysokie
W jądrze Linux w podsystemie nfsd występuje podatność w obsłudze buforowanych otwartych plików w ścieżce kodu nfsd4_open. Problem obejmuje wyścig, w którym nowo utworzony nfsd_file może mieć wyczyszczony bit PENDING, a wskaźnik nf_file jest nadal zerowy, co może prowadzić do awarii. Dodatkowo może wystąpić wyciek pamięci, gdy istniejący wpis w hash ma ważny nf_file. Poprawka wprowadza nową funkcję nfsd_file_acquirei_opened, która przyjmuje opcjonalny wskaźnik pliku.
- CVE-2024-43856Wysokie
W jądrze Linux w funkcji dmam_free_coherent występuje błąd kolejności wywołań, który może prowadzić do użycia po zwolnieniu (use-after-free). Najpierw zwalniana jest alokacja DMA, a następnie usuwany wpis devres, co w przypadku równoczesnych operacji może spowodować zwolnienie niewłaściwego wpisu i wywołanie ostrzeżenia WARN_ON.
- CVE-2024-43847Wysokie
W jądrze Linux w sterowniku ath12k występuje nieprawidłowy dostęp do pamięci podczas przetwarzania fragmentowanych pakietów. Pierścień monitora i pierścień reinject współdzielą ten sam indeks maski, co prowadzi do nieprawidłowego dostępu, gdy przetwarzany jest pierścień reinject. Poprawka usuwa maskę pierścienia monitora, ponieważ wsparcie monitora nie jest jeszcze włączone.
- CVE-2024-43830Wysokie
W jądrze Linuxa zidentyfikowano podatność związaną z nieprawidłowym usuwaniem atrybutów sysfs przed wywołaniem funkcji dezaktywującej. Może to prowadzić do sytuacji, w której funkcje operujące na danych trigger-data mogą być wywoływane po ich zwolnieniu.
- CVE-2024-42318Wysokie
W jądrze Linuxa, w module Landlock, wykryto podatność polegającą na utracie informacji o restrykcjach podczas operacji cred_transfer. Gdy struktura cred procesu jest zastępowana, zwykle wywoływany jest hak cred_prepare, ale w szczególnym przypadku (KEYCTL_SESSION_TO_PARENT) używany jest hak cred_transfer. Landlock implementuje tylko cred_prepare, więc KEYCTL_SESSION_TO_PARENT powoduje utratę wszystkich informacji o restrykcjach Landlock. Poprawka dodaje hak cred_transfer, który robi to samo co cred_prepare.
- CVE-2024-42256Wysokie
W jądrze Linux w module cifs, podczas ponawiania podzapytania, funkcja smb2_async_writev() ponownie wybiera serwer, co prowadzi do niezgodności liczników in_flight i ostrzeżeń. Poprawka usuwa ponowny wybór serwera w tej funkcji.
- CVE-2024-42225Wysokie
W jądrze Linuxa w sterowniku WiFi mt76 funkcja skb_put jest używana zamiast skb_put_zero, co może prowadzić do potencjalnego ponownego użycia niezainicjalizowanych danych.
- CVE-2024-42133Wysokie
W jądrze Linux stwierdzono podatność w stosie Bluetooth, gdzie zbyt duże wartości handle w BIG mogą prowadzić do błędnego zwolnienia identyfikatora IDA w hci_conn_cleanup.
- CVE-2024-42132Wysokie
W jądrze Linuxa naprawiono błąd w stosie Bluetooth HCI, który pozwalał na ustawienie uchwytu (handle) większego niż HCI_CONN_HANDLE_MAX. Prowadziło to do ostrzeżenia przy zwalnianiu nieprawidłowo przydzielonego uchwytu, co mogło destabilizować system.
- CVE-2024-42088Wysokie
W jądrze Linuxa, w sterowniku ASoC dla Mediatek MT8195, usunięcie wpisu codec dla łącza ETDM1_OUT_BE spowodowało, że tablica platform stała się pusta, co prowadzi do odczytu poza zakresem (KASAN) podczas inicjalizacji.
- CVE-2024-42079Średnie
W jądrze Linux w systemie plików GFS2 wykryto podatność polegającą na dereferencji wskaźnika NULL w funkcji gfs2_log_flush. Problem występuje, gdy operacje glock (blokady) są wykonywane równocześnie z odmontowaniem systemu plików, co prowadzi do dostępu do już zwolnionego obiektu sd_jdesc.
- CVE-2023-52887Wysokie
W jądrze Linux w podsystemie CAN J1939 poprawiono obsługę błędów dla blisko nadchodzących wiadomości RTS w funkcji xtp_rx_rts_session_new. Zamiast mało informacyjnych śladów WARN_ON_ONCE wprowadzono nową metodę obsługi błędów, która zapewnia jaśniejsze komunikaty i umożliwia wcześniejsze kończenie problematycznych sesji.
- CVE-2024-41062Wysokie
W jądrze Linux w warstwie Bluetooth L2CAP występuje wyścig między zamknięciem gniazda (sock_close) a procedurą hci_rx_work, która bez blokady uzyskuje dostęp do zwolnionego gniazda. Prowadzi to do błędu use-after-free.
- CVE-2024-41046Wysokie
W jądrze Linux w sterowniku lantiq_etop wykryto podwójne zwolnienie (double free) w funkcji detach. Licznik aktualnie zwalnianych deskryptorów nie jest zwiększany, co prowadzi do wielokrotnego zwalniania tego samego skb.
- CVE-2024-41034Wysokie
W jądrze Linux w systemie plików nilfs2 wykryto błąd jądra podczas operacji rename na uszkodzonym katalogu. Funkcja nilfs_dotdot() może zwrócić lokalizację przekraczającą rozmiar strony, co prowadzi do BUG_ON w __block_write_begin_int().
- CVE-2024-41032Wysokie
W jądrze Linuxa w menedżerze pamięci vmalloc występuje problem z indeksowaniem w tablicy mieszającej, gdy cpu_possible_mask ma luki (np. na SPARC). Funkcja addr_to_vb_xa() może zwrócić indeks prowadzący do dostępu do nieistniejącego obszaru CPU, powodując oops.
- CVE-2024-41028Wysokie
W jądrze Linux w sterowniku toshiba_acpi brakuje terminatora w tablicy toshiba_dmi_quirks[], co prowadzi do odczytu poza zakresem tablicy podczas przetwarzania listy quirks. Dodano pusty wpis kończący, aby to naprawić.
- CVE-2022-48830Wysokie
W jądrze Linux w podsystemie CAN (Controller Area Network) w protokole ISO-TP wykryto wyścig (race condition) podczas odbierania ramek CAN w funkcji isotp_rcv(). Równoczesne procesy mogą zmieniać stan danych, co prowadzi do przepełnienia bufora skb (skb_over_panic).
- CVE-2022-48827Wysokie
W jądrze Linuxa naprawiono zachowanie operacji READ w NFSD w pobliżu OFFSET_MAX, które powodowało przepełnienie loff_t i zwracanie błędu EINVAL, prowadząc do nieskończonych ponowień żądań przez klienta.
- CVE-2022-48825Średnie
W jądrze Linuxa w sterowniku qedf dla kart Fibre Channel nie inicjalizowano pracy opóźnionej (stag work) dla wszystkich portów wirtualnych (vport). Powodowało to ostrzeżenie w systemie kolejek pracy i problemy z pojawianiem się tylko 32 z 64 portów NPIV online. Poprawka polega na inicjalizacji tej pracy dla wszystkich vportów.
- CVE-2022-48823Średnie
W jądrze Linuxa w sterowniku qedf (QLogic Fibre Channel) wykryto problem z licznikiem referencji, który występuje, gdy podczas wykonywania zadania zarządzania (TMF) otrzymano żądanie LOGO. Prowadzi to do zawieszenia operacji wejścia/wyjścia i pojawienia się komunikatu o zablokowanym zadaniu (hung task). Poprawka dotyczy naprawy licznika referencji.
- CVE-2022-48801Wysokie
W podsystemie IIO w jądrze Linux wykryto problem z obsługą błędów w funkcji IIO_BUFFER_GET_FD_IOCTL. Jeśli kopiowanie deskryptora pliku do przestrzeni użytkownika się nie powiedzie, kod próbuje posprzątać, używając put_unused_fd(), co jest błędne, ponieważ deskryptor został już opublikowany przez fd_install(). Prowadzi to do częściowego posprzątania i umożliwia ataki typu use-after-free na wskaźnik 'file->private_data'.
- CVE-2022-48785Wysokie
W jądrze Linuxa w podsystemie IPv6 multicast wykryto podatność polegającą na użyciu niebezpiecznej dla RCU wersji funkcji ipv6_get_lladdr(). Po usunięciu zewnętrznych blokad w kodzie MLD, funkcja ta może być wywoływana bez odpowiedniej synchronizacji, co prowadzi do dostępu do zwolnionej pamięci i awarii systemu.
- CVE-2022-48782Wysokie
W jądrze Linux w podsystemie MCTP występuje użycie po zwolnieniu (use-after-free) w funkcji route.c. Gdy mctp_key_add() zawiedzie, klucz jest zwalniany, a następnie używany w trace_mctp_key_acquire(). Dodano instrukcję else, aby używać klucza tylko po sukcesie.
- CVE-2024-40989Wysokie
W jądrze Linux w KVM dla ARM64 podczas usuwania regionu redystrybutora nie usuwano wskaźnika do tego regionu z vcpu, co mogło prowadzić do użycia zwisającego wskaźnika. Poprawka zapewnia, że vcpu nie przechowuje wskaźnika do usuniętego regionu.
- CVE-2024-40984Wysokie
W jądrze Linuxa w ACPICA cofnięto wcześniejszą poprawkę dotyczącą mapowania wielu BAR-ów. Poprzednia zmiana powodowała, że mapowanie kończyło się na granicy strony, ale odczyty/zapisy dotyczyły całej długości, co prowadziło do wyłuskania pustego wskaźnika. Teraz mapowany jest cały obszar.
- CVE-2024-40974Wysokie
W jądrze Linux dla architektury powerpc/pseries funkcje plpar_hcall() i pokrewne nie wymuszały odpowiedniego rozmiaru bufora wyników, co mogło prowadzić do przepełnienia stosu. Poprawka zmienia deklaracje na tablice o jawnym rozmiarze, co umożliwia wykrycie błędu przez kompilator.
- CVE-2024-40973Średnie
W jądrze Linux w sterowniku mtk-vcodec istnieje potencjalne wyłuskanie pustego wskaźnika (NULL pointer dereference) w SCP. Wartość zwracana przez devm_kzalloc() musi być sprawdzona, aby uniknąć tego problemu. Podobne do CVE-2022-3113.
- CVE-2024-40971Wysokie
W jądrze Linux w systemie plików f2fs podczas remontowania flagi SB_INLINECRYPT jest czyszczona i ponownie ustawiana, co w oknie czasowym może powodować, że nowe pliki nie będą używać inlinecrypt, a w przypadku włączonego wrappedkey_v0 może prowadzić do uszkodzenia danych. Poprawka usuwa czyszczenie tej flagi w default_options.
- CVE-2024-40970Wysokie
W jądrze Linux w sterowniku dw-axi-dmac występuje podatność polegająca na nadpisaniu tablicy hw_desc, gdy liczba deskryptorów przekracza przydzieloną pamięć. Może to prowadzić do paniki jądra. Poprawka dodaje nowe pole do struktury, aby śledzić liczbę przydzielonych deskryptorów i usuwa niepotrzebne wywołanie.
- CVE-2024-40925Wysokie
W jądrze Linux w podsystemie blk-flush występuje błąd w użyciu listy request.queuelist, który może prowadzić do awarii jądra. Poprawka zmienia użycie listy na list_add_tail i dodaje inicjalizację listy w callbacku flush.
- CVE-2024-40924Wysokie
W sterowniku graficznym i915 w jądrze Linux wykryto problem z obiektem DPT (Display Page Table), który może zostać zmniejszony (shrink) w niektórych scenariuszach, podczas gdy rzeczywisty framebuffer nie został zmniejszony. Prowadzi to do próby przepisania wpisów PTEs przez nieaktualne mapowanie CPU, co powoduje panikę systemu.
- CVE-2024-40920Wysokie
W jądrze Linux w funkcji br_mst_set_state mostu sieciowego występuje podejrzane użycie RCU, które może prowadzić do ostrzeżeń i potencjalnych błędów. Poprawka zmienia dereferencję grupy VLAN na odpowiednią funkcję RCU.
- CVE-2024-40909Wysokie
W jądrze Linux w podsystemie BPF istnieje potencjalna podatność use-after-free w funkcji bpf_link_free(). Po pewnym commicie, link BPF może być zwolniony przez dealloc_deferred, ale kod nadal używa dealloc, co prowadzi do użycia po zwolnieniu.
- CVE-2024-40901Wysokie
W jądrze Linux w sterowniku SCSI mpt3sas występuje potencjalny dostęp poza przydzieloną pamięcią podczas używania test_bit() i set_bit() na pojedynczym słowie. Poprawka zwiększa alokację do rozmiaru unsigned long, aby zapewnić wystarczającą przestrzeń.
- CVE-2024-40900Wysokie
W jądrze Linux w module cachefiles występuje podatność use-after-free, ponieważ żądania nie są usuwane z tablicy xarray podczas ich opróżniania. Może to prowadzić do użycia zwolnionej pamięci. Poprawka usuwa żądania z xarray podczas opróżniania.
- CVE-2024-39507Wysokie
W jądrze Linux w sterowniku sieciowym hns3 występuje problem prowadzący do awarii jądra w scenariuszu współbieżnym. Gdy zmienia się stan łącza, sterownik NIC powiadamia sterownik roce, ale w tym czasie sterownik roce może być niezainicjalizowany, co powoduje crash.
- CVE-2024-39496Wysokie
W jądrze Linux w systemie plików btrfs występuje podatność use-after-free spowodowana wyścigiem podczas operacji wymiany urządzenia. Podczas ładowania informacji o strefie, urządzenie jest pobierane z mapy fragmentów bez odpowiedniej synchronizacji, co może prowadzić do użycia zwolnionej pamięci po zakończeniu wymiany urządzenia.
- CVE-2024-39494Wysokie
W jądrze Linux w module IMA (Integrity Measurement Architecture) wykryto podatność na użycie po zwolnieniu (use-after-free) dotyczącą pola dname.name w strukturze dentry. Nazwa może zostać zmieniona podczas rename, a wcześniejsza wartość może zostać zwolniona, co prowadzi do niebezpiecznego odwołania.
- CVE-2024-39478Wysokie
W jądrze Linux w module crypto starfive występuje podatność polegająca na wywołaniu kfree na buforze alokowanym na stosie. Dane tekstowe RSA używają bufora o zmiennej długości alokowanego na stosie, a jego zwolnienie powoduje niezdefiniowane zachowanie w kolejnych operacjach.
- CVE-2024-34027Wysokie
W jądrze Linuxa naprawiono podatność związaną z funkcjami {reserve,release}_compress_blocks() w kontekście blokady cp_rwsem. Brak odpowiedniego zabezpieczenia może prowadzić do wyścigu z checkpointem, co skutkuje uszkodzeniem metadanych systemu plików.
- CVE-2024-38659Wysokie
W jądrze Linuxa zidentyfikowano podatność w funkcji enic_set_vf_port, która nieprawidłowo zakłada długość atrybutów nl. Weryfikacja długości atrybutów nie jest dokładna, co może prowadzić do nieautoryzowanego dostępu do pamięci.
- CVE-2024-38635Wysokie
W jądrze systemu Linux zidentyfikowano podatność związaną z nieprawidłowym przesunięciem PDI w kodzie SoundWire, co prowadzi do dostępu poza granice tablicy. Problem ten został rozwiązany poprzez usunięcie zbędnego przesunięcia.
- CVE-2024-38623Wysokie
W jądrze Linux w systemie plików NTFS3 użyto tablicy o stałym rozmiarze zamiast tablicy o zmiennej długości, co powoduje ostrzeżenie smatch o zbyt małym rozmiarze bufora podczas kopiowania nazwy. Poprawka zmienia na tablicę o zmiennej długości.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

