Wireshark — Descifrado y Análisis de Sesiones RDP
Durante una investigación de Respuesta a Incidentes (IR), se capturó tráfico sospechoso RDP (rdp.pcapng) entre dos hosts.
En la máquina del usuario Bob, se halló una clave privada (server.key) que permite descifrar el tráfico TLS.
El objetivo de este laboratorio es analizar la sesión RDP una vez desencriptada utilizando Wireshark 🦈.
🪟 Tarea #1 — Abrir el archivo en Wireshark
-
Descomprime el archivo
RDP-analysis.zip. -
Abre el archivo
rdp.pcapngen Wireshark:wireshark rdp.pcapng &
Asegúrate de cerrar cualquier otra captura en ejecución para evitar confusión con los filtros.
🔍 Tarea #2 — Analizar el tráfico
Primero, filtra el tráfico relacionado con RDP:
rdp

No se mostrará casi nada, ya que RDP utiliza TLS para cifrar su comunicación.
Para confirmar su existencia, filtra por el puerto por defecto de RDP:
tcp.port == 3389

Existe comunicación entre los hosts 10.129.43.27 (cliente) y 10.129.43.29 (servidor).
Esto indica que sí hay una sesión RDP, aunque cifrada.
🔑 Tarea #3 — Importar la clave RSA para descifrar el tráfico
Configurar Wireshark para utilizar la clave privada del servidor (server.key) y así descifrar el tráfico TLS.
🪜 Pasos
-
Ve a Edit → Preferences → Protocols → TLS.
-
En la sección RSA Keys List, haz clic en Edit → +.

-
Agrega los valores siguientes:
| Campo | Valor |
|---|---|
| IP address | 10.129.43.29 |
| Port | 3389 |
| Protocol | tpkt (o vacío) |
| Key File | Ruta a server.key |
![]() |
-
Guarda los cambios ✅
-
Refresca la captura con
Ctrl + R.
Si Wireshark no descifra el tráfico de inmediato, revisa que el archivo server.key tenga permisos de lectura y sea una clave RSA válida.
👀 Tarea #4 — Visualizar el tráfico desencriptado
Aplica de nuevo el filtro:
rdp
-
RDP Negotiation Request -
RDP Licensing -
RDP Data PDU -
Eventos de teclado y ratón
🎉 ¡El tráfico ha sido desencriptado con éxito!
🧩 Análisis Detallado
Wireshark ahora puede seguir las conversaciones y mostrar el contenido transmitido.
-
Para seguir una sesión:
tcp.stream eq 0 -
Para identificar el usuario autenticado:
rdp.sec.user
rdp.security.user = "bob"
❓ Preguntas del Laboratorio
🖥️ ¿Qué host inició la sesión RDP?
SYN
10.129.43.27 → 10.129.43.29:3389
✅ Cliente: 10.129.43.27
✅ Servidor: 10.129.43.29
