VMware ESX / vCenter Pentesting

Tip

Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporta HackTricks

Enumerazione

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: mantenere un agente di gestione leggero (es., MrAgent), un encryptor (es., Mario) e l’infrastruttura di leak.
  • Infiltrate: compromettere vSphere management, enumerare gli host, esfiltrare dati e stageare i payload.
  • Deploy: inviare agent a ciascun ESXi host, farli interrogare il C2 e prelevare l’encryptor quando istruito.
  • Extort: leak proof-of-compromise data e avviare ransom chats una volta confermata l’encryption.

Hypervisor Takeover Primitives

Una volta ottenuta l’esecuzione di comandi su una console ESXi o una sessione SSH, gli attaccanti tipicamente eseguono i seguenti comandi di management per identificare (fingerprint) e isolare l’host prima del deployment del ransomware:

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

Lo stesso agent di solito mantiene un loop persistente che interroga un URI C2 hard-coded. Qualsiasi stato non raggiungibile provoca ritentativi, il che significa che il beacon resta attivo finché gli operatori non inviano istruzioni.

Canale di istruzioni in stile MrAgent

Gli agent di management leggeri espongono un set conciso di istruzioni parsato dalla coda C2. Questo set è sufficiente per gestire dozzine di hypervisor compromessi senza shell interattive:

IstruzioneEffetto
ConfigSovrascrive la config JSON locale che definisce directory target, ritardi di esecuzione o throttling, permettendo hot re-tasking senza redeployare i binari.
InfoRestituisce info di build dell’hypervisor, IP e metadata degli adapter raccolti con le probe uname/esxcli.
ExecAvvia la fase di ransomware: cambia le credenziali root, stoppa vpxa, opzionalmente pianifica un delay di reboot e poi pull+esegue l’encryptor.
RunImplementa una shell remota scrivendo comandi arbitrari forniti dal C2 in ./shmv, chmod +x ed eseguendolo.
RemoveEsegue rm -rf <path> per pulizia degli strumenti o wiping distruttivo.
Abort / Abort_fFerma le encryption in coda o uccide i worker thread in esecuzione se l’operatore vuole mettere in pausa azioni post-reboot.
QuitTermina l’agent e rm -f il suo binario per una rapida self-removal.
WelcomeAbusa di esxcli system welcomemesg set -m="text" per mostrare avvisi di riscatto direttamente nel banner della console.

Internamente questi agent mantengono due blob JSON protetti da mutex (runtime config + status/telemetry) così che thread concorrenti (es. beaconing + encryption workers) non corrompano lo stato condiviso. I sample sono comunemente riempiti con codice junk per rallentare l’analisi statica superficiale, ma le routine core restano intatte.

Targeting consapevole di virtualizzazione e backup

Gli encryptor in stile Mario attraversano solo root di directory fornite dall’operatore e toccano artefatti di virtualizzazione che contano per la business continuity:

ExtensionTarget
vmdk, vmem, vmsd, vmsn, vswpDischi VM, snapshot di memoria e file di backing swap.
ova, ovfBundle appliance VM portabili / metadata.
vibBundle di installazione ESXi che possono bloccare remediation/patching.
vbk, vbmBackup Veeam delle VM + metadata per sabotare i restore on-box.

Quirks operativi:

  • Ogni directory visitata riceve How To Restore Your Files.txt prima della cifratura per assicurare che i canali di riscatto siano pubblicizzati anche su host disconnessi.
  • I file già processati vengono saltati quando i loro nomi contengono .emario, .marion, .lmario, .nmario, .mmario o .wmario, prevenendo la doppia cifratura che romperebbe il decryptor degli attacker.
  • I payload cifrati vengono rinominati con un suffisso in stile *.mario (comunemente .emario) così gli operatori possono verificare la copertura da remoto nelle console o negli elenchi del datastore.

Aggiornamenti della cifratura stratificata

Le build recenti di Mario sostituiscono la routine lineare a chiave singola originale con un design sparso a più chiavi ottimizzato per VMDK da centinaia di gigabyte:

  • Key schedule: Genera una chiave primaria di 32 byte (memorizzata intorno a var_1150) e una chiave secondaria indipendente di 8 byte (var_20). I dati vengono prima trasformati con il contesto primario e poi rimescolati con la chiave secondaria prima della scrittura su disco.
  • Per-file headers: Buffer di metadata (es. var_40) tracciano mappe di chunk e flag così che il decryptor privato degli attacker possa ricostruire il layout sparso.
  • Dynamic chunking: Invece di un loop costante 0xA00000, la dimensione dei chunk e gli offset vengono ricalcolati in base alla dimensione del file, con soglie estese fino a ~8 GB per adattarsi alle moderne immagini VM.
  • Sparse coverage: Vengono toccate solo regioni strategicamente scelte, riducendo drasticamente il runtime pur corrompendo metadata VMFS, strutture NTFS/EXT4 all’interno della guest o indici di backup.
  • Instrumentation: Le build aggiornate loggano per-chunk conteggi di byte e totali (encrypted/skipped/failed) su stdout, fornendo telemetria agli affiliati durante intrusioni live senza tooling aggiuntivo.

Vedi anche

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

Vmware Tools Service Discovery Untrusted Search Path Cve 2025 41244

Riferimenti

Tip

Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporta HackTricks