Skip to content

Movimiento lateral por RDP: artefactos del equipo de origen

Qué artefactos del equipo de origen RDP muestran adónde y cuándo se conectó un usuario, y cómo usarlos para fechar y atribuir lo que muestra la caché.

Publicado el 8 min de lectura

Resumen. En el movimiento lateral por RDP, la máquina desde la que se conectó el atacante conserva mucho: la caché de mapas de bits (lo que mostraba la pantalla remota), el registro Microsoft-Windows-TerminalServices-RDPClient/Operational (evento 1024, con el nombre del destino), las claves de registro Terminal Server Client (destinos, UsernameHint, lista MRU), Default.rdp y las trazas de ejecución de mstsc.exe. La caché no tiene marcas de tiempo, así que estos artefactos son los que permiten fecharla y vincularla a un destino. En el destino, el registro Security (4624 con tipo de inicio de sesión 10, 4778/4779) y RemoteConnectionManager 1149 confirman el otro extremo.

Este artículo complementa la guía de análisis forense de la caché de mapas de bits RDP. Se limita deliberadamente a un pequeño conjunto de ID de evento y claves bien conocidos.

Origen y destino: quién guarda qué

PreguntaEquipo de origen (cliente)Equipo de destino (servidor)
¿Qué vio el usuario?Caché de mapas de bitsNo se registra
¿Con qué destino se contactó?Registro del cliente RDP, registro de Windows, Default.rdpSu propio nombre
¿Cuándo?Eventos del registro, marcas de tiempo NTFS, trazas de ejecuciónRegistros Security y Terminal Services
¿Con qué cuenta?UsernameHint en el registro de WindowsEventos de inicio de sesión
¿Quién ejecutó el cliente?El perfil al que pertenecen los archivos y las clavesNo se registra

A menudo es el lado de origen el que sobrevive. Un atacante que limpia el destino deja los artefactos del cliente en la máquina desde la que llegó, salvo que limpie también esa.

Artefactos del equipo de origen

La caché de mapas de bits

C:\Users\<user>\AppData\Local\Microsoft\Terminal Server Client\Cache\, por cuenta. Muestra contenido de pantalla del lado remoto: consolas, ventanas de carpetas, herramientas. No dice cuándo ni dónde. La recolección se explica en ubicación y adquisición de la caché de mapas de bits RDP.

Marcas de tiempo NTFS de los archivos de caché

Los archivos de caché son archivos normales, así que el sistema de archivos los fecha:

  • Las marcas de tiempo $STANDARD_INFORMATION y $FILE_NAME en la $MFT: creación y última escritura de cada bcache*.bmc y Cache*.bin.
  • $UsnJrnl: registros de creación, escritura y cierre de esos archivos, si el journal todavía cubre el periodo.

Trátelas como límites. Una hora de última escritura indica que el cliente escribió en el archivo en ese momento; no dice qué mosaicos se escribieron entonces, y un archivo usado en varias sesiones solo conserva sus horas más recientes. Los parsers de MFT y de USN journal leen estos datos.

El registro de eventos del cliente RDP

El registro RDPClient Operational, Microsoft-Windows-TerminalServices-RDPClient/Operational, está en el equipo de origen. El evento 1024 registra que el cliente está intentando conectarse a un servidor y da el nombre del destino. Eso le proporciona una hora y un destino que situar junto a la caché.

Registra un intento, no un inicio de sesión correcto. Combínelo con los registros del destino cuando disponga de ellos. Análisis de registros de eventos: EVTX parser.

Claves de registro de Terminal Server Client

En el NTUSER.DAT del usuario, bajo Terminal Server Client:

ClaveContenido
HKCU\Software\Microsoft\Terminal Server Client\Servers\<host>Una subclave por destino; UsernameHint contiene el nombre de usuario empleado
HKCU\Software\Microsoft\Terminal Server Client\DefaultDe MRU0 a MRU9, los destinos recientes que muestra el cliente

Aportan destinos y cuentas por usuario. Las horas de última escritura de las claves pueden ayudar a ordenar los hechos, pero reflejan el último cambio en la clave, no cada conexión. El registry parser lee estas colmenas.

Default.rdp

Default.rdp, en la carpeta Documentos del usuario, contiene la configuración de la última conexión hecha con los valores predeterminados del cliente. Entre otros ajustes, puede mostrar si el almacenamiento persistente de mapas de bits estaba activado (bitmapcachepersistenable:i:1), lo que indica si cabe esperar una caché.

Ejecución de mstsc.exe

Las trazas de ejecución de mstsc.exe sitúan el cliente en la cronología: el archivo Prefetch de mstsc.exe (Prefetch parser) y la jump list del cliente de Escritorio remoto (jump list parser), que puede enumerar destinos recientes.

Artefactos del equipo de destino

Cuando el destino está disponible, confirme el otro extremo:

