
¿Qué es lo que hace? Pues básicamente se conecta a uno o varios servidores vCenter; extrae infraestructura: datacenters, clusters, ESXi, VMs, datastores, redes, carpetas; extrae permisos y roles: usuarios, grupos, roles, privilegios, asignaciones; y genera un JSON compatible con BloodHound (con nodos y edges personalizados). El resultado: puedes navegar tu entorno VMware en BloodHound como si fuera un bosque de AD, encontrando caminos de ataque y privilegios ocultos.
Instalación rápida
Necesitas Python ≥ 3.8 y algunas librerías:
git clone https://github.com/MorDavid/vCenterHound cd vCenterHound pip3 install pyvmomi requestscd vCenterHound
Uso
1. Cargar el modelo visual en BloodHound
Antes de exportar, hay que decirle a BloodHound cómo se verán los nuevos nodos/edges:
python update_custom_nodes_to_bloodhound.py \ -s https://bloodhound.tuempresa.local \ -u admin@domain.com -p 'TuPassword123' \ -m model.json -s https://bloodhound.tuempresa.local \
Esto añade iconos y definiciones para los objetos VMware.
2. Extraer datos de vCenter
Conexión a un vCenter:
python vCenterHound.py -s vc.empresa.local -u administrator@vsphere.local -p 'TuPassword123'
Múltiples vCenters:
python vCenterHound.py -s vc1.local,vc2.local -u admin -p 'pass123'
Exportar con nombre propio:
python vCenterHound.py -s vc.local -u admin -p 'pass123' -o vmware_bloodhound.json
Si quieres más ruido en consola:
python vCenterHound.py -s vc.local -u admin -p 'pass123' --verbose
¿Qué nodos crea?
Algunos ejemplos de nodos que verás en BloodHound:
- vCenter_Datacenter
- vCenter_Cluster
- vCenter_ESXiHost (con modelo, RAM, CPU, estado…)
- vCenter_VM (con IPs, MAC, VMware Tools, snapshot info…)
- vCenter_User / vCenter_Group
- vCenter_Role / vCenter_Privilege
Y las relaciones (edges) más jugosas:
- vCenter_Hosts: un ESXi → sus VMs
- vCenter_UsesDatastore: VM → Datastore
- vCenter_UsesNetwork: VM → Network
- vCenter_HasPermission: User/Group → Objeto (con detalles del rol)
- vCenter_MemberOf: pertenencia entre grupos
Conclusiones
Imagina que tienes un usuario con un rol aparentemente inocente sobre un datacenter. En BloodHound podrás trazar: Usuario → Rol → Privilegios → Datacenter → ESXi → VM crítica, y descubrir que realmente puede encadenar acciones para llegar a un dominio crítico.
En definitiva, si trabajas en red team, pentesting interno o simplemente administras entornos VMware y quieres entender de verdad qué usuarios tienen poder sobre qué recursos… vCenterHound + BloodHound es tu nueva combinación favorita.
Tip final: no olvides lanzar SharpHound en paralelo para juntar datos de AD y luego ver cómo se cruzan con lo que vCenterHound exporta. Los caminos de ataque multi-silo son brutales.
Proyecto: https://github.com/MorDavid/vCenterHound
Comentarios
Publicar un comentario