Vigil@nce - libvirt : lecture fichier via Disk Probe
juin 2011 par Vigil@nce
Ce bulletin a été rédigé par Vigil@nce : http://vigilance.fr/
SYNTHÈSE DE LA VULNÉRABILITÉ
Un attaquant qui est administrateur dans un système invité peut
employer la fonctionnalité Disk Probe de libvirt, afin de lire un
fichier du système hôte.
Gravité : 1/4
Date création : 17/06/2011
PRODUITS CONCERNÉS
– OpenSUSE
– Unix - plateforme
DESCRIPTION DE LA VULNÉRABILITÉ
La bibliothèque libvirt fournit une interface standardisée sur
plusieurs produits de virtualisation (Xen, QEMU, KVM, etc.).
Le système invité peut utiliser un disque virtuel (/dev/hda), qui
est stocké dans un fichier image du système hôte. Lorsque format
du disque (raw, qcow2, etc.) n’a pas été définit lors de
l’installation du système invité, la fonctionnalité Disk Probe de
libvirt regarde les premiers octets du fichier image pour
déterminer son format.
Un administrateur dans un système invité peut employer "qemu-img
-f qcow2 /dev/hda" pour changer le format du fichier image en
qcow2, puis y écrire un entête illicite. Le format qcow2 est
auto-extensible, donc si l’entête qcow2 créé indique un offset
situé hors du fichier image, l’attaquant pourra accéder à un autre
fichier du système hôte. Comme la fonctionnalité Disk Probe est
dangereuse, elle a été désactivée en version 0.7.2
(allowDiskFormatProbing initialisé à faux par défaut).
Cependant, depuis la version 0.8.8, la fonction
virSecurityManagerGetPrivateData() du fichier libvirt
src/security/security_manager.c écrase la structure
_virSecurityManager, qui contient le champ allowDiskFormatProbing.
La fonctionnalité Disk Probe est alors réactivée, et l’ancienne
vulnérabilité est de nouveau utilisable.
Un attaquant qui est administrateur dans un système invité peut
donc employer la fonctionnalité Disk Probe de libvirt, afin de
lire un fichier du système hôte.
ACCÈS AU BULLETIN VIGIL@NCE COMPLET
http://vigilance.fr/vulnerabilite/libvirt-lecture-fichier-via-Disk-Probe-10755