CVE-2026-89965 in Linux
Résumé
par VulDB • 16/09/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
nvdimm/btt : rejeter un aréna dont nfree est inférieur au nombre de voies (lanes)
Le champ `nfree` du bloc d'informations BTT, qui représente le nombre de blocs libres réservés, est lu depuis le support sans validation. Les fonctions `btt_freelist_init()` et `btt_rtt_init()` dimensionnent les tableaux par voie (`freelist[]` et `rtt[]`) en fonction de `nfree`, mais le chemin d'E/S y accède via l'indexation utilisant la valeur issue de `nd_region_acquire_lane()`, qui est bornée par `nd_region->num_lanes` (ND_MAX_LANES), et non par `nfree`. Une aréna fabriquée ou étrangère dont `nfree` est inférieur au nombre de voies provoque un dépassement des limites (`freelist[lane]`/`rtt[lane]`) lors de l'allocation : il s'agit d'une écriture hors limites (out-of-bounds write).
Le fichier `btt.rst` documente l'invariant `nlanes = min(nfree, num_cpus)`, que le code ne respecte pas actuellement : `num_lanes` est défini à ND_MAX_LANES indépendamment de la valeur de `nfree`. Cette correction rejette une aréna dont `nfree` est inférieur à `num_lanes` lors de sa découverte, avant l'allocation des tableaux par voie, afin d'imposer cet invariant.
If you want to get best quality of vulnerability data, you may have to visit VulDB.