Évasion guest-to-host

Un invité Workstation ou Fusion s'évade en corrompant le processus vmware-vmx qui émule ses périphériques, exactement comme sur ESXi mais en atterrissant sur l'hôte de bureau de l'utilisateur. Les mêmes surfaces SVGA 3D, USB, NIC et GuestRPC/VMCI s'appliquent, et l'exécution de code dans vmware-vmx s'exécute avec les privilèges de l'utilisateur ou du service exécutant la VM.

2 min de lecturemis à jour le 13 oct. 2026florianamette1 contributeur
Demander à votre assistant (MCP)Modifier sur GitHub

Sur Workstation et Fusion, chaque VM est émulée par un processus vmware-vmx dans la session de l'utilisateur hôte, de sorte qu'une évasion guest-to-host est le même problème de corruption mémoire que sur ESXi, avec le gain atterrissant sur l'hôte de bureau. Les surfaces accessibles sont identiques car le code est partagé : le périphérique SVGA II et son flux de commandes 3D, les contrôleurs USB émulés, les NIC virtuelles, et les canaux de contrôle backdoor GuestRPC et VMCI. Une faille de sûreté mémoire dans l'un d'eux donne l'exécution de code dans vmware-vmx, qui s'exécute avec les privilèges de celui qui a démarré la VM.

bash
# the escape surface, enumerated from inside the guest (same as ESXi)
lspci -nn | grep -iE 'svga|vmxnet|usb|vmci'
lsusb; dmesg | grep -iE 'vmwgfx|vmxnet|vmw_vmci'

Les mécanismes par périphérique sont documentés sous les pages guest-to-host d'ESXi, puisque les modèles de périphériques sont partagés :

Ce qui diffère d'ESXi#

bash
# the host is a desktop OS, so post-escape you are in the user's session:
#  - Windows: vmware-vmx.exe runs as the logged-in user (or elevated if the VM was)
#  - macOS/Linux: vmware-vmx runs as the user; Fusion uses a helper for some ops
# privilege after escape = the VM-launching user's, then local privesc on the host

Notes d'exploitation#

  • Les classes de bugs des modèles de périphériques sont partagées avec ESXi, donc les mécanismes et l'énumération sont identiques ; la différence est l'environnement d'atterrissage, une session utilisateur de bureau plutôt que l'hôte vmkernel.
  • Le privilège post-évasion égale celui de l'utilisateur exécutant la VM ; une élévation de privilèges locale supplémentaire sur l'OS de bureau est souvent nécessaire pour le contrôle complet de l'hôte, contrairement à ESXi où vmx est déjà fortement privilégié.
  • Les fonctionnalités d'intégration (dossiers partagés, glisser-déposer) sont plus couramment activées sur les produits de bureau que sur les serveurs, rendant la surface GuestRPC/HGFS particulièrement pertinente ici ; voir Abus des dossiers partagés et du glisser-déposer.

Références#