Katalog CVE

CVE-2026-89486

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

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.12%

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

Streszczenie

W jądrze Linux w podsystemie IPMI występuje błąd use-after-free w funkcji _ipmi_destroy_user(). Usunięcie synchronize_rcu() między odłączeniem odbiorników poleceń z listy intf->cmd_rcvrs a ich zwolnieniem pozwala czytelnikowi wciąż używać wskaźnika do zwolnionego obiektu cmd_rcvr. Lista cmd_rcvrs jest nadal przeglądana w zwykłym RCU, więc brak okresu karencji powoduje użycie po zwolnieniu.

Ocena ryzyka

Może prowadzić do usterki jądra (use-after-free) i potencjalnej eskalacji uprawnień lub destabilizacji systemu. Dotyczy systemów korzystających z IPMI.

Rekomendacja

Zaktualizuj jądro Linux do wersji przywracającej synchronize_rcu() przed zwolnieniem odbiorników. Jeśli aktualizacja nie jest możliwa, ogranicz dostęp do interfejsu IPMI.

Powiązane podatności

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

In the Linux kernel, the following vulnerability has been resolved: ipmi: Fix use-after-free of cmd_rcvr in _ipmi_destroy_user() Commit 9e91f8a6c868 ("ipmi:msghandler: Remove srcu for the ipmi_interfaces list") dropped the synchronize_rcu() between unlinking the command receivers from intf->cmd_rcvrs and freeing them, updating only the comment that explains why the barrier is needed. The cmd_rcvrs list is still traversed under plain RCU: find_cmd_rcvr() walks it inside rcu_read_lock(), and handle_ipmb_get_msg_cmd() borrows rcvr->user from that lookup within the same read-side section. Without the grace period, _ipmi_destroy_user() can kfree() a cmd_rcvr while a reader still holds a pointer to it, causing a use-after-free. The rework only made srcu unnecessary for the interfaces list; the cmd_rcvrs list still relies on plain RCU. Restore the synchronize_rcu() before freeing the receivers.

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