Katalog CVE

CVE-2026-98132

Nieznane
Opublikowano: Przetłumaczono: NVD NIST

Streszczenie

W jądrze Linux weryfikator BPF mógł niepoprawnie przekształcać zapisy zerowe na stosie (scalar zero spill) w STACK_ZERO, gdy część zapisanych bajtów była już martwa. Takie przekształcenie łamało łańcuchy propagacji precyzji, co mogło prowadzić do błędnej weryfikacji programów BPF. Poprawka najprościej rezygnuje z konwersji zapisów zerowych na STACK_ZERO.

Ocena ryzyka

Błędna weryfikacja programów BPF może pozwolić na obejście mechanizmów bezpieczeństwa jądra i potencjalne wykonanie nieautoryzowanego kodu w kontekście uprzywilejowanym. Wpływa to na poufność, integralność i dostępność systemu.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej tę poprawkę. Jeśli aktualizacja nie jest możliwa, ogranicz możliwość ładowania nieuprzywilejowanych programów BPF.

Inne podatności w Linux kernel

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

In the Linux kernel, the following vulnerability has been resolved: bpf: don't downgrade half-dead scalar zero spills to STACK_ZERO states.c:__clean_func_state() can downgrade scalar zero spill to STACK_ZERO in the following case: *(u64 *)(r10 - 8) = 0; ... checkpoint ... r1 = *(u32 *)(r10 - 4); ... no reads from r10-8 ... Here 4 bytes at r10-8 are dead and verifier changes scalar spill to a combination: 0000pppp (p stands for poison). Such a change breaks precision propagation chains. All places that produce STACK_ZERO should call bpf_mark_chain_precision() for the zero source. This patch fixes the bug in a simplest way possible: avoids converting stack spills of zero to STACK_ZERO. Two smarter approaches are possible: - do bpf_mark_chain_precision() from __clean_func_state() - check slot liveness information in check_stack_write_fixed_off() I investigated both and the changes required are a bit tricky, hence go with a simple fix for the time being.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS