VMware ESX / vCenter Pentesting
Tip
AWS Hacking’i öğrenin ve pratik yapın:
HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın:HackTricks Training GCP Red Team Expert (GRTE)
Azure Hacking’i öğrenin ve pratik yapın:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- 💬 Discord grubuna veya telegram grubuna katılın ya da Twitter’da bizi takip edin 🐦 @hacktricks_live.**
- Hacking ipuçlarını paylaşmak için HackTricks ve HackTricks Cloud github reposuna PR gönderin.
Keşif
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
Geçerli credentials bulursanız, bilgi toplamak için daha fazla metasploit scanner modules kullanabilirsiniz.
ESXi Post-Exploitation & Ransomware Operations
Sanal Ortamlardaki Saldırı İş Akışı
- Geliştirme: hafif bir management agent (ör. MrAgent), encryptor (ör. Mario) ve leak altyapısını sürdürün.
- Sızma: vSphere management’i compromise edin, hosts’ları enumerate edin, verileri çalın ve payload’ları stage edin.
- Dağıtım: her ESXi host’a agents push edin, onların C2’yi poll etmesine izin verin ve talimat verildiğinde encryptor’ı pull edin.
- Şantaj: leak proof-of-compromise verilerini yayınlayın ve şifreleme onaylandıktan sonra ransom chats yürütün.
Hypervisor Devralma Temelleri
ESXi console/SSH oturumunda komut yürütme elde edildikten sonra, saldırganlar tipik olarak aşağıdaki yönetim komutlarını çalıştırarak host’u fingerprint edip izole ederler, ransomware dağıtımından önce:
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
Aynı ajan genellikle sabitlenmiş bir C2 URI’yi sorgulayan kalıcı bir döngü tutar. Ulaşılamayan herhangi bir durum yeniden denemeleri tetikler; bu da beacon’ın operatörler talimat göndermeye kadar canlı kalması anlamına gelir.
MrAgent-Style Instruction Channel
Hafif yönetim ajanları, C2 kuyruğundan ayrıştırılan kısa bir komut seti sunar. Bu set, etkileşimli shell’ler olmadan onlarca ele geçirilmiş hipervizörü işletmek için yeterlidir:
| Instruction | Effect |
|---|---|
Config | Hedef dizinleri, yürütme gecikmelerini veya kısıtlamaları tanımlayan yerel JSON yapılandırmasını üzerine yazar; ikili dosyaları yeniden dağıtmadan sıcak görev değişikliği yapmayı mümkün kılar. |
Info | Hipervizör derleme bilgilerini, IP’leri ve uname/esxcli proplarıyla toplanan adaptör meta verilerini döndürür. |
Exec | Fidye yazılımı aşamasını başlatır: root kimlik bilgilerini değiştirir, vpxa’yı durdurur, isteğe bağlı olarak yeniden başlatma gecikmesi planlar ve ardından encryptor’ı çekip çalıştırır. |
Run | Rastgele C2 tarafından sağlanan komutları ./shmv’ye yazarak, chmod +x yapıp çalıştırarak uzaktan shell uygular. |
Remove | Araç temizliği veya yıkıcı silme için rm -rf <path> komutu uygular. |
Abort / Abort_f | Sıralanmış şifrelemeleri durdurur veya operatör yeniden başlatma sonrası işlemleri duraklatmak isterse çalışan işçi thread’leri öldürür. |
Quit | Ajanı sonlandırır ve hızlı bir kendi-kendini silme için ikili dosyasını rm -f ile kaldırır. |
Welcome | Konsol başlığında fidye bildirimlerini göstermek için esxcli system welcomemesg set -m="text" komutunu kötüye kullanır. |
İçeride bu ajanlar iki mutex-korumalı JSON blob’u (runtime config + status/telemetry) tutar; böylece eşzamanlı thread’ler (örn. beaconing + encryption workers) paylaşılan durumu bozmaz. Örnekler genellikle yüzeysel statik analizi yavaşlatmak için gereksiz kodla doldurulur, ama temel rutinler değişmez.
Sanallaştırma ve Yedekleme Farkındalıklı Hedefleme
Mario-like encryptors yalnızca operatörün sağladığı dizin köklerini gezer ve iş sürekliliği için önemli olan sanallaştırma artefaktlarına dokunur:
| Extension | Target |
|---|---|
vmdk, vmem, vmsd, vmsn, vswp | VM diskleri, bellek anlık görüntüleri ve swap destek dosyaları. |
ova, ovf | Taşınabilir VM appliance paketleri/metadata. |
vib | Onarma/yama uygulanmasını engelleyebilecek ESXi kurulum paketleri. |
vbk, vbm | Yerel geri yüklemeleri sabote etmek için Veeam VM yedekleri + metadata. |
Operasyonel tuhaflıklar:
- Her ziyaret edilen dizine şifrelemeden önce
How To Restore Your Files.txteklenir, böylece bağlantısı kesik hostlarda bile fidye kanallarının ilan edildiğinden emin olunur. - Zaten işlenmiş dosyalar, adlarında
.emario,.marion,.lmario,.nmario,.mmarioveya.wmariovarsa atlanır; bu, saldırganların decryptor’unu bozacak çifte şifrelemeyi engeller. - Şifrelenmiş paketler
*.mariotarzı bir son ekle yeniden adlandırılır (genellikle.emario), böylece operatörler konsollarda veya datastore listelerinde kapsama alanını uzaktan doğrulayabilir.
Katmanlı Şifreleme Yükseltmeleri
Son Mario sürümleri orijinal lineer, single-key rutinini yüzlerce gigabaytlık VMDK’lar için optimize edilmiş seyrek, çoklu anahtar tasarımıyla değiştirir:
- Key schedule: 32 baytlık bir birincil anahtar (yaklaşık
var_1150’te saklanır) ve bağımsız 8 baytlık ikincil bir anahtar (var_20) üretir. Veri önce birincil bağlamla dönüştürülür, ardından disk yazmadan önce ikincil anahtarla yeniden karıştırılır. - Per-file headers: Metadata tamponları (örn.
var_40) parça haritalarını ve bayrakları takip eder, böylece saldırganların özel decryptor’u seyrek düzeni yeniden oluşturabilir. - Dynamic chunking: Sabit bir
0xA00000döngüsü yerine parça boyutu ve ofsetleri dosya boyutuna göre yeniden hesaplanır; eşikler modern VM görüntüleriyle uyumlu olarak ~8 GB’a kadar uzatılır. - Sparse coverage: Sadece stratejik olarak seçilmiş bölgeler değiştirilir, bu da çalışma süresini çarpıcı şekilde azaltırken yine de VMFS metadata’sını, konuk içindeki NTFS/EXT4 yapılarını veya yedek indekslerini bozabilir.
- Instrumentation: Yükseltilmiş sürümler parça başına byte sayıları ve toplamları (şifrelenmiş/atlanan/başarısız) stdout’a kaydeder, böylece ek araçlara gerek kalmadan ortaklara canlı saldırılar sırasında telemetri sağlar.
See also
Linux LPE via VMware Tools service discovery (CWE-426 / CVE-2025-41244):
Vmware Tools Service Discovery Untrusted Search Path Cve 2025 41244
References
Tip
AWS Hacking’i öğrenin ve pratik yapın:
HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın:HackTricks Training GCP Red Team Expert (GRTE)
Azure Hacking’i öğrenin ve pratik yapın:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- 💬 Discord grubuna veya telegram grubuna katılın ya da Twitter’da bizi takip edin 🐦 @hacktricks_live.**
- Hacking ipuçlarını paylaşmak için HackTricks ve HackTricks Cloud github reposuna PR gönderin.


