Infrastructure
SVGA : Super Video Graphics Array, famille de normes d'affichage qui a succédé au VGA d'IBM, et nom de l'adaptateur graphique virtuel des machines virtuelles VMware. « La carte graphique imaginaire que l'hyperviseur prête à chaque invité, et qui parle directement au propriétaire », par analogie avec l'interphone d'un immeuble, pratique tant que personne ne découvre qu'il ouvre aussi la porte du gardien.
Sens historique : Dans les années 1980 et 1990, SVGA désignait les modes d'affichage supérieurs au VGA (Video Graphics Array) d'IBM, comme le 800 × 600 pixels, popularisés par les fabricants de cartes graphiques.
Sens en virtualisation : VMware expose aux machines virtuelles un adaptateur nommé SVGA II. L'invité lui envoie des commandes graphiques, que l'hyperviseur interprète dans un processus hôte : c'est donc du code de l'hôte qui lit des données fabriquées par l'invité.
Cloudburst : En 2009, Kostya Kortchinsky (Immunity) a montré qu'une machine virtuelle pouvait, par des commandes graphiques malformées envoyées à cet adaptateur, exécuter du code sur l'hôte. La faille porte l'identifiant CVE-2009-1244 (CVE : Common Vulnerabilities and Exposures) et a établi ce que l'on soupçonnait : un périphérique virtuel est d'abord un analyseur de données hostiles.
Ce qui arrive si on s'en passe
Laisser activés des périphériques virtuels inutiles, et notamment l'accélération graphique sur des serveurs qui n'affichent rien, élargit la surface que l'invité peut atteindre dans l'hyperviseur. Une seule faille d'émulation suffit alors à passer d'une machine virtuelle compromise à l'hôte, puis à toutes les autres machines qu'il héberge. L'isolation promise par la virtualisation n'est plus qu'une convention, respectée par tous sauf l'attaquant.
Explication de la marmotte
Une machine virtuelle est un ordinateur simulé à l'intérieur d'un vrai ordinateur. Pour afficher une image, elle utilise une carte graphique simulée, appelée SVGA chez VMware. Le vrai ordinateur doit lire les ordres envoyés à cette fausse carte, et s'il les lit mal, un pirate installé dans la machine virtuelle peut en sortir. C'est pourquoi on désactive les périphériques simulés dont on n'a pas besoin.
Où ce terme est utilisé
- Évasion de VM et isolation matérielle des hyperviseurs (1 occurrence)
