nilfs2: fix slab-out-of-bounds in nilfs_direct_propagate after truncation (Linux Linux)
En bref
- Source
- NVD
- EPSS
- EPSS 0.17 % · centile 6 ()
- État
- PUBLISHED
- Publiée
- Mise à jour
- Attribuée par
- Linux
- Statut NVD
- Received
Rechercher sur…
Description
In the Linux kernel, the following vulnerability has been resolved: nilfs2: fix slab-out-of-bounds in nilfs_direct_propagate after truncation Shuangpeng Bai reported that KASAN detected a slab-out-of-bounds error in nilfs_direct_propagate() during testing. Analysis revealed that after truncating a file, a node block immediately below the B-tree root was not deleted. Instead, it remained in the B-tree node cache in a dirty state. The log writer subsequently detected this block and incorrectly invoked nilfs_direct_propagate() on it, which is designed to handle only data blocks in direct mapping. B-tree nodes in the cache are managed by virtual block numbers, and their logical keys typically exceed the range expected by direct mapping. Consequently, processing such a node as a direct mapping entry triggers a slab-out-of-bounds access. The root cause is that when a B-tree mapping collapses into a direct mapping during truncation, an intermediate node block pointed to by the root node is left behind as garbage instead of being explicitly deleted. This resolves the issue by adding a nilfs_btree_discard() operation to delete the remaining intermediate node block during the conversion. A 'deform' flag is added to the bop_delete interface to explicitly signal that the deletion is part of a mapping transformation. This allows the B-tree mapping implementation to perform the necessary cleanup and discarding of the residual node structure that would be otherwise be left orphaned after the transition.
Références
- https://git.kernel.org/stable/c/39005fd1ce654ffdecacddc406b9a038efe606e6
- https://git.kernel.org/stable/c/bf49e6f6ddc12445a0330708b365de6458085980
- https://git.kernel.org/stable/c/4a1bb1f9f24a935c9b3f4fbf98012fa6d4ad826d
- https://git.kernel.org/stable/c/b313edfbc0c2a60f7ce09b2e81ee71909ab8ddaf
- https://git.kernel.org/stable/c/5d3783c451a546373662ee11ec17019273e68034
- https://git.kernel.org/stable/c/448636c745a3f3b8582a0b8ce718c890a11c0fa9
- https://git.kernel.org/stable/c/28362e8ce51377afdec1782e661e808328a10514
- https://git.kernel.org/stable/c/45662dedb8f272ef7f16e69f13424c4bd0399240
Scores
| Version | Score | Vecteur | Évalué par |
|---|---|---|---|
| CVSS 3.1 | HIGH 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H | Linux |
| CVSS 3.1 | HIGH 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H | NVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary) |
Références européennes
- ENISA EUVD · EUVD-2026-76635
- GCVE · GCVE-0-2026-89723
Avis du CERT-FR
- CERTFR-2026-AVI-1385 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1375 — Multiples vulnérabilités dans le noyau Linux de Debian LTS · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1289 — Multiples vulnérabilités dans le noyau Linux de Debian LTS · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1253 — Multiples vulnérabilités dans le noyau Linux de Debian · cert.ssi.gouv.fr
Produits affectés
| Produit | Versions |
|---|---|
| Linux · Linux | affected 36a580eb489f54d81a0534974962e732a314b999 < 39005fd1ce654ffdecacddc406b9a038efe606e6 ; affected 36a580eb489f54d81a0534974962e732a314b999 < bf49e6f6ddc12445a0330708b365de6458085980 ; affected 36a580eb489f54d81a0534974962e732a314b999 < 4a1bb1f9f24a935c9b3f4fbf98012fa6d4ad826d ; affected 36a580eb489f54d81a0534974962e732a314b999 < b313edfbc0c2a60f7ce09b2e81ee71909ab8ddaf ; affected 36a580eb489f54d81a0534974962e732a314b999 < 5d3783c451a546373662ee11ec17019273e68034 ; affected 36a580eb489f54d81a0534974962e732a314b999 < 448636c745a3f3b8582a0b8ce718c890a11c0fa9 |
| Linux · Linux | affected 2.6.30 ; unaffected 0 < 2.6.30 ; unaffected 5.10.270 ≤ 5.10.* ; unaffected 5.15.221 ≤ 5.15.* ; unaffected 6.1.188 ≤ 6.1.* ; unaffected 6.6.157 ≤ 6.6.* |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |