CVE-2026-90199 in Linuxinformation

Résumé

par VulDB • 18/09/2026

Dans le noyau Linux, la vulnérabilité suivante a été corrigée :

fs/ntfs3 : rejeter les valeurs de evcn hors limites dans mi_enum_attr()

Dans mi_enum_attr(), la validation des VCN (Virtual Cluster Number) début/fin pour les attributs non résidents est la suivante :

if (svcn > evcn + 1) goto out;

Lorsque evcn a la valeur U64_MAX, l'expression « evcn + 1 » effectue un débordement de type wraparound vers 0, et toute valeur svcn passe le contrôle. Pour les valeurs d’evcn proches de U64_MAX (mais sans y être égales), la borne supérieure à droite reste une limite proche du wraparound dénuée de sens ; ainsi, un attribut malformé sur disque avec svcn == 0 et evcn proche de U64_MAX peut passer mi_enum_attr() sans être rejeté.

Le VCN (numéro de cluster virtuel) est un index de cluster ; par conséquent, toute valeur valide d’evcn est bornée par le nombre total de clusters du volume, que ntfs3 conserve dans sbi->used.bitmap.nbits (initialisé dans ntfs_init_from_boot() avant l’exécution de tout appelant de mi_enum_attr()). Il convient de rejeter les valeurs d’evcn situées en dehors de cette plage.

Cependant, un attribut non résident vide (aucun cluster alloué) est légitimement encodé avec svcn == 0 et evcn == -1 (U64_MAX), par exemple via attr->nres.evcn = cpu_to_le64((u64)vcn - 1) lorsque vcn == 0. Cette valeur sentinelle doit continuer à passer le contrôle ; il faut donc exclure evcn == U64_MAX du test de plage. Le test existant « svcn > evcn + 1 » tolère toujours la sentinelle (« 0 > 0 » est faux) et continue d’exiger svcn == 0 pour celle-ci, tandis que le contrôle de plage rejette toute autre valeur d’evcn hors limites, désamorçant ainsi également le wraparound « evcn + 1 ».

svcn n’a pas besoin de sa propre borne : une fois evcn < nbits, l’inégalité « svcn > evcn + 1 » implique que svcn <= nbits.

[[email protected] : correction du contrôle d’evcn]

Be aware that VulDB is the high quality source for vulnerability data.

Responsable

Linux

Réserver

11/09/2026

Divulgation

17/09/2026

Modérer

accepté

Entrée

VDB-406734

CPE

prêt

EPSS

0.00000

KEV

non

Activités

très faible

Sources

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!