VMware ESX / vCenter Pentesting

Tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks

Enumerierung

nmap -sV --script "http-vmware-path-vuln or vmware-version" -p <PORT> <IP>
msf> use auxiliary/scanner/vmware/esx_fingerprint
msf> use auxiliary/scanner/http/ms15_034_http_sys_memory_dump

Bruteforce

msf> auxiliary/scanner/vmware/vmware_http_login

If you find valid credentials, you can use more metasploit scanner modules to obtain information.

ESXi Post-Exploitation & Ransomware Operations

Attack Workflow inside Virtual Estates

  • Develop: maintain a lightweight management agent (e.g., MrAgent), encryptor (e.g., Mario), and leak infrastructure.
  • Infiltrate: compromise vSphere management, enumerate hosts, steal data, and stage payloads.
  • Deploy: push agents to each ESXi host, let them poll C2, and pull the encryptor when instructed.
  • Extort: leak proof-of-compromise data and run ransom chats once encryption is confirmed.

Hypervisor Takeover Primitives

Once command execution on an ESXi console/SSH session is obtained, attackers typically run the following management commands to fingerprint and isolate the host before ransomware deployment:

uname -a                                   # hostname / build metadata for tracking
esxcli --formatter=csv network nic list    # adapter + MAC inventory
esxcli --formatter=csv network ip interface ipv4 get
esxcli network firewall set --enabled false
/etc/init.d/vpxa stop                      # cut vCenter off from the host
passwd root                                # rotate credentials under attacker control

Der gleiche Agent hält in der Regel eine persistente Schleife aufrecht, die eine fest codierte C2-URI abfragt. Jeder nicht erreichbare Status löst Wiederholungsversuche aus, das beacon bleibt also aktiv, bis Operatoren Anweisungen senden.

MrAgent-Style Befehlskanal

Leichte Management-Agenten stellen ein knappes Instruktionsset bereit, das aus der C2-Warteschlange geparst wird. Dieses Set reicht aus, um Dutzende kompromittierte Hypervisor ohne interaktive Shells zu betreiben:

InstructionEffect
ConfigÜberschreibt die lokale JSON-Konfiguration, die Zielverzeichnisse, Ausführungsverzögerungen oder Throttling definiert, und ermöglicht hot re-tasking ohne erneute Bereitstellung der Binärdateien.
InfoGibt Hypervisor-Build-Informationen, IPs und Adapter-Metadaten zurück, die mit den uname/esxcli-Probes gesammelt wurden.
ExecLeitet die Ransomware-Phase ein: ändert root-Zugangsdaten, stoppt vpxa, plant optional einen Reboot-Delay und lädt anschließend den encryptor herunter und führt ihn aus.
RunImplementiert eine Remote-Shell, indem beliebige vom C2 bereitgestellte Befehle in ./shmv geschrieben, chmod +x gesetzt und ausgeführt werden.
RemoveFührt rm -rf <path> zur Tool-Bereinigung oder für zerstörerisches Wiping aus.
Abort / Abort_fStoppt wartende Verschlüsselungen oder beendet laufende Worker-Threads, falls der Operator Post-Reboot-Aktionen pausieren möchte.
QuitBeendet den Agenten und rm -f dessen Binary für schnelle Selbstentfernung.
WelcomeMissbraucht esxcli system welcomemesg set -m="text" um Lösegeldhinweise direkt im Konsolenbanner anzuzeigen.

Intern halten diese Agenten intern zwei mutex-geschützte JSON-Blobs (Runtime-Konfiguration + Status/Telemetry), damit konkurrierende Threads (z. B. beaconing + encryption workers) den gemeinsamen Zustand nicht korruptieren. Samples sind häufig mit Junk-Code gepolstert, um flache statische Analyse zu verlangsamen, aber die Kernroutinen bleiben intakt.

Virtualisierungs- und Backup-bewusstes Targeting

Mario-like encryptors durchlaufen nur vom Operator bereitgestellte Verzeichniswurzeln und verändern Virtualisierungsartefakte, die für die Business Continuity relevant sind:

ExtensionTarget
vmdk, vmem, vmsd, vmsn, vswpVM disks, memory snapshots und swap backing files.
ova, ovfPortable VM appliance bundles/metadata.
vibESXi installation bundles that can block remediation/patching.
vbk, vbmVeeam VM backups + metadata to sabotage on-box restores.

Betriebliche Eigenheiten:

  • Jedes besuchte Verzeichnis erhält vor der Verschlüsselung die Datei How To Restore Your Files.txt, damit Lösegeldkanäle selbst auf isolierten Hosts beworben werden.
  • Bereits verarbeitete Dateien werden übersprungen, wenn ihre Namen .emario, .marion, .lmario, .nmario, .mmario oder .wmario enthalten, um Doppelverschlüsselung zu verhindern, die den Decryptor der Angreifer zerstören würde.
  • Verschlüsselte Payloads werden mit einem *.mario-artigen Suffix (häufig .emario) umbenannt, damit Operatoren die Abdeckung remote in Konsolen- oder Datastore-Listings prüfen können.

Mehrstufige Verschlüsselungs-Upgrades

Recent Mario builds replace the original linear, single-key routine with a sparse, multi-key design optimised for multi-hundred-gigabyte VMDKs:

  • Key schedule: Generiert einen 32-Byte-Primary-Key (gespeichert rund um var_1150) und einen unabhängigen 8-Byte-Secondary-Key (var_20). Die Daten werden zuerst mit dem Primary-Kontext transformiert und dann vor dem Schreiben auf die Platte mit dem Secondary-Key erneut gemischt.
  • Per-file headers: Metadatapuffer (z. B. var_40) verfolgen Chunk-Maps und Flags, sodass der private Decryptor der Angreifer das sparse Layout rekonstruieren kann.
  • Dynamic chunking: Anstelle einer konstanten 0xA00000-Schleife werden Chunk-Größe und Offsets basierend auf der Dateigröße neu berechnet, mit Schwellenwerten bis zu etwa 8 GB, um moderne VM-Images abzudecken.
  • Sparse coverage: Es werden nur strategisch ausgewählte Regionen bearbeitet, was die Laufzeit drastisch reduziert und trotzdem VMFS-Metadaten, NTFS/EXT4-Strukturen im Guest oder Backup-Indizes beschädigt.
  • Instrumentation: Aktualisierte Builds protokollieren pro-Chunk Byte-Anzahlen und Totale (encrypted/skipped/failed) auf stdout und liefern Affiliates Telemetrie während Live-Intrusionen ohne zusätzliche Tools.

Siehe auch

Linux LPE via VMware Tools service discovery (CWE-426 / CVE-2025-41244):

Vmware Tools Service Discovery Untrusted Search Path Cve 2025 41244

Referenzen

Tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Lernen & üben Sie Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Unterstützen Sie HackTricks