Katalog CVE

CVE-2026-90358

WysokieCVSS 7.8
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.16%

Percentyl 6 - wyżej niż 6% wszystkich znanych CVE

Streszczenie

W jądrze Linux funkcja btf_distill_func_proto() akceptuje argumenty funkcji do 16 bajtów, więc 128-bitowy typ __int128 trafia do trampoliny x86 z arg_size równym 16. Obecna implementacja zakłada jednak, że argument __int128 wymaga tylko jednego rejestru, przez co obszar zapisu rejestrów jest niedoszacowany, a save_args() nadpisuje sąsiednie sloty stosu.

Ocena ryzyka

Błąd w obsłudze trampolin BPF na architekturze x86 może prowadzić do uszkodzenia stosu jądra i potencjalnej eskalacji uprawnień lub destabilizacji systemu. Wykorzystanie wymaga możliwości ładowania programów BPF.

Rekomendacja

Zaktualizuj jądro Linux do wersji zawierającej poprawkę, która oblicza liczbę rejestrów na podstawie arg_size dla wszystkich argumentów. Ogranicz możliwość ładowania programów BPF do zaufanych użytkowników.

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, x86: Fix trampoline stack size for 128-bit arguments btf_distill_func_proto() accepts a function argument up to 16 bytes, so a 128-bit scalar such as __int128 reaches the x86 trampoline with arg_size == 16. But the current implementation assumes an __int128 argument only needs one register, so the register save area is under-allocated and save_args() overwrites adjacent stack slots. Compute the register count from arg_size for all arguments to fix it.

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