RegistroEventoSignificado
Security4624, tipo de inicio de sesión 10Inicio de sesión interactivo remoto
Security4778 / 4779Sesión reconectada / desconectada
Microsoft-Windows-TerminalServices-RemoteConnectionManager/Operational1149Conexión de red al servicio de Escritorio remoto, con el usuario
Microsoft-Windows-TerminalServices-LocalSessionManager/OperationalEventos de sesiónInicio de sesión, cierre de sesión, reconexión

Mantenemos esta lista corta a propósito. En los análisis de RDP aparecen muchos otros ID de evento; varían según la versión y la configuración, y no son necesarios para fechar una caché.

Juntarlo todo: fechar la caché

Un método práctico:

  1. Atribuir la caché. Anote la cuenta de la ruta (Users\<name>\). Es quien ejecutó el cliente.
  2. Enumerar los destinos de esa cuenta. Subclaves Servers y lista MRU del registro, Default.rdp, jump list.
  3. Construir la cronología de conexiones. Horas y destinos del evento 1024 del registro del cliente RDP, horas de ejecución de mstsc.exe según Prefetch.
  4. Acotar la caché. Horas de creación y de última escritura de cada archivo de caché; registros USN si los hay.
  5. Leer los mosaicos. Busque cualquier cosa que vincule el contenido a un destino o a una hora: títulos de ventana con un nombre de equipo, el reloj de la barra de tareas, fechas en listados de archivos, duraciones de transferencias.
  6. Contrastar en el destino. 4624 tipo 10, 4778/4779, 1149 para la misma cuenta y el mismo periodo.

Un ejemplo con los datos de muestra

La herramienta incluye un caso sintético y ficticio (FIN-WKS-07, 2026-09-14) que sigue este patrón. La caché recolectada en el equipo de origen, perfil svc_backup, contiene:

  • en Cache0000.bin, una consola titulada FIN-WKS-07 - console (svc_backup) con un comando rclone.exe copy C:\Users\Public\data E:\exfil, una ventana de carpeta sobre E:\exfil y un reloj de la barra de tareas que marca las 10:52;
  • en bcache22.bmc, una vista anterior (hacia las 10:14 según el reloj) con tar -xf tools.zip -C C:\ProgramData\Intel y un resto de ranura de la barra de título de un editor con creds.txt.

El título de la ventana nombra el destino; los relojes dan horas de la pantalla remota. En un caso real, buscaría a continuación eventos 1024 que nombren ese equipo en torno a esas horas, una clave Servers\FIN-WKS-07 en la colmena de svc_backup e inicios de sesión 4624 de tipo 10 de esa cuenta en el destino. Informe de los valores del reloj como lo que mostraba la pantalla, y de las horas de los registros como la cronología.

Qué escribir en el informe

AfirmaciónRespaldada por
La cuenta X ejecutó el cliente RDP en el equipo ACaché y registro de Windows en el perfil de X, Prefetch
X intentó una conexión al equipo B en el momento TEvento 1024 del registro del cliente RDP
Se estableció una sesión en BRegistros del destino (4624 tipo 10, 1149)
Durante una sesión, la pantalla de B mostraba YMosaicos de caché, con el método de reconstrucción
Y ocurrió en el momento TSolo si lo vinculan registros, marcas de tiempo o relojes visibles, y dicho así

Deje las pistas de triaje de la herramienta fuera de las conclusiones: «tipo consola» es un motivo para leer un mosaico primero, no un hallazgo.

Preguntas frecuentes

¿Qué equipo guarda la evidencia de una conexión RDP saliente?

El equipo de origen, la máquina donde se ejecutó el cliente de Escritorio remoto. Contiene la caché de mapas de bits, el registro de eventos del cliente RDP, las claves de registro de Terminal Server Client y las trazas de ejecución de mstsc.exe. El equipo de destino contiene los registros de inicio de sesión y de sesiones.

¿Puede la caché de mapas de bits decirme de qué servidor procede un mosaico?

No. Los mosaicos no llevan nombre de equipo ni hora. Vincúlelos a un destino con el registro del cliente RDP, las claves de registro de Terminal Server Client y los registros del equipo de destino, y con cualquier cosa visible en los propios mosaicos, como el título de una ventana.

¿Es el evento 1024 una prueba de que se estableció la sesión?

No. El evento 1024 del registro RDPClient Operational indica que el cliente estaba intentando conectarse a un servidor, con el nombre del destino. Confirme el inicio de sesión en el destino (Security 4624 con tipo de inicio de sesión 10, o RemoteConnectionManager 1149) cuando esos registros existan.

Artículos relacionados

Artículos relacionados

Qué es la caché de mapas de bits RDP, dónde está, qué muestran sus mosaicos de una sesión remota, cómo fecharla y cómo analizar bcache*.bmc y Cache*.bin.
Paso a paso: cargue bcache*.bmc y Cache*.bin en un parser gratuito en el navegador, haga triaje, arme un collage, reconstruya una pantalla y exporte.
Por qué un collage de caché RDP se alinea en unas zonas y se desplaza en otras, cómo elegir su ancho y cómo rehacer una pantalla mosaico a mosaico.