Vigil@nce - QEMU-KVM : corruption de mémoire via virtio_queue_notify
juillet 2011 par Vigil@nce
Ce bulletin a été rédigé par Vigil@nce : http://vigilance.fr/offre
SYNTHÈSE DE LA VULNÉRABILITÉ
Un attaquant local dans un système invité peut employer
virtio_queue_notify(), afin de corrompre la mémoire de l’hôte,
pour le stopper ou y faire exécuter du code.
Gravité : 2/4
Date création : 29/06/2011
PRODUITS CONCERNÉS
– Debian Linux
– Red Hat Enterprise Linux
– Unix - plateforme
DESCRIPTION DE LA VULNÉRABILITÉ
Le produit QEMU-KVM utilise le module noyau Linux KVM pour gérer
les systèmes invités.
Un système hôte émule généralement des périphériques standards,
pour lesquels les systèmes invités ont des pilotes. L’interface
VIRTIO (Virtual Input-Output) comporte moins de fonctionnalités
qu’un périphérique matériel, et permet de communiquer de manière
plus performante, à l’aide d’un pilote VIRTIO installé dans les
systèmes invités.
VIRTIO utilise des queues pour l’échange de données. La fonction
virtio_queue_notify() du fichier hw/virtio.c permet de notifier de
la présence de données sur une queue. Cependant, cette fonction ne
vérifie pas si l’indice de la queue est négatif. Le système peut
alors écrire hors du tableau des queues.
Un attaquant local dans un système invité peut donc employer
virtio_queue_notify(), afin de corrompre la mémoire de l’hôte,
pour le stopper ou y faire exécuter du code.
ACCÈS AU BULLETIN VIGIL@NCE COMPLET
http://vigilance.fr/vulnerabilite/QEMU-KVM-corruption-de-memoire-via-virtio-queue-notify-10790