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 schedulerze (sched/core) funkcja pick_next_task() core scheduling przestaje działać poprawnie, gdy implementacja ->pick_task() może zwolnić blokadę rq. Stan wyboru ustalony na wejściu jest ważny tylko przy ciągłym trzymaniu blokady; gdy pick może ją zwolnić, przeplatający się wybór może unieważnić ten stan, prowadząc do błędnego zatwierdzenia wyboru lub zaburzenia rozliczania forceidle.
W jądrze Linux w schedulerze (sched/core) funkcja pick_next_task() core scheduling działa na wszystkich bliźniaczych rq pod jedną akwizycją wspólnej blokady core-wide. Gdy ->pick_task() zwalnia blokadę rq, każdy bliźniaczy __lock staje się chwilowo wolny, pozwalając __sched_core_flip(false) zakończyć się w trakcie wyboru i przepiąć rq_lockp() pod nim. Wybór wznawia się na rozdzielonych blokadach, dotykając stanu bliźniaczego, którego już nie chroni, a __schedule() ostatecznie zwalnia blokadę, która nigdy nie została wzięta, jednocześnie wyciekając tę, która została wzięta.
W jądrze Linux w komponencie KVM dla architektury RISC-V występuje przepełnienie rozmiaru tablicy informacji o zdarzeniach PMU. Wartość num_events kontrolowana przez gościa jest mnożona przez sizeof(*einfo) i zapisywana w 32-bitowej zmiennej, co przy dużych wartościach powoduje obcięcie rozmiaru i alokację zbyt małego bufora. Następnie pętla iteruje po oryginalnej liczbie zdarzeń, co prowadzi do odczytów i zapisów poza granicami zaalokowanej pamięci.
W jądrze Linux sterownik qede (karta sieciowa QLogic FastLinQ) zawiera błąd, w którym pod presją pamięciową dochodzi do dereferencji wskaźnika NULL podczas przetwarzania fragmentów kontynuacji TPA. Z powodu braku przypisania tpa_info->buffer.data w qede_tpa_start() do pierścienia Rx trafia „widmowy" bufor z prawidłowym mapowaniem DMA, ale wskaźnikiem danych NULL, co powoduje panikę jądra w qede_fill_frag_skb().
W jądrze Linux w sterowniku RDMA/cxgb4 funkcja c4iw_remove() może zwolnić ctx->dev, podczas gdy zakolejkowana praca reg_work (rejestrująca urządzenie RDMA) jest wciąż oczekująca lub wykonywana. Prowadzi to do tego, że c4iw_register_device() uzyskuje dostęp do zwolnionego urządzenia.
W jądrze Linux w funkcji ucma_set_ib_path() brakowało blokady handlera podczas wywołania ucma_event_handler() z ścieżki write(). Równoległe wywołanie ucma_migrate_id() mogło zmienić ctx->file, powodując operacje na liście zdarzeń innego pliku bez odpowiedniego mutexa, co prowadziło do use-after-free (wykryte przez KASAN).
W jądrze Linux występuje luka w module RDMA/ucma polegająca na braku blokady handlera w funkcji ucma_write_cm_event(). Podczas gdy ucma_migrate_id() przenosi kontekst do innego pliku, wskaźnik ctx->file może zostać zmieniony w trakcie sekwencji operacji, co prowadzi do uszkodzenia listy, trwałego zablokowania muteksa i zawieszenia procesu w stanie D. Luka jest osiągalna dla nieuprzywilejowanego użytkownika przez /dev/infiniband/rdma_cm.
W funkcji as3722_get_regulator_dt_data() jądra Linux wywołanie of_get_child_by_name() pozyskuje referencję do węzła, która jest przypisywana do pdev->dev.of_node, ale zaraz potem of_node_put(np) zwalnia tę referencję, pozostawiając wiszący wskaźnik. Usunięcie tego wywołania pozwala urządzeniu utrzymać referencję.
W podsystemie ring-buffer jądra Linux funkcja ring_buffer_alloc_read_page() jest podatna na wyścig z ring_buffer_subbuf_order_set, mogąc przydzielić stronę czytnika z nieaktualnym rozmiarem (order). Jeśli subbuf_order zmieni się w trakcie alokacji, bpage->order może nie odpowiadać rzeczywistej pamięci.
W podsystemie ring-buffer jądra Linux funkcja ring_buffer_subbuf_order_set() może wyczyścić cpu_buffer->free_page, co powoduje wyścigi z ring_buffer_alloc_read_page() i ring_buffer_free_read_page(). Poprawka polega na trzymaniu cpu_buffer->lock podczas zmiany rozmiaru podbufora.
W podsystemie ring-buffer jądra Linux odrzucenie buforowanej strony czytnika po równoczesnej zmianie rozmiaru bufora używa nowego globalnego subbuf_order w wywołaniu free_pages(), co może prowadzić do awarii jądra lub wycieku pamięci. Poprawka zapisuje rzeczywisty rozmiar strony wraz z jej adresem, czyniąc free_page strukturą buffer_data_read_page.
W podsystemie ring-buffer jądra Linux funkcja __rb_get_reader_page_from_remote() kontynuuje działanie mimo niepowodzenia callbacku swap_reader_page (zwracającego -EBUSY), co może prowadzić do nieprawidłowego przetwarzania listy stron. Poprawka traktuje błąd callbacku jako odzyskiwalny, loguje go przez pr_warn_ratelimited() i zwraca NULL.
W systemie plików orangefs jądra Linux funkcja orangefs_prepare_cdm_array() rozmiaruje bufor słowa kluczowego za pomocą strcspn(cds_head, " "), ale parsuje je przez %s, który pomija wiodące białe znaki. Jeśli wpis debugowania klienta zaczyna się od spacji, alokacja może być za mała, a sscanf() zapisze poza buforem.
W jądrze Linux w module ocfs2 brakowało walidacji pól rl_used i rl_count w bloku refcount. Złośliwy lub uszkodzony obraz ocfs2 z rl_used ustawionym na 0xffff powoduje odczyt poza zakresem bloku metadanych, a następnie memmove poza bufor podczas operacji reflink (FICLONE). Podatność wymaga lokalnego dostępu (CAP_SYS_ADMIN przy montowaniu obrazu lub zapis do urządzenia blokowego).
W jądrze Linux na architekturze OpenRISC wywołanie systemowe sys_or1k_atomic (nr 244) nie sprawdzało wskaźników użytkownika za pomocą access_ok() przed wykonaniem operacji atomowej w asemblerze. Umożliwiało to nieuprzywilejowanemu procesowi podanie adresu jądra i bezpośredni odczyt/zapis pamięci jądra.
W jądrze Linux w module openvswitch występuje błąd use-after-free związany z limitem CT (conntrack). Wskaźnik limitu CT nie był usuwany przed zwolnieniem pamięci ani chroniony okresem karencji RCU, przez co przetwarzanie pakietów mogło odwołać się do zwolnionego stanu podczas niszczenia przestrzeni nazw sieci. Nieuprzywilejowany użytkownik może wywołać ten błąd z poziomu przestrzeni nazw użytkownika i sieci.
W jądrze Linux w module openvswitch funkcja queue_userspace_packet() wywołuje skb_tx_error() na pakiecie, który nie jest własnością tej funkcji i jest dalej przekazywany. Powoduje to usunięcie flagi SKBFL_SHARED_FRAG z aktywnego skb, co przy dostarczaniu ESP-in-UDP prowadzi do odszyfrowania w miejscu na stronach pamięci należących do nadawcy. Umożliwia to nieuprzywilejowany zapis do page cache (prymityw "Fragnesia").
W jądrze Linux w podsystemie IPMI występuje błąd use-after-free w funkcji _ipmi_destroy_user(). Usunięcie synchronize_rcu() między odłączeniem odbiorników poleceń z listy intf->cmd_rcvrs a ich zwolnieniem pozwala czytelnikowi wciąż używać wskaźnika do zwolnionego obiektu cmd_rcvr. Lista cmd_rcvrs jest nadal przeglądana w zwykłym RCU, więc brak okresu karencji powoduje użycie po zwolnieniu.
W jądrze Linux naprawiono podatność w sterowniku NVMe, gdzie funkcja nvme_setup_discard() przy nieudanej alokacji pamięci używała strony ctrl->discard_page, która nie była zerowana. W wyniku tego do kontrolera NVMe wysyłane były niezainicjalizowane dane (do 4080 bajtów) pochodzące z wcześniejszej zawartości strony pamięci.
W jądrze Linux w sterowniku nvme-tcp funkcja nvme_tcp_handle_r2t() nie sprawdza kierunku żądania, którego dotyczy R2T. Złośliwy kontroler może wysłać R2T dla polecenia READ, a host odpowie, wysyłając bufor docelowy odczytu (zawierający stare dane jądra) do kontrolera. Luka ujawnia pamięć jądra, w tym wskaźniki struct page.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

