Katalog CVE

CVE-2026-98719

Niskie ryzyko· EPSS 5%
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.17%

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

Streszczenie

W jądrze Linux w KVM SEV wskaźnik maski have_run_cpus nie jest zerowany po zwolnieniu, co w ścieżce błędu __sev_guest_init() prowadzi do podwójnego zwolnienia w sev_vm_destroy(). Poprawka wprowadza pomocniczą funkcję i zeruje wskaźnik po zwolnieniu.

Ocena ryzyka

Podwójne zwolnienie pamięci może prowadzić do uszkodzenia sterty, awarii jądra lub potencjalnej eskalacji uprawnień w środowiskach wykorzystujących SEV.

Rekomendacja

Zaktualizować jądro Linux do wersji zawierającej poprawkę zerującą wskaźnik have_run_cpus po zwolnieniu maski.

Inne podatności w Linux kernel (KVM SEV)

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

In the Linux kernel, the following vulnerability has been resolved: KVM: SEV: Nullify "have run CPUs" mask pointer when freeing it Nullify have_run_cpus when freeing the mask, particularly in the error path of __sev_guest_init(), so that KVM doesn't have to subtly use sev->active to track whether or not the mask has been freed. As pointed out by Sashiko, blindly freeing the mask in sev_vm_destroy() results in a double-free if the mask is freed if __sev_guest_init() fails. Throw the logic in a helper as nullifying the pointer is frustratingly difficult and weird due to have_run_cpus being a single-entry array when CPUMASK_OFFSTACK=n. Deliberately don't use CPUMASK_VAR_NULL, as it's not directly assignable when the cpumask is on-stack, e.g. requires using a local variable and a memcpy(), which is beyond ridiculous. Furthermore, while clearing the on-stack bitmask is an unnecessary and arguably unwanted side effect, KVM absolutely relies on '0' being the "null" value given that the struct is zero-allocated. Opportunistically add an alloc() helper to pair with free(); there are just enough call sites to make doing so worthwhile.

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