CVE-2026-90048 in Linux
Résumé
par VulDB • 16/09/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
fs/ntfs3 : correction d'une écriture hors limites (slab-out-of-bounds) dans ni_create_attr_list()
ni_create_attr_list() alloue un tampon de taille fixe de al_aligned(record_size) (== record_size) octets, puis parcourt chaque attribut du MFT principal en écrivant une entrée ATTR_LIST_ENTRY par attribut et en avançant le curseur de le_size(name_len), sans aucune vérification par rapport à la fin du tampon ; la taille totale n'est calculée qu'après la boucle.
Un attribut résident de taille minimale occupe SIZEOF_RESIDENT (0x18 = 24) octets sur disque, mais un attribut non nommé s'étend à le_size(0) (0x20 = 32) octets dans la liste. Étant donné que le nombre d'attributs dans un enregistrement n'est pas borné (mi_enum_attr() accepte arbitrairement autant d'attributs de taille minimale sans nom et de même type), un enregistrement fabriqué rempli de tels attributs produit une liste plus grande que record_size, provoquant un dépassement du tampon sur le tas.
Ceci est accessible via une image NTFS fabriquée montée en boucle : l'ouverture du fichier et l'ajout d'un attribut (par exemple via setxattr) déclenche ntfs_set_ea() -> ni_insert_resident() -> ni_insert_attr() -> ni_ins_attr_ext() -> ni_create_attr_list().
BUG: KASAN: slab-out-of-bounds dans ni_create_attr_list+0xc48/0x1058 Écriture de taille 4 à l'adresse ffff000008984c00 par la tâche setfattr/345 ni_create_attr_list+0xc48/0x1058 ni_ins_attr_ext+0x510/0x7c0 ni_insert_attr+0x3f8/0x70c ni_insert_resident+0xc8/0x3b0 ntfs_set_ea+0x66c/0xd28 ntfs_setxattr+0x4d8/0x5b0 __arm64_sys_setxattr+0xa4/0x124 Alloué par la tâche 345 : ni_create_attr_list+0x188/0x1058 L'adresse boguée appartient au cache kmalloc-1k de taille 1024 (l'écriture atterrit à object+1024).
Dimensionnez le tampon en fonction des attributs réels plutôt que de supposer qu'une seule valeur record_size est toujours suffisante.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.