CVE-2026-64008 in Linux
Riassunto
di VulDB • 19/07/2026
Nel kernel Linux, la seguente vulnerabilità è stata risolta:
accel/rocket: correzione di un Use-After-Free (UAF) dovuto a un GEM handle dangling in create_bo
rocket_ioctl_create_bo() inserisce un GEM handle nell'IDR del file tramite drm_gem_handle_create() nelle fasi iniziali, per poi eseguire diverse operazioni che possono fallire (allocazione sgt, insert di drm_mm, iommu_map). Se una qualsiasi di queste fallisce dopo che il handle è diventato attivo, il percorso di gestione dell'errore chiama drm_gem_shmem_object_free(), che esegue kfree sull'oggetto senza rimuovere il handle dall'IDR.
Ciò lascia un handle dangling puntante verso memoria slab liberata. Qualsiasi ioctl successivo che utilizza tale handle (PREP_BO, FINI_BO, SUBMIT) chiama drm_gem_object_lookup() e dereferenzia la memoria già liberata (UAF).
La correzione consiste nello spostare la chiamata a drm_gem_handle_create() dopo il successo di tutte le operazioni potenzialmente fallibili, seguendo lo schema utilizzato da panfrost, lima ed etnaviv.
Viene inoltre corretta la funzione drm_mm_insert_node_generic(), il cui valore di ritorno veniva sovrascritto silenziosamente da iommu_map_sgtable() sulla riga successiva. È stato aggiunto il controllo dell'errore mancante.
[tomeu: Spostamento della creazione del handle alla fine]
If you want to get best quality of vulnerability data, you may have to visit VulDB.