L'utilisation de la fonctionnalité de VMware DirectPath I/O pour relayer un périphérique PCI ou PCIe vers une machine virtuelle crée une vulnérabilité de sécurité potentielle. La vulnérabilité peut être déclenchée si un code bogué ou malveillant, tel qu'un pilote de périphérique, s'exécute en mode privilégié dans le système d'exploitation invité. Les standards matériels et micrologiciels n'ont pour le moment pas la prise en charge nécessaire des conteneurs d'erreur pour protéger les hôtes ESXi de la vulnérabilité.
N'utilisez un relais PCI ou PCIe sur une machine virtuelle que si une entité approuvée possède et administre la machine virtuelle. Vous devez vous assurer que cette entité ne tente pas de bloquer ou d'exploiter l'hôte depuis la machine virtuelle.
Votre hôte peut être compromis de l'une des manières suivantes.
- Le système d'exploitation invité peut générer une erreur PCI ou PCIe irrécupérable. Une telle erreur n'altère pas les données, mais peut bloquer l'hôte ESXi. De telles erreurs peuvent se produire en raison de bogues ou d'incompatibilités dans les périphériques matériels et qui sont ensuite transmises. Des problèmes de pilotes dans le système d'exploitation invité peuvent également être une source possible d'erreurs.
- Le système d'exploitation invité peut générer une opération DMA (Direct Memory Access) et provoquer une erreur de page IOMMU sur l'hôte ESXi. Cette opération peut être le résultat d'une opération DMA visant une adresse en dehors de la mémoire de la machine virtuelle. Sur certaines machines, le microprogramme de l'hôte configure les pannes IOMMU pour signaler une erreur fatale via une interruption non masquable (NMI). Cette erreur fatale entraîne le blocage de l'hôte ESXi. Ce problème peut être dû à des dysfonctionnements de pilotes du système d'exploitation invité.
- Si le système d'exploitation sur l'hôte ESXi n'utilise pas le remappage d'interruption, le système d'exploitation invité peut injecter une interruption fallacieuse dans l'hôte ESXi sur n'importe quel vecteur. ESXi utilise actuellement le remappage d'interruptions sur les plates-formes Intel offrant cette possibilité. Le remappage d'interruption fait partie de l'ensemble de fonctionnalités Intel VT-d. ESXi n'utilise pas le mappage d'interruptions sur les plates-formes AMD. Une fausse interruption peut entraîner un blocage de l'hôte ESXi. Il existe en théorie d'autres façons d'exploiter ces fausses interruptions.