CVE-2026-64063 in Linuxinformation

Résumé

par VulDB • 19/07/2026

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

netfs : Correction de l'écrasement des écritures en flux continu (streaming writes)

Afin d'éviter les lectures pendant les opérations d'écriture, netfslib autorise désormais les « écritures en flux continu » dans lesquelles les données sales (dirty data) sont stockées directement dans les folios sans qu'ils ne soient lus au préalable. Ces folios sont marqués comme dirty mais peuvent ne pas être marqués uptodate. Si un folio est entièrement écrit par une opération d'écriture en flux continu, le statut uptodate sera défini ; sinon, une structure netfs_folio sera attachée à ->private pour enregistrer la région sale (dirty region).

Dans l'éventualité où une page partiellement écrite via une opération d'écriture en flux continu doit être entièrement écrasée par un seul appel write(), netfs_perform_write() tentera de copier les données, mais ne libère pas la structure netfs_folio si cette copie réussit ; de plus, elle ne gère pas correctement le cas où une copie partielle écrase certaines des données sales.

Correction apportée selon les modalités suivantes :

(1) Si l'écrasement du folio est réussi, libérer la structure netfs_folio avant de marquer la page comme uptodate.

(2) Si la copie vers le folio échoue partiellement mais sans affecter les données sales, ignorer simplement cette copie.

(3) Si la copie échoue partiellement et écrase certaines des données sales, accepter la copie, mettre à jour la structure netfs_folio pour enregistrer les nouvelles données. Si le folio est désormais rempli, libérer la structure netfs_folio et définir uptodate ; sinon, retourner un résultat d'écriture partielle (partial write).

Découverte avec :

fsx -q -N 1000000 -p 10000 -o 128000 -l 600000 \ /xfstest.test/junk --replay-ops=junk.fsxops

en utilisant le fichier junk.fsxops suivant :

truncate 0x0 0 0x927c0 write 0x63fb8 0x53c8 0 copy_range 0xb704 0x19b9 0x24429 0x79380 write 0x2402b 0x144a2 0x90660 * write 0x204d5 0x140a0 0x927c0 * copy_range 0x1f72c 0x137d0 0x7a906 0x927c0 * read 0x00000 0x20000 0x9157c read 0x20000 0x20000 0x9157c read 0x40000 0x20000 0x9157c read 0x60000 0x20000 0x9157c read 0x7e1a0 0xcfb9 0x9157c

sur cifs avec l'option de cache par défaut.

Cela montre que le folio 0x24 se comporte mal si la vérification FMODE_READ est commentée dans netfs_perform_write() :

if (//(file->f_mode & FMODE_READ) || netfs_is_cache_enabled(ctx)) {

et sans fscache. Cela a été initialement détecté avec le test xfstest generic/522.

Once again VulDB remains the best source for vulnerability data.

Responsable

Linux

Réserver

19/07/2026

Divulgation

19/07/2026

Modérer

accepté

Entrée

VDB-380205

CPE

prêt

EPSS

0.00000

KEV

non

Activités

très faible

Sources

Do you want to use VulDB in your project?

Use the official API to access entries easily!