Un utente malintenzionato avanzato potrebbe compromettere un hypervisor tramite i driver di dispositivo emulati più facilmente che tramite la gestione degli appunti. Il modo in cui funziona un hypervisor consiste nel fornire un nuovo ambiente di esecuzione per un guest e nell'esporre l'hardware emulato. Quando un driver nel guest tenta di accedere all'hardware virtuale, ad esempio leggendo e scrivendo su PCI per interagire con dispositivi PCI, il software del dispositivo emulato dell'hypervisor sentirà la richiesta, interromperà temporaneamente il guest in esecuzione ed emulerà nel software cosa l'hardware effettivo avrebbe fatto prima di smettere di fumare l'ospite e permettergli di vedere i risultati. Ciò consente all'ospite di essere effettivamente inconsapevole del suo ambiente virtuale sottostante. Quando si pensa che i dispositivi emulati agiscano semplicemente come proxy, implementando un protocollo complesso e spesso scarsamente documentato tra il software guest (progettato per comunicare con l'hardware reale) e l'hardware host (che è in grado di ascoltare il software), è più facile vedere come un bug nell'analisi di strutture di dati così complesse potrebbe causare una violazione della sicurezza.
Questo è uno sguardo ad alcuni dei problemi di sicurezza di un hypervisor, in particolare QEMU con KVM, anche se i concetti generali dovrebbero applicarsi a quasi tutti i software hypervisor.
Nota che la maggior parte delle volte, sfruttando un bug nei dispositivi emulati, l'utente malintenzionato deve avere un accesso privilegiato al guest. Devono compromettere completamente l'ospite prima che sia loro permesso di interagire con l'hardware emulato. Se l'ospite stesso è sufficientemente sicuro, probabilmente lo sarà anche l'hypervisor.
La versione completa della famosa citazione di Theo de Raadt, fondatore di OpenBSD:
x86 virtualization is about basically placing another nearly full
kernel, full of new bugs, on top of a nasty x86 architecture which
barely has correct page protection. Then running your operating
system on the other side of this brand new pile of shit.
You are absolutely deluded, if not stupid, if you think that a
worldwide collection of software engineers who can't write operating
systems or applications without security holes, can then turn around
and suddenly write virtualization layers without security holes.
You've seen something on the shelf, and it has all sorts of pretty
colours, and you've bought it.
That's all x86 virtualization is.
Alla fine, tuttavia, le probabilità che un "dodgy link" contenga uno 0day di rottura dell'hypervisor sono piuttosto remote. Se mai, avrà un exploit per una vecchia versione di Flash, utilizzata per scaricare software botnet.