Katalog podatności CVE
Przetłumaczone opisy podatności z bazy NVD NIST - w języku polskim
Przeglądaj podatności według pakietuKatalog CISA KEV zaktualizowany: (v2026.11.06)
Cotygodniowy digest CVE
Jeden mail w tygodniu z nowo opublikowanymi podatnościami, o których warto wiedzieć. Bez zakładania konta.
Digest dotyczy ogólnie nowych podatności, nie Twoich serwerów. Jeśli chcesz wiedzieć, które z nich faktycznie działają w Twojej infrastrukturze, tym zajmuje się Secvalis : skanuje Twoje maszyny i zgłasza wyłącznie to, co ich dotyczy.
W jądrze Linux w sterowniku platform/x86/amd/pmc funkcja amd_pmc_probe() rejestrowała handler LPS0 s2idle oraz tworzyła katalog debugfs przed wywołaniem amd_stb_s2d_init(). Gdy ta ostatnia funkcja zawiodła, ścieżka błędu nie wyrejestrowywała handlera ani nie usuwała katalogu debugfs, co prowadziło do uszkodzenia listy i błędu jądra przy ponownym ładowaniu modułu.
W jądrze Linux w sterowniku platform/x86 hp-bioscfg funkcja hp_get_string_from_buffer() porównywała długość konwertowanego łańcucha z rozmiarem bufora docelowego za pomocą warunku "size > dst_size". Gdy długość była równa dst_size, bezwarunkowy zapis terminatora NUL trafiał jeden bajt poza bufor docelowy.
W jądrze Linux w module platform/x86 hp-bioscfg parsery pakietów ACPI otrzymywały błędną liczbę elementów — zamiast zwalidowanej wartości obj->package.count przekazywały długość pola NAME (typu string), co wynikało z unii acpi_object. Obecnie jest to bezpieczne, ponieważ funkcja hp_init_bios_package_attribute() odrzuca pakiety o zbyt małej liczbie elementów, ale planowane złagodzenie tego sprawdzenia doprowadziłoby do odczytu poza granicami sterty (out-of-bounds heap read). Poprawka przekazuje prawidłową, zwalidowaną liczbę elementów do parserów.
W jądrze Linux występuje podatność use-after-free w funkcjach icc_get() i of_icc_get_by_index(). Gdy alokacja pamięci dla path->name nie powiedzie się, ścieżka błędu wywołuje kfree(path) bez wcześniejszego usunięcia wskaźników z listy req_list, co prowadzi do dangling pointers i późniejszego użycia zwolnionej pamięci. Problem został naprawiony poprzez zastąpienie kfree(path) funkcją icc_put(path) oraz zwolnienie mutexa icc_lock przed jej wywołaniem.
W jądrze Linux funkcja ipmb_write() w sterowniku IPMI odczytywała pola wiadomości przed walidacją bajtu długości. Krótki lub zerowy zapis może odczytać niezainicjalizowane bajty stosu, a długość mniejsza niż nagłówek SMBus powoduje niedomiar długości zapisu blokowego.
W jądrze Linux funkcja ipmi_add_smi() tworzy pliki nr_users i nr_msgs przed próbą utworzenia pliku maintenance_mode. Jeśli ostatnie tworzenie się nie powiedzie, ścieżka błędu usuwa tylko nr_users przed zwolnieniem referencji do interfejsu, pozostawiając zarejestrowany atrybut sysfs nr_msgs w zwolnionym interfejsie.
W jądrze Linux, jeśli podczas uruchamiania interfejsu IPMI wystąpi błąd, może on mieć zaplanowaną pracę do wykonania. Praca ta musi zostać anulowana przed zwolnieniem interfejsu, czego brakowało w module ipmi:msghandler.
W jądrze Linux w funkcji afiucv_hs_rcv() (net/iucv) gniazdo AF_IUCV było wybierane wyłącznie na podstawie czterech pól nazw w nagłówku transportowym, bez sprawdzania urządzenia sieciowego, z którego ramka przyszła. Umożliwiało to dostarczenie ramki z dowolnego netdev do gniazda AF_IUCV, w tym z urządzenia w innej przestrzeni nazw. Poprawka pomija gniazda, których hs_dev nie odpowiada urządzeniu wejściowemu.
W jądrze Linux występuje podatność use-after-free w funkcji sl_sync() sterownika SLIP. Tablica slip_devs[] przechowuje wskaźniki do struktur net_device bez zwiększania licznika referencji, a zwolnienie wpisu następuje poza ochroną rtnl_lock(), co pozwala na dostęp do zwolnionej pamięci podczas wywołania slip_open().
W jądrze Linux w funkcji tun_get_user() sterownika TUN/TAP wartość tun->align jest używana zarówno jako headroom skb, jak i do wyboru ilości danych liniowych. Gdy align przekracza dostępne miejsce w jednej stronie skb, wyrażenie SKB_MAX_HEAD(align) ulega niedomiarowi, a wynik staje się ujemny i po przypisaniu do zmiennej size_t powoduje umieszczenie skb->data poza zaalokowanym obszarem. OVS może propagować zbyt duży headroom z innego portu do TUN/TAP.
W jądrze Linux sterownik bnxt w ścieżce SW USO może wcześnie zakończyć działanie z NETDEV_TX_BUSY, mimo że txr->kick_pending zostało wcześniej ustawione na 1. W takiej sytuacji sterownik zapisuje część deskryptorów BD, ale nie zapisuje doorbella, co powoduje zatrzymanie kolejki TX, ponieważ urządzenie nie wie, że ma wykonać transmisję i wygenerować ukończenie wybudzające kolejkę.
W jądrze Linux naprawiono błąd w sterowniku IPA (net: ipa), który powodował trwałe zatrzymanie kolejki TX modemu po wznowieniu działania (runtime resume). Funkcja ipa_start_xmit() bezwarunkowo zatrzymywała kolejkę TX przed wywołaniem pm_runtime_get(), licząc na wznowienie kolejki przez mechanizm wake. Jednak zadanie wake było uruchamiane zbyt wcześnie — zanim stan zasilania osiągnął RPM_ACTIVE — przez co wznowienie kolejki nie następowało, a transmisja zawieszała się na stałe.
W jądrze Linux funkcja mctp_route_lookup() używa rt->dev bez utrzymywania referencji, a mctp_route_lookup_single() zwraca trasę tylko pod ochroną RCU. Urządzenie trasy może zostać równolegle zniszczone, co prowadzi do use-after-free w mctp_dev_saddr() przy odczycie rt->dev->addrs[0], osiągalnego przez nieuprzywilejowanego lokalnego użytkownika AF_MCTP bez CAP_NET_RAW. W tym samym oknie mctp_dev_hold() zwiększa refcount, który już osiągnął zero.
W jądrze Linux w module openvswitch występuje podatność use-after-free związana ze wskaźnikiem flow->mask podczas usuwania przepływu (CMD_DEL). Wskaźnik maski jest zwalniany przez RCU, ale funkcja ovs_flow_cmd_fill_info() używa go po usunięciu przepływu z tabeli, bez wcześniejszego pobrania blokady RCU. Prowadzi to do wyścigu i potencjalnego błędu jądra (KASAN slab-use-after-free) w oknie między usunięciem a wypełnieniem informacji.
W jądrze Linux sterownik ravb może dereferencjonować nieprawidłowy zegar PTP, ponieważ zegar PTP jest niedostępny przed pierwszym otwarciem, a błędy rejestracji mogą pozostawić wskaźnik błędu w priv->ptp.clock. Odczyt indeksu zegara może wtedy spowodować dereferencję NULL lub wskaźnika błędu.
W jądrze Linux w sterowniku sieciowym ravb (Renesas Ethernet AVB) procedura obsługi przerwania PTP ravb_ptp_interrupt() może wyścignąć się z funkcją ravb_ptp_stop(), przekazując wskaźnik zegara do ptp_clock_event() w momencie, gdy ptp_clock_unregister() zwalnia ten zegar. Prowadzi to do użycia po zwolnieniu pamięci (use-after-free). Poprawka wprowadza bezpieczny dostęp do wskaźnika zegara oraz atomowe odłączenie go przed wyłączeniem przerwań PTP i synchronizację przerwań.
W jądrze Linux w sterowniku Thunderbolt każda ścieżka błędu w tbnet_connected_work() cofa własne operacje i zwraca bez wyczyszczenia flagi login_sent, przez co połączenie nadal wygląda na ustanowione. Kolejne tbnet_tear_down() wykonuje ponownie demontaż, który już się odbył — zatrzymuje już zatrzymane pierścienie (dev_WARN(), fatalne przy panic_on_warn) i zwalnia net->remote_transmit_path nawet na ścieżce niezgodności HopID, gdzie połączenie nigdy nie posiadało tego identyfikatora. Poprawka czyści login_sent na tych ścieżkach.
W jądrze Linux w module NTB ntb_transport funkcja ntb_process_tx() obsługuje zbyt duży bufor, wywołując tx_handler() z pustym wskaźnikiem danych i zwracając sukces. ntb_netdev nie zwalnia wtedy skb w swoim callbacku ukończenia ani nie wchodzi na ścieżkę błędu kolejkowania, co powoduje wyciek. Poprawka odrzuca zbyt duże bufory w ntb_transport_tx_enqueue() przed zajęciem wpisu kolejki i zwraca -EMSGSIZE.
W jądrze Linux w module net/smc funkcje smc_llc_rmt_delete_rkey() i smc_llc_save_add_link_rkeys() czytają część komunikatu v2, która nie mieści się w 44-bajtowej unii smc_llc_msg, ograniczając się rozmiarem bufora, a nie rozmiarem tego, co faktycznie przyszło. Na łączu ze współdzielonym buforem odbioru v2 44-bajtowy DELETE_RKEY_V2 deklarujący 255 kluczy rkey sięga do rkey[9..254] w danych pozostawionych przez wcześniejszy komunikat i przekazuje je do smc_rtoken_delete(), co może usunąć zarejestrowany rtoken. Poprawka kopiuje ogon komunikatu do wpisu kolejki i deklaruje klucze inline jako element unii.
W jądrze Linux w module net/smc funkcja smc_rx_splice() przekazuje strony RMB do potoku i pobiera referencję gniazda na wpis, aby smc_sock pozostał aktywny do zakończenia odczytu. Jednak połączenie nie — równoległe zamknięcie uruchamia smc_conn_free(), które zwalnia bufor odbioru z powrotem do puli grupy łączącej. smc_rx_pipe_buf_release() sprawdza sk_state przed pobraniem blokady gniazda; stan może się zmienić między testem a blokadą, a smc_rx_update_cons() dereferencjonuje conn->rmb_desc i przechodzi przez conn->lgr, które zostały już zwolnione — jest to użycie po zwolnieniu pamięci. Poprawka pobiera najpierw blokadę gniazda i sprawdza conn->freed.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

