Puntos clave
- Conoce las fuentes de tus registros: Windows registra la actividad RDP en el registro de Seguridad, TerminalServices-LocalSessionManager/Operational y TerminalServices-RemoteConnectionManager/Operational.
- Utiliza los ID de evento adecuados: 1149 (conexión de red), 4624/4625 (inicio de sesión correcto/fallido), 21-25, 39 y 40 (ciclo de vida de la sesión), y 4778/4779 (reconexión/desconexión).
- Automatiza las exportaciones con Get-WinEvent: utiliza Get-WinEvent de PowerShell con -FilterHashtable para extraer los eventos RDP de los registros de Seguridad, LSM y RCM y exportarlos a CSV.
- Crea cronologías de sesión correlacionando eventos: relaciona el evento 1149 con el 4624 (con un margen de ±1 minuto) para vincular una conexión con un usuario autenticado y una dirección IP de origen.
- Complementa los registros del servidor con artefactos del cliente: la clave del Registro HKCUSoftwareMicrosoftTerminal Server ClientDefault guarda los destinos RDP a los que se ha conectado recientemente cuando se utiliza mstsc.exe.
- Conserva y centraliza los registros: aumenta el tamaño del registro de Seguridad por encima del valor predeterminado, archiva los registros antes de que se sobrescriban y utiliza Windows Event Forwarding o un SIEM para centralizar los datos de RDP.
El Protocolo de escritorio remoto (RDP) deja rastros en los registros de Windows. El reto consiste en diferenciar las sesiones interactivas remotas de los inicios de sesión en consola y correlacionar los eventos para reconstruir una única secuencia de lo ocurrido. Este artículo incluye los ID de eventos, los filtros y un patrón de correlación sencillo, además de artefactos del cliente y consejos prácticos extraídos de análisis forenses sobre el terreno y guías de administración.
¿Qué registros de Windows recogen la actividad RDP?
Hay tres canales de eventos relevantes:
- el registro de Seguridad (eventos de autenticación 4624, 4625, 4634, 4647);
- el registro «TerminalServices-LocalSessionManager/Operational» (eventos del ciclo de vida de la sesión 21-25, 39 y 40); y
- el registro «TerminalServices-RemoteConnectionManager/Operational» (evento de conexión previo a la autenticación 1149).
Cada canal registra una fase distinta de una conexión RDP —conexión de red, autenticación y gestión de la sesión activa—, y para crear una cronología de auditoría completa se necesitan los tres.
Consultar el historial de conexiones de escritorio remoto y crear una cronología
Para consultar el historial de conexiones de escritorio remoto y crear una cronología, hay que identificar las fuentes de eventos, extraer el historial, correlacionar los eventos para agruparlos en sesiones, registrar los fallos, añadir artefactos, centralizar y conservar los datos y analizar los resultados.
📌 Requisitos previos:
- Privilegios de administrador local o equivalentes en los sistemas de destino
- Acceso remoto mediante PowerShell o acceso directo al Visor de eventos
- Un recurso compartido central o un SIEM donde almacenar las exportaciones y los registros de ejecución
- Reenvío de eventos de Windows opcional para evitar lagunas provocadas por la rotación de los registros
Paso 1: identificar las fuentes de eventos
📌 Caso de uso: debes identificar qué canales de eventos de Windows registran los eventos de autenticación y cuáles proporcionan contexto sobre las conexiones y sesiones RDP para su investigación.
- Pulsa Win + R, escribe «eventvwr.msc» y pulsa Intro.
- Accede a las siguientes ubicaciones:
- Registros de Windows > Seguridad; Registros de aplicaciones y servicios > Microsoft > Windows > TerminalServices-LocalSessionManager > Operativo; Registros de aplicaciones y servicios > Microsoft > Windows > TerminalServices-RemoteConnectionManager > Operativo
- Revisa los ID de eventos clave según el contexto:
- Autenticación (registro de Seguridad): 4624, 4625, 4634, 4647
- Conexión RDP (antes del inicio de sesión): 1149
- Actividad de las sesiones RDP (después del inicio de sesión): 21, 22, 23, 24, 25, 39, 40
- Reconexión/desconexión RDP (registro de Seguridad): 4778, 4779
Nota: Los ID de evento 39 y 40 permiten distinguir entre un usuario que se ha desconectado explícitamente (Inicio > Desconectar) y uno que simplemente ha cerrado la ventana de RDP. Los ID de evento 4778 y 4779 del registro de Seguridad registran el mismo ciclo de reconexión y desconexión e incluyen la dirección IP del cliente, por lo que resultan útiles para determinar el origen.
Tabla resumen de los ID de eventos
| ID de evento | Registro | Descripción | Escenario |
| 1149 | RCM/Operativo | Conexión de red establecida (antes de la autenticación) | Conexión |
| 4624 | Seguridad | Inicio de sesión correcto (filtro LogonType 10, 7 y 3) | Autenticación |
| 4625 | Seguridad | Intento de inicio de sesión fallido | Autenticación |
| 4778 | Seguridad | Se reconectó una sesión a una estación de ventana | Reconexión |
| 4779 | Seguridad | Se desconectó una sesión de una estación de ventana | Desconectar |
| 21 | LSM/Operativo | La sesión se ha iniciado correctamente | Sesión |
| 22 | LSM/Operativo | Notificación de inicio del shell | Sesión |
| 23 | LSM/Operativo | La sesión se ha cerrado correctamente | Cerrar sesión |
| 24 | LSM/Operativo | La sesión se ha desconectado | Desconectar |
| 25 | LSM/Operativo | La sesión se ha vuelto a conectar correctamente | Reconexión |
| 39 | LSM/Operativo | Sesión desconectada explícitamente por el usuario o el administrador | Desconectar |
| 40 | LSM/Operativo | Sesión desconectada con un código de motivo | Desconectar |
| 4634 | Seguridad | Se cerró la sesión de una cuenta | Cerrar sesión |
| 4647 | Seguridad | Cierre de sesión iniciado por el usuario | Cerrar sesión |
Paso 2: obtener el historial con PowerShell
📌 Caso de uso: exporta los eventos RDP relevantes de varios canales para analizarlos o archivarlos.
Nota: Utiliza Get-WinEvent para todas las consultas del registro de eventos. El antiguo cmdlet «Get-EventLog» se basa en una API Win32 obsoleta, puede ofrecer resultados inexactos en algunos casos y se eliminó por completo en PowerShell 7. Por ello, todos los scripts de este artículo utilizan Get-WinEvent.
- Pulsa Win, escribe «PowerShell» y haz clic en «Ejecutar como administrador».
- Copia y pega el siguiente script en la consola y pulsa Intro:
# Registro de Seguridad (éxitos y errores)
|
- A continuación, utiliza el siguiente script:
Get-WinEvent -LogName "Microsoft-Windows-TerminalServices-LocalSessionManager/Operational" |
|
Paso 3: correlacionar los eventos para reconstruir sesiones
📌 Caso de uso: crea cronologías de sesiones relacionando los inicios de sesión de los usuarios, las direcciones IP y la duración de las sesiones.
- Relaciona el evento 1149 (RCM) con el 4624 (LogonType 10):
- Correlaciona los eventos por nombre de usuario y marca de tiempo, con un margen de ±1 minuto.
Nota: Filtra también por LogonType 7 (reconexión a una sesión existente) y LogonType 3 (RDP a nivel de red en determinadas configuraciones). Si filtras únicamente por LogonType 10, es posible que no detectes los eventos de reconexión.
- Correlaciona los eventos por nombre de usuario y marca de tiempo, con un margen de ±1 minuto.
- Relaciona el evento 22 de LSM (inicio del shell) para confirmar que hay una sesión activa.
- Utiliza los eventos 23 o 24 de LSM para determinar cuándo finaliza la sesión.
- Calcula la duración de la sesión a partir de las marcas de tiempo.
Paso 4: detectar fallos y anomalías
📌 Caso de uso: detecta intentos de ataque por fuerza bruta o pulverización de contraseñas, así como posibles usos indebidos de cuentas.
- Abre el Visor de eventos > Registros de Windows > Seguridad.
- A la derecha, haz clic en «Filtrar registro actual…».
- En «ID de eventos», escribe «4625» y haz clic en «Aceptar».
- Haz doble clic en cualquier evento para abrirlo. En la pestaña «General» o «Detalles», busca lo siguiente:
- TargetUserName (usuario al que se dirigió el intento)
- IpAddress (dirección IP de origen)
- Status/SubStatus (motivo del fallo)
Paso 5: añadir artefactos
📌 Caso de uso: realiza la correlación desde la estación de trabajo del operador cuando no estén disponibles los registros del servidor.
- Pulsa Win + R, escribe «regedit» y pulsa Intro.
- Ve a la siguiente ubicación:
- HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default
- A la derecha, verás entradas como MRU0, MRU1 y MRU2, que incluyen nombres de servidores o direcciones IP. Anota los destinos relevantes.
Nota: Las claves del Registro HKCU\Software\Microsoft\Terminal Server Client\Default se crean al utilizar el cliente RDP integrado de Windows (mstsc.exe), que sigue siendo compatible con las conexiones RDP directas. Si tu organización utiliza Windows App —la aplicación de Microsoft que sustituye a la antigua aplicación Remote Desktop de Microsoft Store y al cliente MSI, necesaria para conectarse a Azure Virtual Desktop, Windows 365 y Microsoft Dev Box—, es posible que estas claves del Registro no estén presentes. En ese caso, comprueba los artefactos específicos de Windows App o los registros de sesión en el portal de Azure o en Intune. Si la conexión RDP no se inició desde esta estación de trabajo o se utilizó una herramienta de acceso remoto de terceros, es posible que estos artefactos no estén presentes, independientemente del cliente utilizado.
A continuación, sigue estos pasos:
- Abre el Explorador de archivos.
- En la barra de direcciones, pega lo siguiente:
- %AppData%\Microsoft\Windows\Recent\AutomaticDestinations\
- Ordena los archivos por fecha de modificación.
- Busca archivos grandes o recientes. Estos datos pueden analizarse con herramientas forenses, pero incluso la mera presencia de los archivos y sus marcas de tiempo puede aportar información útil.
A continuación, sigue estos pasos:
- En el Explorador de archivos, ve a la siguiente ubicación:
- C:\Users\<username>\Documents\
- En el cuadro de búsqueda de la esquina superior derecha, escribe lo siguiente:
- *.rdp
- Anota los nombres de los archivos y sus fechas de modificación.
Nota: Los archivos .rdp son artefactos opcionales del cliente y solo están presentes si el usuario ha guardado manualmente un archivo de conexión RDP. Su ausencia no descarta que se haya utilizado RDP.
Paso 6: centralizar y conservar
📌 Caso de uso: garantiza una visibilidad continua y evita la pérdida de registros.
- Pulsa Win + R, escribe «eventvwr.msc» y pulsa Intro.
- Ve a Registros de Windows > Seguridad.
- Haz clic con el botón derecho en «Seguridad» y selecciona «Propiedades».
- Aumenta el tamaño máximo del registro.
- Selecciona «Sobrescribir eventos cuando sea necesario» o «Archivar el registro cuando esté lleno» y haz clic en «Aceptar».
Nota: No existe un único tamaño recomendado para el registro de Seguridad. Lo habitual es dimensionarlo en función del volumen de eventos previsto y del periodo de conservación deseado.
Para guardar una copia, sigue estos pasos:
- En el Visor de eventos, haz clic con el botón derecho en «Seguridad» > «Guardar todos los eventos como…».
- Selecciona una ubicación, como C:\Logs\Security_<fecha>.evtx.
- Haz lo mismo con los siguientes registros:
- TerminalServices-LocalSessionManager / Operativo
- TerminalServices-RemoteConnectionManager / Operativo
Paso 7: actuar a partir de los resultados
📌 Caso de uso: convierte los datos en medidas concretas y garantiza la fiabilidad de las auditorías.
- Abre tickets ante fallos recurrentes, nuevas direcciones IP de origen o lagunas en la cobertura de los registros.
- Adjunta la cronología a la documentación de los incidentes y a las revisiones trimestrales del servicio.
- Revisa mensualmente la cobertura de grabación de sesiones y las excepciones de acceso.
Buenas prácticas para consultar el historial de conexiones de escritorio remoto
La siguiente tabla resume las buenas prácticas que conviene seguir al consultar el historial de conexiones de escritorio remoto:
| Práctica | Propósito | Valor aportado |
| Centrarse en Seguridad, LSM y RCM | Mayor cobertura | Clasificación y priorización más rápidas y fiables |
| Filtrar por LogonType 10 e ID de evento | Clasificación correcta | Distinción clara entre RDP y consola |
| Correlacionar los eventos previos a la autenticación con los de autenticación | Atribución del origen | Correspondencia precisa entre usuarios y direcciones IP |
| Normalizar en CSV y JSON | Evidencias | Auditorías y QBR uniformes. |
| Reenviar y conservar los registros | Fiabilidad | Cronologías disponibles cuando se necesiten |
Cómo ayuda NinjaOne a consultar el historial de conexiones de escritorio remoto
Con NinjaOne, puedes desplegar scripts de recopilación y supervisión según la función de cada dispositivo, recopilar y analizar de forma centralizada los datos de los registros de eventos, adjuntar los resultados relevantes a la documentación de TI y configurar alertas que generen tickets ante situaciones destacables, como picos de fallos o actividad inusual. Algunas configuraciones específicas de Windows, como el reenvío de eventos, deben habilitarse a nivel del sistema operativo.
Mantén un historial de RDP claro y fácil de consultar
Los filtros precisos y un patrón de correlación sencillo permiten mantener un historial de RDP claro y fácil de interpretar. Combina los eventos del servidor con los artefactos del cliente y programa exportaciones para saber quién se conectó, cuándo y desde dónde. De este modo, también tendrás preparados los artefactos necesarios para auditorías e investigaciones.
Temas relacionados:
- ¿Qué es el Protocolo de Escritorio Remoto (RDP)?
- Activar o desactivar el protocolo de escritorio remoto (RDP) en estaciones de trabajo mediante PowerShell
- Cómo configurar los usuarios de escritorio remoto en Windows
- Cómo supervisar sesiones RDP inesperadas mediante los registros de eventos y PowerShell
- Buenas prácticas para proteger el acceso al escritorio remoto en entornos de pymes