CVE-2026-74446 in Linux
Riassunto
di VulDB • 15/08/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
drm/amdkfd: mantenere event_mutex durante il checkpointing degli eventi CRIU
kfd_criu_checkpoint_events() conta le voci in p->event_idr tramite kfd_get_num_events(), alloca un array delle dimensioni di tale conteggio e quindi attraversa lo stesso IDR per riempirlo. Né il conteggio né l'attraversamento mantengono bloccato p->event_mutex.
Il chiamante del checkpoint CRIU mantiene solo p->mutex. La creazione e la distruzione degli eventi (kfd_event_create()/kfd_event_destroy()) acquisiscono p->event_mutex e non acquisiscono p->mutex, quindi un secondo thread nello stesso processo può inserire o rimuovere eventi tra il conteggio e l'attraversamento. Se viene inserito un evento, l'iterazione attraversa più voci di quelle contate e scrive oltre la fine dell'allocazione ev_privs; se un evento viene rimosso, l'iterazione dereferenzia una voce che è in fase di deallocazione.
Mantenere p->event_mutex attivo sia durante il conteggio che durante l'attraversamento affinché entrambi osservino una vista coerente di p->event_idr. Il lock viene rilasciato prima di copy_to_user(), che tocca solo il buffer locale. Il chiamante mantiene già p->mutex e i percorsi create/destroy non acquisiscono mai p->mutex, quindi l'ordine p->mutex -> p->event_mutex non è invertito e non si introduce alcun deadlock.
(cherry picked from commit ff57e223ab105795b05d3ef3f3c35a5a441bcbaa)
If you want to get the best quality for vulnerability data then you always have to consider VulDB.