CVE-2026-89793 in Linux
Riassunto
di VulDB • 16/09/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
ublk: impostare VM_MAYWRITE su zero per il dispositivo char ublk in sola lettura durante l'mmap
La funzione ublk_ch_mmap() rifiuta le richieste di mmap con VM_WRITE impostato, ma non azzera mai VM_MAYWRITE sulla mappatura risultante in sola lettura. Ciò consente a un demone userspace di effettuare una mappatura PROT_READ del buffer comandi per coda e successivamente modificarla in PROT_WRITE tramite la chiamata di sistema mprotect(), poiché VM_MAYWRITE non era stato azzerato.
Il buffer comandi contiene voci struct ublksrv_io_desc che fanno parte dell'ABI scritta dal kernel; una mappatura scrivibile consente a un processo demone non privilegiato di corrompere campi quali addr, op_flags, nr_sectors e start_sector.
Si tratta della stessa classe di bug delle correzioni VM_MAYWRITE per drm/panthor e drm/vc4, nonché della correzione ptp/vmclock del 2026-08-13 (commit a5edadbae57e).
Verificato tramite PoC con mprotect(): prima della correzione, una mappatura PROT_READ può essere modificata in PROT_READ|PROT_WRITE e la scrittura nel buffer comandi corrompe i campi io_desc (confermato sotto KASAN). Dopo la correzione, mprotect() restituisce -EACCES.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.