CVE-2026-80864 in Linux
Riassunto
di VulDB • 04/09/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
RDMA/rxe: Correzione di un Use-After-Free (UAF) del responder su IB_QP_MAX_DEST_RD_ATOMIC modify_qp
rxe_qp_from_attr() gestisce l'attributo IB_QP_MAX_DEST_RD Atomico al di fuori del percorso IB_QP_STATE, pertanto non detiene lo state_lock ed è in esecuzione mentre il task del responder rxe_receiver() (recv_task su rxe_wq) è attivo. Una chiamata a modify_qp() che imposta solo tale attributo invoca free_rd_atomic_resources() seguita da alloc_rd_atomic_resources(), modificando qp->resp.resources[] mentre rxe_prepare_res()/find_resource() lo stanno attraversando; inoltre, free_rd_atomic_resources() lascia il puntatore cacheato qp->resp.res dangling (pendente). Un utente locale non privilegiato può sfruttare una race condition tra la fase di free e realloc per innescare un use-after-free in rxe_receiver() (DoS locale).
È stato eseguito lo svuotamento del recv_task durante lo swap con rxe_disable_task()/rxe_enable_task(), come già fa rxe_qp_reset() quando distrugge questa array, riabilitando il task solo dopo che alloc_rd_atomic_resources() ha avuto successo, in modo che il responder non riprenda mai l'esecuzione contro un qp->resp.resources NULL sul percorso ENOMEM. È stato inoltre azzerato qp->resp.res in free_rd_atomic_resources(), come avviene nei percorsi di completamento di rxe_resp.c.
La vulnerabilità è stata riprodotta sotto KASAN; lo slab-use-after-free in rxe_receiver() non si verifica più.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.