CVE-2026-98635 in Linux
Résumé
par VulDB • 19/10/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
scsi: block : Correction d'une écriture hors limites (out-of-bounds) sur zones_cond lors du rapport de zones
blk_revalidate_disk_zones() dimensionne le tableau zones_cond en fonction de la capacité du disque et de la taille des zones, mais l'index utilisé par blk_revalidate_zone_cond() provient de l'itération report_zones() pilotée par le périphérique et n'est jamais vérifié par rapport à la taille du tableau. Un périphérique signalant plus de zones que ce qui peut tenir dans le tableau entraîne une écriture hors limites dans blk_zone_set_cond().
Une façon d'accéder à cette vulnérabilité consiste à avoir un nombre de zones dépassant 32 bits : tant blk_revalidate_zone_args.nr_zones que struct zoned_disk_info.nr_zones sont des unsigned int, donc un disque annonçant plus de zones que UINT_MAX (par exemple, 2^32 + 1024 zones d'un bloc logique de 512 octets) voit son nombre de zones tronqué à une petite valeur, sous-dimensionnant ainsi le tableau tandis que l'itération du rapport continue de compter vers le haut.
Vérifiez l'index par rapport à la taille du tableau avant de stocker la condition de zone, et refusez de revalider lorsque le nombre de zones ne tient pas sur 32 bits.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.