Laboratorio Vulnerable de Active Directory (VULN-HE.LAB) con Packer
Este proxecto automatiza con Packer e PowerShell a creación dun Controlador de Dominio Windows Server 2019 intencionadamente vulnerable. O obxectivo é dispoñer dun contorno didáctico e realista para practicar técnicas de Red Team / Pentesting Active Directory, cubrindo todo o ciclo do ataque, incluíndo persistencia avanzada en Kerberos.
Idioma do Sistema: Español (es-ES)
Aviso Legal e de Seguridade
NON EXPOÑAS ESTA MÁQUINA A INTERNET.
Este sistema ten o firewall desactivado, antivirus desactivado, protocolos inseguros habilitados e contrasinais débiles. Úsaa unicamente nunha rede illada (Host-Only / NAT Network illada).
O autor do presente documento declina calquera responsabilidade asociada ao uso incorrecto e/ou malicioso que puidese realizarse coa información exposta no mesmo. Por tanto, non se fai responsable en ningún caso, nin pode ser considerado legalmente responsable en ningún caso, das consecuencias que poidan derivarse da información contida nel ou que estea enlazada dende ou hacia el, incluíndo os posibles erros e información incorrecta existentes, información difamatoria, así como das consecuencias que se poidan derivar sobre a súa aplicación en sistemas de información reais e/ou virtuais. Este documento foi xerado para uso didáctico e debe ser empregado en contornas privadas e virtuais controladas co permiso correspondente do administrador desas contornas.
Credenciais e Acceso
- Dominio:
VULN-HE.LAB(NetBIOS:VULN-HE) - DC IP:
192.168.56.100(Estática) - Credenciais de Dominio:
| Usuario | Contrasinal | Rol / Vulnerabilidade Clave | Acceso Viable | Utilidade |
|---|---|---|---|---|
| Administrador | abc123. |
Domain Admin (LLMNR Poisoning) | ✅ | Game Over - Control total |
| brais.t | iloveyou |
Backup Operator (SeBackupPrivilege → DA) | ✅ | Escalada crítica - Dump NTDS |
| maria.g | dragon |
Potato Attack (SeImpersonatePrivilege → SYSTEM) | ✅ | Escalada crítica - SYSTEM vía Potato |
| nopreauth.user | AsrepMePlease123 |
AS-REP Roasting (Sen pre-autenticación) | ⚠️ | Demostración - Hash non crackeable facilmente |
| svc_sql | SvcPassw0rdKerb! |
Kerberoasting (SPN MSSQL) + Silver Ticket | ⚠️ | Persistencia crítica - Silver Ticket (10 anos) |
| helpdesk.user | HelpDeskP@ss1 |
Abuso de ACLs sobre maria.g (vía rpcclient) |
✅ | Movemento lateral - GenericAll sobre maria.g |
| krbtgt | N/A | Conta de servizo KDC | N/A | Persistencia MÁXIMA - Golden Ticket (10 anos) |
Lenda:
- ✅ Acceso directo viable (password spraying ou LLMNR)
- ⚠️ Acceso indirecto (require compromiso previo para obter hash/contrasinal)
- N/A Non aplicable (conta de sistema, non de acceso directo)
Vulnerabilidades Implementadas
1. Fase 1-3: Recopilación, Análise e Explotación
Rede e Protocolos:
- LLMNR/NBT-NS Poisoning: Tráfico xerado automaticamente por unha tarefa programada do Administrador.
- SMBv1 & Signing Disabled: Permite ataques de NTLM Relay.
- Firewall & Defender: Desactivados.
Kerberos:
- AS-REP Roasting: Usuario
nopreauth.usersen pre-autenticación. - Kerberoasting: Usuario
svc_sqlcon SPN asociado e servizo SQL real instalado.
Password Spraying:
- Contrasinais débiles en
brais.temaria.g(presentes en rockyou.txt).
2. Fase 4: Post-Explotación e Escalada de Privilexios
Privilexios Windows:
- SeBackupPrivilege: Usuario
brais.tpode lerNTDS.dite SAM. - SeImpersonatePrivilege: Usuario
maria.gvulnerable a ataques tipo Potato.
ACLs Débiles:
- GenericAll ACL: Grupo
HelpDesk(usuariohelpdesk.user) ten control total sobremaria.g. - Explotación viable: Mediante
rpcclientdesde Linux (cambio remoto de contrasinal sen necesidade de shell).
3. Fase 5: Persistencia Avanzada (Kerberos)
Silver Ticket (Persistencia por Servizo):
- Conta obxectivo:
svc_sql(Hash NTLM:ad2896ecfb9b443720bab09bb020f852) - SPN:
MSSQLSvc/VULN-DC-01.vuln-he.lab:1433 - Capacidades:
- Forxado de TGS para MSSQL válido 10 anos
- Acceso persistente como Administrador ao servizo SQL
- Execución remota vía
xp_cmdshell - Escalada a SYSTEM mediante SeImpersonatePrivilege
- Invalidación: Cambiar contrasinal de
svc_sql
Golden Ticket (Persistencia Total de Dominio):
- Conta crítica:
krbtgt(Hash NTLM:f8d660354307503cae5a4a735d110da0) - Capacidades:
- Forxado de TGT válido para TODO o dominio durante 10 anos
- Acceso ilimitado a calquera recurso/servizo
- Non require comunicación co KDC
- Practicamente indetectable
- Invalidación: Resetar contrasinal de
krbtgtDÚAS veces consecutivas
Despregamento
1. Requisitos Previos (Descargas)
Debido ás restricións de descarga automática, debes descargar manualmente o instalador de SQL Server e colocalo no directorio raíz do proxecto antes de executar Packer.
- Windows Server 2019 ISO: Microsoft Evaluation Center
- SQL Server 2019 Express (Inglés - Offline Installer):
Debes obter o ficheiroSQLEXPR_x64_ENU.exe(aprox. 250MB).
Para iso:- Usa un ordenador con Windows
- Descarga o instalador web oficial (pequeno): SQL2019-SSEI-Expr.exe.
- Execútao
- Na xanela que se abre:
- Selecciona "Download Media" (Descargar medios).
- Selecciona paquete Express Core.
- Selecciona idioma English.
- Escolle o cartafol onde gardalo.
- Cando remate, terás o ficheiro
SQLEXPR_x64_ENU.exe. Móveo ao cartafol do teu proxecto Packer (vía USB, cartafol compartido,scp, etc.).
2. Construción da Imaxe
- Edita
windows2019.pkr.hclcoa ruta e checksum da túa ISO de Windows Server 2019. - Asegúrate de que
SQLEXPR_x64_ENU.exeestá no mesmo cartafol. - Executa:
3. Importación e Configuración Final
-
Importa a VM resultante (
VULN-DC-01.ovf) en VirtualBox. -
IMPORTANTE: Antes de arrincar a máquina, comproba a configuración de rede en VirtualBox:
- Adaptador 1:
- Conectado: "Host-Only Adapter" (Adaptador só anfitrión)
- Nome: vboxnet0
- Adaptador 1:
-
Arrinca a máquina. A IP estará configurada estaticamente en
192.168.56.100
Rutas de Ataque Principais
Acceso Inicial (Fases 1-3)
- Ruta Rápida (Poisoning): Responder → Crack hash Admin (
abc123.) → Domain Admin - Ruta Password Spraying: Rockyou.txt →
brais.toumaria.g→ Shell WinRM
Escalada de Privilexios (Fase 4)
- Ruta SeBackup (brais.t): SeBackupPrivilege → Dump SAM/NTDS → Pass-the-Hash → Domain Admin
- Ruta Potato (maria.g): SeImpersonatePrivilege → SigmaPotato → SYSTEM
- Ruta ACLs (helpdesk.user): rpcclient → Cambio contrasinal maria.g → Potato → SYSTEM
Persistencia Avanzada (Fase 5)
- Silver Ticket (svc_sql): Hash NTLM → Forxar TGS → Acceso persistente MSSQL (10 anos)
- Golden Ticket (krbtgt): Hash NTLM → Forxar TGT → Control total dominio (10 anos)