VMware ESX / vCenter Pentesting
Tip
Ucz się i ćwicz Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.
Enumeracja
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
Jeśli znajdziesz prawidłowe dane logowania, możesz użyć większej liczby metasploit scanner modules, aby uzyskać informacje.
ESXi Post-Exploitation & Ransomware Operations
Attack Workflow inside Virtual Estates
- Develop: utrzymuj lekki agent zarządzający (np. MrAgent), encryptor (np. Mario) oraz infrastrukturę leak.
- Infiltrate: kompromituj vSphere management, enumeruj hosty, wykradaj dane i umieszczaj payloads.
- Deploy: wdrażaj agentów na każdym hoście ESXi, pozwól im odpytywać C2 i pobierz encryptor, gdy zostanie wydana komenda.
- Extort: leak dane potwierdzające kompromitację i prowadź ransom chats po potwierdzeniu szyfrowania.
Hypervisor Takeover Primitives
Po uzyskaniu możliwości wykonania poleceń w konsoli ESXi/SSH session, atakujący zwykle wykonują następujące polecenia zarządzania, aby zidentyfikować i odizolować host przed 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
Ten sam agent zwykle utrzymuje trwałą pętlę, która cyklicznie odpytuje hard-coded C2 URI. Każdy nieosiągalny status wywołuje ponowne próby, co oznacza, że beacon pozostaje aktywny, dopóki operatorzy nie prześlą instrukcji.
Kanał instrukcji w stylu MrAgent
Lekkie agenty zarządzające udostępniają zwięzły zestaw instrukcji parsowany z kolejki C2. Ten zestaw wystarcza do obsługi dziesiątek skompromitowanych hypervisorów bez interaktywnych powłok:
| Instruction | Effect |
|---|---|
Config | Nadpisuje lokalny JSON config, który definiuje katalogi docelowe, opóźnienia wykonywania lub throttling, umożliwiając szybkie zmiany zadań bez redeployowania binaries. |
Info | Zwraca informacje o buildzie hypervisora, adresy IP i metadane adapterów zebrane przy użyciu sond uname/esxcli. |
Exec | Rozpoczyna fazę ransomware: zmiana poświadczeń root, zatrzymanie vpxa, opcjonalne zaplanowanie opóźnienia restartu, a następnie pobranie i uruchomienie encryptora. |
Run | Realizuje zdalną powłokę przez zapis dowolnych poleceń dostarczonych przez C2 do ./shmv, chmod +x i ich wykonanie. |
Remove | Wydaje rm -rf <path> w celu czyszczenia narzędzi lub destrukcyjnego wymazywania. |
Abort / Abort_f | Zatrzymuje zaplanowane szyfrowania lub zabija uruchomione wątki robocze, gdy operator chce wstrzymać akcje po restarcie. |
Quit | Zamyka agenta i wykonuje rm -f jego binarki dla szybkiego samousunięcia. |
Welcome | Nadużywa esxcli system welcomemesg set -m="text" by wyświetlić powiadomienia o okupie bezpośrednio w banerze konsoli. |
Wewnątrz agenty przechowują dwie chronione mutexem struktury JSON (runtime config + status/telemetry), tak aby współbieżne wątki (np. beaconing + encryption workers) nie psuły wspólnego stanu. Próbki binarne są często wypełniane śmieciowym kodem, by spowolnić płytką analizę statyczną, lecz główne rutyny pozostają nienaruszone.
Targetowanie świadome wirtualizacji i backupów
Szyfratory w stylu Mario przeglądają tylko katalogi wskazane przez operatora i modyfikują artefakty wirtualizacyjne istotne dla ciągłości biznesowej:
| Extension | Target |
|---|---|
vmdk, vmem, vmsd, vmsn, vswp | VM disks, memory snapshots and swap backing files. |
ova, ovf | Portable VM appliance bundles/metadata. |
vib | ESXi installation bundles that can block remediation/patching. |
vbk, vbm | Veeam VM backups + metadata to sabotage on-box restores. |
Dziwactwa operacyjne:
- Każdy odwiedzony katalog otrzymuje plik
How To Restore Your Files.txtprzed szyfrowaniem, aby upewnić się, że kanały żądania okupu są reklamowane nawet na hostach odłączonych. - Pliki już przetworzone są pomijane, jeśli ich nazwy zawierają
.emario,.marion,.lmario,.nmario,.mmariolub.wmario, zapobiegając podwójnemu szyfrowaniu, które mogłoby uszkodzić decryptor atakujących. - Zaszyfrowane pliki są przemianowywane z sufiksem w stylu
*.mario(zwykle.emario), dzięki czemu operatorzy mogą zdalnie weryfikować pokrycie w konsolach lub listingach datastore.
Warstwowe ulepszenia szyfrowania
Najnowsze buildy Mario zastępują oryginalną liniową, jednokluczową rutynę rzadką, wielokluczową konstrukcją zoptymalizowaną pod kątem VMDK o rozmiarach setek gigabajtów:
- Harmonogram kluczy: Generuje 32-bajtowy klucz główny (przechowywany wokół
var_1150) i niezależny 8-bajtowy klucz wtórny (var_20). Dane są najpierw przetwarzane przy użyciu kontekstu głównego, a następnie ponownie miksowane z kluczem wtórnym przed zapisem na dysk. - Nagłówki per-pliku: Bufory metadanych (np.
var_40) śledzą mapy chunków i flagi, aby prywatny decryptor atakujących mógł odtworzyć rzadką strukturę. - Dynamiczne dzielenie na chunky: Zamiast stałej pętli
0xA00000, rozmiar chunków i offsety są przeliczane na podstawie rozmiaru pliku, z progami rozszerzonymi do ~8 GB, aby dopasować się do nowoczesnych obrazów VM. - Rzadkie pokrycie: Modyfikowane są wyłącznie strategicznie wybrane regiony, co drastycznie skraca czas działania, jednocześnie uszkadzając metadane VMFS, struktury NTFS/EXT4 wewnątrz gościa lub indeksy backupu.
- Instrumentacja: Ulepszone buildy logują liczbę bajtów na chunk i sumy (encrypted/skipped/failed) do stdout, dostarczając afiliantom telemetrii podczas aktywnych włamań bez dodatkowych narzędzi.
Zobacz też
Vmware Tools Service Discovery Untrusted Search Path Cve 2025 41244
Referencje
Tip
Ucz się i ćwicz Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.


