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 funkcji query_capability() (ACPI pfr_update) kopiowane są cztery obiekty bufora ACPI zwracane przez firmware _DSM do pól u8[16] w strukturze pfru_update_cap_info za pomocą memcpy z długością dostarczoną przez firmware. Jeśli firmware zwróci buffer.length > 16, memcpy zapisuje poza docelową tablicą, powodując przepełnienie bufora na stosie.
W jądrze Linux występuje błąd w funkcji ata_format_dsm_trim_descr(), która buduje deskryptor polecenia ATA TRIM w buforze o rozmiarze 2048 bajtów. Na urządzeniach z logicznym rozmiarem sektora większym niż 2048 bajtów (np. 4Kn, sektor 4096 bajtów) funkcja nigdy nie zwraca oczekiwanego rozmiaru sektora, przez co każde polecenie TRIM jest odrzucane z błędem długości listy parametrów i generuje ostrzeżenia WARN_ON().
W jądrze Linux w sterowniku auxdisplay charlcd, przy włączonej opcji CONFIG_CHARLCD_BL_FLASH, funkcja charlcd_init() planuje bl_work przed wywołaniem charlcd_register(). Jeśli rejestracja się nie powiedzie, obiekt charlcd jest zwalniany, podczas gdy opóźniona praca nadal zawiera jego adres, co prowadzi do use-after-free.
W jądrze Linux nie walidowano wyrównania wektorów przestrzeni użytkownika podczas budowania bio z iov_iter. Sterowniki blokowe oparte na bio nie sprawdzały podziału przy niezgodności wyrównania, co mogło prowadzić do błędnego działania. Poprawka waliduje wektory względem dma_alignment urządzenia i odrzuca niezgodne z -EINVAL.
W jądrze Linux funkcja eir_get_service_data() w module Bluetooth EIR zawiera błąd odczytu poza buforem (OOB read). Nieprawidłowe przeliczanie eir_len przy pomijaniu pól powoduje, że wskaźnik wykracza poza bufor le_per_adv_data[] i odczytuje dane z reszty struktury hci_conn. Poprawka przelicza eir_len od końca bufora w każdej iteracji.
W jądrze Linux sterownik bnx2x zawiera błąd podwójnego zwolnienia pamięci w ścieżce błędów funkcji bnx2x_init_firmware(). Wskaźniki init_ops, init_data i init_ops_offsets nie są ustawiane na NULL po zwolnieniu, więc późniejsze wywołanie bnx2x_release_firmware() zwalnia je ponownie. Poprawka ustawia każdy wskaźnik na NULL po kfree().
W jądrze Linux naprawiono błąd w kompilatorze BPF dla architektury x86 dotyczący rozwiązywania adresów per-CPU do rejestru rozszerzonego. Prefiks REX był budowany z użyciem REX.B zamiast REX.R, przez co bit wysokiego rejestru był gubiony, a adres per-CPU trafiał do niewłaściwego rejestru (np. R5 zamiast R8). Prowadziło to do wyłuskania niepoprawnego wskaźnika i paniki jądra.
W jądrze Linux naprawiono podatność w funkcji __bpf_get_stack. Bufor perf_callchain_entry zwracany przez get_perf_callchain() jest współdzielony per-CPU i nie jest chroniony przed ponownym użyciem po zwróceniu, więc program BPF z możliwością wywłaszczenia może zostać przełączony między pobraniem bufora a kopiowaniem, a inny wątek na tym samym CPU nadpisze trace->nr większą wartością. Powoduje to wyliczenie zbyt dużego copy_len i zapis poza zakresem bufora w memcpy() oraz w ścieżce build_id.
W jądrze Linux naprawiono podatność w mechanizmie BPF dotyczącą obliczania rozmiaru i indeksowania filtra Bloom na jądrach 32-bitowych. Gdy bitmapa osiąga przypadek fallback U32_MAX, błąd arytmetyczny powoduje zbyt małą alokację pamięci, a ujemne przesunięcia bitów pozwalają na zapis poza przydzielonym obszarem. Umożliwia to lokalne podniesienie uprawnień na 32-bitowym jądrze x86 przez proces z uprawnieniem CAP_BPF.
W jądrze Linux moduł dm-io przy żądaniach DM_IO_BIO odbudowywał bio docelowe poprzez kopiowanie biovec źródłowego, co przy niezgodnych z sektorem długościach wektorów (np. niezgodny bufor O_DIRECT) powodowało utratę fragmentu podsektora i zawieszenie I/O. Poprawka klonuje biovec źródła przez bio_alloc_clone() i remapuje na urządzenie docelowe, eliminując ręczne kopiowanie stron.
W jądrze Linux kody błędów BLK_STS_NOTSUPP i BLK_STS_INVAL nie powinny powodować awarii nogi (leg) w dm-raid1. Poprawka zmienia interfejs dm-io, aby raportował dwa bitmapy błędów: error_bits i unsup_bits, gdzie unsup_bits śledzi błędy nieobsługiwane, a dm-raid1 nie zawodzi nogi przy takich błędach. Naprawia to nieprawidłowe działanie przy niezgodnych wektorach bio na dm-raid1.
W jądrze Linux moduł dm-era zawiera wyciek pamięci bloku metadanych przy niepowodzeniu operacji take-snap. Funkcja metadata_take_snap() zwiększa licznik referencji superbloku i alokuje nowy blok cienia, ale jeśli późniejsze dm_sm_inc_block() zawiedzie, blok nie jest zwracany do mapy przestrzeni metadanych. Poprawka zwalnia klon przez dm_sm_dec_block() w ścieżkach błędów.
W jądrze Linux funkcja build_constructor_string() w module dm-raid1 nie rezerwuje miejsca na znak NUL kończący łańcuch po maksymalnie 20 cyfrach dziesiętnych wartości long long. Może to prowadzić do przepełnienia bufora w sprintf(). Poprawka rezerwuje dodatkowe miejsce na terminator NUL.
W jądrze Linux funkcja array_block_check() w module dm-array walidowała jedynie numer bloku i sumę kontrolną, nie sprawdzając pól strukturalnych nagłówka bloku. Złośliwe metadane z liczbą wpisów większą niż pojemność bloku powodują wyjście poza bufor dm-bufio podczas odczytu, co jest wywoływane przy aktywacji pamięci podręcznej dm-cache.
W jądrze Linux funkcja array_block_check() w dm-array porównuje nagłówek tylko sam ze sobą, więc blok o value_size 4 i max_entries 1018 przechodzi walidację. Wskazanie korzenia mapowań dm-cache na blok podpowiedzi powoduje, że element_at() operuje krokiem 8 bajtów na 4-bajtowych wpisach i wychodzi poza 4096-bajtowy blok.
W jądrze Linux sterownik cpufreq apple-soc nie usuwał tabel OPP w niektórych ścieżkach błędów i używał niewłaściwego pomocnika dev_pm_opp_remove_all_dynamic() do czyszczenia tabel OPP wczytywanych z firmware. Poprawka używa pomocnika cpumask OPP po wypełnieniu maski CPU polityki oraz sparowanego pomocnika usuwania w ścieżkach błędów i w apple_soc_cpufreq_exit().
W jądrze Linux funkcja fwctl_cmd_rpc() kopiuje cmd->in_len bajtów do bufora, ale wywołanie zwrotne CXL cxlctl_fw_rpc() ignoruje in_len i nie sprawdza kontrolowanego przez użytkownika op_size. Przy małym in_len i dużym op_size pierwszy memcpy() czyta poza bufor, a dane są wysyłane do urządzenia; zbyt duży op_size może doprowadzić do oops jądra.
W jądrze Linux notyfikator MCE dla CXL był rejestrowany per urządzenie pamięci i przechowywany w struct cxl_memdev_state, mimo że potrzebuje tylko stanu regionu. Powodowało to problemy z czasem życia obiektów prowadzące do dereferencji NULL i use-after-free w procedurze obsługi MCE. Poprawka przenosi notyfikator do struct cxl_region i rejestruje go z cxl_region_probe() tylko dla regionów z rozszerzonym liniowym cache.
W jądrze Linux występuje podatność use-after-free w funkcji rfcomm_security_cfm() w podsystemie Bluetooth RFCOMM. Funkcja przegląda listę sesji i DLC bez blokady rfcomm_mutex, przez co wątek krfcommd może jednocześnie zwolnić tę samą sesję i jej DLC. Prowadzi to do odczytu zwolnionej pamięci (KASAN: slab-use-after-free).
W jądrze Linux funkcja kho_preserved_memory_reserve() oblicza rozmiar zachowania jako 1 << (order + PAGE_SHIFT), gdzie '1' jest 32-bitową liczbą całkowitą, więc przesunięcie działa tylko do 31 bitów. Zachowania większe niż 2 GiB, możliwe np. przez kho_preserve_pages() używane przez memblock reserve_mem, powodują niezdefiniowane zachowanie.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

