Évasion de VM VM escape
Quand du code exécuté dans une machine virtuelle parvient à en sortir pour atteindre l'hôte ou l'hyperviseur. C'est l'attaque que tout le modèle du cloud public suppose que personne ne réussira : l'isolation entre locataires est la promesse fondatrice de la virtualisation.
La surface d'attaque est rarement le cœur de l'hyperviseur, mais plutôt les périphériques émulés : cartes graphiques, cartes réseau, contrôleurs USB et vieux périphériques dont personne ne se sert, mais qui figurent malgré tout dans le modèle. VENOM (2015) exploitait le contrôleur de disquette virtuel de QEMU, un périphérique dont presque aucun invité n'avait besoin. Les parades en découlent : réduire le modèle de périphériques au minimum — Firecracker n'en expose qu'une poignée, précisément pour cette raison —, exécuter le processus de l'hyperviseur sous seccomp et SELinux pour qu'une évasion réussie aboutisse dans une cage vide, et appliquer les correctifs. Les conteneurs posent le même problème en plus aigu, puisque le noyau est partagé.