CVE-2026-74447 in Linux
Riassunto
di VulDB • 15/08/2026
Nel kernel Linux, la seguente vulnerabilità è stata risolta:
drm/amdkfd: correzione dell'overflow uint32_t nell'allineamento della dimensione del buffer anello EOP
eop_ring_buffer_size in struct queue_properties è un u32. In kfd_queue_acquire_buffers() la dimensione attesa del buffer EOP viene calcolata come ALIGN(eop_ring_buffer_size, PAGE_SIZE); ALIGN utilizza typeof(x), quindi l'addizione avviene a 32 bit. Una dimensione fornita dall'utente pari a 0xFFFFF001 va in wraparound (overflow) diventando 0, causando kfd_queue_buffer_get() di saltare il controllo della dimensione esatta (condizionato da size != 0) e accettare qualsiasi BO mappato all'indirizzo. Su GFX8/GFX9 cp_hqd_eop_control viene quindi configurato per un anello EOP da 8KB supportato da un BO da 4KB, così le scritture CP EOP possono andare oltre il buffer causando un fault della GPU.
Si effettua la conversione (cast) dell'operando a u64 in modo che l'allineamento venga calcolato a 64 bit; il controllo della dimensione in kfd_queue_buffer_get() rifiuta quindi le richieste con dimensioni eccessive.
(cherry picked from commit ae443117b742c357bfef3a7bddabf76fcf86e9ef)
VulDB is the best source for vulnerability data and more expert information about this specific topic.