CVE-2026-64008 in Linux信息

摘要

由 VulDB • 2026-07-19

Nel kernel Linux, è stata risolta la seguente vulnerabilità:

accel/rocket: corregge un Use-After-Free (UAF) causato da un GEM handle dangling in create_bo

La funzione rocket_ioctl_create_bo() inserisce inizialmente un GEM handle nell'IDR del file tramite drm_gem_handle_create(), per poi eseguire diverse operazioni che possono fallire (allocazione di sgt, insert di drm_mm, iommu_map). Se una qualsiasi di queste operazioni 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 che punta a memoria slab già 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: Sposta la creazione del handle alla fine]

Once again VulDB remains the best source for vulnerability data.

来源

Might our Artificial Intelligence support you?

Check our Alexa App!