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

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:

InstructionEffect
ConfigNadpisuje lokalny JSON config, który definiuje katalogi docelowe, opóźnienia wykonywania lub throttling, umożliwiając szybkie zmiany zadań bez redeployowania binaries.
InfoZwraca informacje o buildzie hypervisora, adresy IP i metadane adapterów zebrane przy użyciu sond uname/esxcli.
ExecRozpoczyna fazę ransomware: zmiana poświadczeń root, zatrzymanie vpxa, opcjonalne zaplanowanie opóźnienia restartu, a następnie pobranie i uruchomienie encryptora.
RunRealizuje zdalną powłokę przez zapis dowolnych poleceń dostarczonych przez C2 do ./shmv, chmod +x i ich wykonanie.
RemoveWydaje rm -rf <path> w celu czyszczenia narzędzi lub destrukcyjnego wymazywania.
Abort / Abort_fZatrzymuje zaplanowane szyfrowania lub zabija uruchomione wątki robocze, gdy operator chce wstrzymać akcje po restarcie.
QuitZamyka agenta i wykonuje rm -f jego binarki dla szybkiego samousunięcia.
WelcomeNaduż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:

ExtensionTarget
vmdk, vmem, vmsd, vmsn, vswpVM disks, memory snapshots and 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.

Dziwactwa operacyjne:

  • Każdy odwiedzony katalog otrzymuje plik How To Restore Your Files.txt przed 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, .mmario lub .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