CVE-2026-45838
ŚrednieCVSS 5.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 2 - wyżej niż 2% wszystkich znanych CVE
Streszczenie
W jądrze Linux wykryto podatność w funkcji cgroup_storage_get_next_key() w mechanizmie BPF. Funkcja list_next_entry() nigdy nie zwraca NULL, przez co sprawdzenie pod kątem NULL jest martwym kodem, a get_next_key() nie zwraca -ENOENT dla ostatniego elementu, zamiast tego odczytuje storage->key z fałszywego wskaźnika aliasującego wewnętrzne pola mapy i kopiuje wynik do przestrzeni użytkownika.
Ocena ryzyka
Atakujący z uprawnieniami do wykonywania operacji BPF może uzyskać dostęp do nieautoryzowanych danych z map jądra, co może prowadzić do wycieku informacji lub naruszenia integralności systemu.
Rekomendacja
Należy niezwłocznie zaktualizować jądro Linux do wersji zawierającej poprawkę, która zastępuje list_next_entry() funkcją list_entry_is_head(), aby poprawnie wykrywać koniec listy i zwracać -ENOENT.
Oryginalny opis (angielski, źródło NVD)
In the Linux kernel, the following vulnerability has been resolved: bpf: fix end-of-list detection in cgroup_storage_get_next_key() list_next_entry() never returns NULL -- when the current element is the last entry it wraps to the list head via container_of(). The subsequent NULL check is therefore dead code and get_next_key() never returns -ENOENT for the last element, instead reading storage->key from a bogus pointer that aliases internal map fields and copying the result to userspace. Replace it with list_entry_is_head() so the function correctly returns -ENOENT when there are no more entries.

