Katalog CVE

CVE-2026-98283

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

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.14%

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

Streszczenie

W jądrze Linux w KVM dla architektury PowerPC (Book3S HV) występuje podatność use-after-free w funkcji kvmhv_emulate_tlbie_all_lpid(). Funkcja iteruje po identyfikatorach zagnieżdżonych gości, ale nie utrzymuje referencji na wskaźnik kvm_nested_guest, co pozwala na wyścig z równoległym vCPU i zwolnienie pamięci. Poprawka polega na zwiększeniu licznika referencji przed zwolnieniem blokady i zwolnieniu referencji po zakończeniu pracy.

Ocena ryzyka

Podatność może prowadzić do naruszenia integralności pamięci, co może skutkować awarią systemu lub potencjalnie eskalacją uprawnień w środowisku wirtualizacji.

Rekomendacja

Zastosuj aktualizację jądra Linux zawierającą poprawkę dla CVE-2026-98283. Upewnij się, że środowiska KVM/PowerPC są zaktualizowane.

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: KVM: PPC: Book3S HV: fix use-after-free in kvmhv_emulate_tlbie_all_lpid() kvmhv_emulate_tlbie_all_lpid() iterates the nested-guest IDR and drops mmu_lock before calling kvmhv_emulate_tlbie_lpid(), but does not hold a reference on the kvm_nested_guest pointer obtained from the IDR. A concurrent vCPU issuing a single-LPID tlbie (is=2, ric=2) can race through kvmhv_flush_nested() -> kvmhv_remove_nested() -> idr_remove / --refcnt -> kvmhv_release_nested() -> kfree(gp) in that window, leaving the iterating vCPU with a dangling pointer. The subsequent mutex_lock(&gp->tlb_lock) and accesses to gp->shadow_pgtable, gp->shadow_lpid and gp->l1_host all touch freed memory. The free path is fully L1-controlled. Fix this by incrementing gp->refcnt inside the loop before dropping mmu_lock, mirroring what kvmhv_get_nested() does, and releasing the reference with kvmhv_put_nested() after the per-guest work completes. This is the same get/put discipline already used at every other call site that drops mmu_lock while holding a nested-guest pointer.

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