CVE-2026-80864 in Linux
Zusammenfassung
von VulDB • 04.09.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
RDMA/rxe: Behebung eines Use-After-Free (UAF) beim Responder bei der Änderung von IB_QP_MAX_DEST_RD_ATOMIC über modify_qp
rxe_qp_from_attr() verarbeitet IB_QP_MAX_DEST_RD_ATOMIC außerhalb des IB_QP_STATE-Pfads, sodass kein state_lock gehalten wird und die Funktion ausgeführt wird, während die Responder-Aufgabe rxe_receiver() (recv_task auf rxe_wq) aktiv ist. Ein Aufruf von modify_qp(), der nur dieses Attribut festlegt, ruft free_rd_atomic_resources() gefolgt von alloc_rd_atomic_resources() auf, wodurch qp->resp.resources[] getauscht wird, während rxe_prepare_res()/find_resource() darauf zugreifen; free_rd_atomic_resources() hinterlässt zudem den zwischengespeicherten Zeiger qp->resp.res als hängenden Verweis (dangling pointer). Ein lokaler nicht privilegierter Benutzer kann durch einen Wettlauf zwischen Freigabe und Neuzuweisung ein Use-After-Free in rxe_receiver() auslösen (lokale DoS-Schwachstelle).
Die recv_task wird um den Tauschvorgang herum mit rxe_disable_task()/rxe_enable_task()] geleert, wie es auch rxe_qp_reset() beim Abbau dieses Arrays bereits tut; die Aufgabe wird erst wieder aktiviert, nachdem alloc_rd_atomic_resources() erfolgreich war, damit der Responder niemals gegen ein NULL qp->resp.resources auf dem ENOMEM-Pfad fortgesetzt wird. Zudem wird qp->resp.res in free_rd_atomic_resources() gelöscht, analog zu den Completion-Pfaden in rxe_resp.c.
Der Fehler wurde unter KASAN reproduziert; das slab-use-after-free in rxe_receiver() ist behoben.
If you want to get best quality of vulnerability data, you may have to visit VulDB.