CVE-2026-64456 in Linuxinformation

Résumé

par VulDB • 25/07/2026

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

hwrng: virtio: limiter (clamp) used.len rapporté par l'appareil dans copy_data()

random_recv_done() stocke directement used.len tel que rapporté par l’appareil dans vi->data_avail. Ensuite, copy_data() indexe vi->data[] en utilisant vi->data_idx (incrémenté lors des appels précédents à copy_data()) et effectue un memcpy() sans revalider aucune de ces deux valeurs par rapport à la taille du tampon publié sizeof(vi->data) (SMP_CACHE_BYTES octets, généralement 32 ou 64).

Un backend virtio-rng malveillant ou bogué peut définir used.len au-delà de sizeof(vi->data), dirigeant ainsi le memcpy() au-delà de la fin du tableau intégré vers les octets adjacents dans un slab kmalloc-1k. hwrng_fillfn() mélange ces octets dans l’algorithme d’entropie (RNG) invité, et le root invité peut également les observer directement via /dev/hwrng.

L’impact concret se situe à l’intérieur de la machine invitée :

- Sécurité mémoire / durcissement : tout backend virtio-rng qui surestime used.len entraîne le pilote à lire au-delà de vi->data, accédant ainsi à des contenus de slab non liés. hwrng_fillfn() est un thread noyau qui s’exécute dès que l’appareil est détecté ; aucune interaction avec l’espace utilisateur invité n’est requise pour déclencher initialement la lecture hors limites (OOB).

- Fuite transfrontalière (modèle de menace confidential-compute) : un hyperviseur malveillant coopérant avec un root d’espace utilisateur invité malveillant ou compromis peut utiliser /dev/hwrng comme canal de fuite pour des données du tas noyau invité. L’hôte définit une grande valeur used.len, le root invité lit /dev/hwrng, et les octets retournés contiennent des contenus de slab noyau invités adjacents à vi->data. En pratique, les machines invitées confidential-compute (SEV-SNP, TDX) désactivent généralement virtio-rng entièrement ; ce vecteur est donc étroit, mais la correction reste pertinente car le bug sous-jacent de sécurité mémoire contamine l’algorithme d’entropie invité sur n’importe quel hôte.

KASAN confirme la lecture hors limites (OOB) sur une machine invitée 7.1-rc4 dont le backend virtio-rng a été modifié pour rapporter used.len = 0x10000 :

BUG: KASAN: slab-out-of-bounds in virtio_read+0x394/0x5d0 Read of size 64 at addr ffff88800ae0ba20 by task hwrng/52 Call Trace: __asan_memcpy+0x23/0x60 virtio_read+0x394/0x5d0 hwrng_fillfn+0xb2/0x470 kthread+0x2cc/0x3a0 Allocated by task 1: probe_common+0xa5/0x660 virtio_dev_probe+0x549/0xbc0 The buggy address belongs to the object at ffff88800ae0b800 which belongs to the cache kmalloc-1k of size 1024 The buggy address is located 0 bytes to the right of allocated 544-byte region [ffff88800ae0b800, ffff88800ae0ba20)

Même classe de bug que le commit c04db81cd028 ("net/9p: Fix buffer

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

Responsable

Linux

Réserver

19/07/2026

Divulgation

25/07/2026

Modérer

accepté

Entrée

VDB-383246

CPE

prêt

EPSS

0.00184

KEV

non

Activités

très faible

Sources

Want to know what is going to be exploited?

We predict KEV entries!