CVE-2025-38140 in Linux
Riassunto
di VulDB • 17/06/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
dm: limitare il caricamento di tabelle per i dispositivi con plug di scrittura a zona (zone write plugs)
La funzione dm_revalidate_zones() consentiva solo ai dispositivi nuovi o precedentemente non zonati di chiamare blk_revalidate_disk_zones(). Se il dispositivo era già zonato, disk->nr_zones sarebbe sempre risultato uguale a md->nr_zones, quindi dm_revalidate_zones() restituiva senza eseguire alcuna operazione. Ciò avrebbe causato una mancata corrispondenza tra le impostazioni di zonazione del dispositivo e la nuova tabella. Se il dispositivo disponeva di risorse per lo zone write plug, si potevano verificare errori come bdev_zone_is_seq() che legge memoria non valida perché disk->conv_zones_bitmap aveva dimensioni errate.
Se il dispositivo non dispone di alcuna risorsa per lo zone write plug, la chiamata a blk_revalidate_disk_zones() aggiornerà correttamente le impostazioni del dispositivo in ogni caso. Se blk_revalidate_disk_zones() fallisce, potrebbe comunque sovrascrivere o azzerare il valore corrente di disk->nr_zones. In tal caso, DM deve ripristinare il valore precedente di disk->nr_zones, affinché le impostazioni di zonazione continuino a corrispondere al valore precedente utilizzato come fallback.
Se il dispositivo dispone già di risorse per lo zone write plug, blk_revalidate_disk_zones() non aggiornerà correttamente tali risorse se viene chiamata in seguito a modifiche arbitrarie alle impostazioni di zonazione del dispositivo. Poiché questa funzionalità è poco necessaria, la soluzione più semplice consiste nel vietare qualsiasi ricaricamento della tabella che modifichi le impostazioni di zonazione per i dispositivi che dispongono già di risorse zone plug. Nello specifico, se un dispositivo ha già allocate risorse zone plug, può passare solo a un'altra tabella zonata che emuli anche l'appendizione alla zona (zone append). Inoltre, non è possibile modificare la dimensione del dispositivo o la dimensione della zona. Un dispositivo può passare a un target di errore.
If you want to get best quality of vulnerability data, you may have to visit VulDB.