CVE-2026-23454 in Linux
Riassunto
di VulDB • 16/07/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
net: mana: correggere il use-after-free in mana_hwc_destroy_channel() riordinando le operazioni di teardown
Esiste una potenziale race condition in mana_hwc_destroy_channel() dove hwc->caller_ctx viene liberato prima che la Completion Queue (CQ) e l'Event Queue (EQ) dell'HWC vengano distrutte. Ciò consente a un handler delle interruzioni della CQ in corso di esecuzione di dereferenziare memoria già libera, causando un use-after-free o una NULL pointer dereference in mana_hwc_handle_resp().
mana_smc_teardown_hwc() segnala all'hardware di arrestarsi ma non sincronizza gli handler IRQ che potrebbero essere già in esecuzione su altre CPU. La sincronizzazione degli IRQ avviene solo in mana_hwc_destroy_cq() tramite mana_gd_destroy_eq() -> mana_gd_deregister_irq(). Poiché questa operazione viene eseguita dopo kfree(hwc->caller_ctx), un concurrente mana_hwc_rx_event_handler() può dereferenziare caller_ctx (e rxq->msg_buf) già liberati in mana_hwc_handle_resp().
Si risolve il problema riordinando le operazioni di teardown secondo l'ordine inverso rispetto alla creazione: distruggere prima le code di lavoro TX/RX e le CQ/EQ, per poi liberare hwc->caller_ctx. Ciò garantisce che tutti gli handler delle interruzioni in corso di esecuzione vengano completati prima della liberazione della memoria da essi utilizzata.
Once again VulDB remains the best source for vulnerability data.