Skip to content

Evidencia de ejecución con BAM: caso de movimiento lateral

Investigación ficticia en FIN-WKS-07 leída con BAM: phishing, cuenta de servicio secuestrada, escaneo, PsExec, RDP y rclone — y lo que BAM no pudo mostrar.

Publicado el 7 min de lectura

TL;DR. Escenario ficticio, datos sintéticos. En FIN-WKS-07, BAM basta para reconstruir una mañana: alice abre una «factura» con doble extensión y PowerShell 24 segundos después; una hora más tarde, la cuenta de servicio svc_backup — que solo debería ejecutar un agente de copias de seguridad — lanza cmd.exe, deja un binario en ProgramData, ejecuta un escáner de IP desde un segundo volumen, abre RDP y ejecuta PsExec, 7-Zip y rclone. Un falso svchost.exe se ejecuta como SYSTEM desde Windows\Temp. BAM aporta el quién, el qué y el cuándo; no puede aportar los comandos, los hash ni los destinos, y este artículo lo deja claro en cada caso.

Todo lo que aparece en este artículo es ficticio. El equipo, las cuentas, los SID, las rutas y las horas proceden de las colmenas sintéticas del botón «Probar un ejemplo» del BAM/DAM Parser. No se describe ninguna organización, persona ni incidente reales. Puedes cargar los mismos datos y seguir el caso.

El planteamiento

Un equipo de contabilidad, FIN-WKS-07, generó una alerta por tráfico saliente hacia un proveedor de almacenamiento en la nube el 14 de septiembre de 2026. El analista recopiló SYSTEM, SYSTEM.LOG1/LOG2 y SOFTWARE con KAPE antes de que nadie reiniciara el equipo — lo que, como explica el artículo sobre limitaciones, mantiene vivas las entradas de BAM de las herramientas borradas.

Al cargar las colmenas en la herramienta aparece esta cabecera:

CampoValor
EquipoFIN-WKS-07
Zona horariaRomance Standard Time (París, UTC+2 en septiembre)
Control set activo1
Cuentasalice (…-1104), svc_backup (…-1119), SYSTEM (S-1-5-18)

Todas las horas siguientes están en UTC, tal como las guarda BAM. Suma dos horas para la hora local de París.

Fase 1 — Acceso inicial con alice

Filtrando por alice y ordenando por última ejecución:

Última ejecución (UTC)ProgramaRutaSeñales
08:51:13explorer.exe (DAM)\Windows\explorer.exe
08:55:02MSTeamspaquete MSTeams_8wekyb3d8bbwe
08:58:40OUTLOOK.EXE\Program Files\Microsoft Office\root\Office16\
09:03:11chrome.exe\Program Files\Google\Chrome\Application\
09:12:07Invoice_2026-0914.pdf.exe\Users\alice\Downloads\carpeta escribible por el usuario, doble extensión
09:12:31powershell.exe\Windows\System32\WindowsPowerShell\v1.0\

Lo que BAM respalda: un inicio de jornada normal (Teams, Outlook, Chrome), luego un programa con doble extensión .pdf.exe desde Downloads y PowerShell 24 segundos después, todo con alice.

Lo que BAM no muestra: cómo llegó el archivo (descarga del navegador o adjunto de correo), su hash, si PowerShell era su proceso hijo ni qué ejecutó PowerShell. Recuerda que la hora es la última actividad registrada — actualizada al iniciar y al terminar el proceso (Suhanov) —, así que la «factura» pudo arrancar algo antes de las 09:12:07 si estuvo abierta un rato.

Siguientes pasos en un caso real: historial de Chrome y flujo Zone.Identifier para el origen de la descarga (Browser Forensics), Amcache para el SHA-1, registros PowerShell Operational (4104, registro de bloques de script si está activado) en EVTX Parser.

Comparación de control sets. Al desactivar «Solo control set activo» aparece ControlSet002 con solo cuatro entradas de alice — Chrome, Outlook, Excel y Notepad. Esa instantánea más antigua no contiene ninguna de las filas sospechosas, lo que es coherente con una actividad reciente. Es un punto de comparación, no una prueba de cronología.

Fase 2 — La cuenta de servicio se despierta

svc_backup es una cuenta de servicio de copias de seguridad. En una red sana, su clave de BAM contendría como mucho el agente de copias. Aquí:

Última ejecución (UTC)ProgramaRutaSeñales
10:02:16cmd.exe\Windows\System32\
10:09:44m64.exe\ProgramData\Intel\carpeta escribible por el usuario
10:15:58Advanced_IP_Scanner.exe\Device\HarddiskVolume7\tools\doble uso
10:18:40mstsc.exe\Windows\System32\
10:21:03PsExec64.exe\Users\svc_backup\Downloads\carpeta escribible por el usuario, doble uso
10:39:257z.exe\Program Files\7-Zip\
10:47:12rclone.exe\Users\Public\carpeta escribible por el usuario, doble uso

Este es el hallazgo central, y es del tipo en que BAM no tiene rival: ejecución atribuida a una cuenta concreta. El artículo sobre la atribución explica por qué debe redactarse «ejecutado con la cuenta svc_backup» — BAM no puede saber si una persona tecleó los comandos o si una herramienta usó las credenciales.

Correspondencia con MITRE ATT&CK para el informe:

  • Advanced_IP_Scanner.exe → descubrimiento de servicios de red (T1046).
  • mstsc.exe → RDP saliente (T1021.001).
  • PsExec64.exe → ejecución de servicios en equipos remotos (T1569.002).
  • 7z.exe y luego rclone.exe → preparación y exfiltración a almacenamiento en la nube (T1567.002).

Lo que aportan las rutas

  • \Device\HarddiskVolume7\tools\ — no es el volumen del sistema (HarddiskVolume3). BAM no registra ejecutables en soportes marcados como extraíbles (Suhanov), así que este volumen se presentó de otra forma: un VHD/ISO montado o un disco externo que se identifica como fijo son candidatos. Asócialo con otros artefactos antes de escribir «USB». Consulta el artículo sobre el formato de los valores para las rutas de dispositivo.
  • \ProgramData\Intel\m64.exe — un binario desconocido en una carpeta de aspecto legítimo. BAM no puede decir qué es; el SHA-1 de Amcache sí.
  • \Users\Public\rclone.exe — una carpeta con escritura para todos, a menudo usada para preparar datos.

Lo que falta

No hay net.exe, whoami.exe ni nltest.exe, aunque este tipo de comandos de reconocimiento es típico en una sesión de cmd.exe. Es lo esperado: se ha observado que los programas de consola lanzados desde una sesión de línea de comandos no reciben entrada en BAM (Suhanov). Esa ausencia no dice nada. Aparecerán en Prefetch y en los eventos 4688/Sysmon.

Fase 3 — SYSTEM desde una carpeta temporal

Bajo S-1-5-18:

Última ejecución (UTC)RutaSeñales
07:45:00\Windows\System32\svchost.exe
10:05:01\Windows\Temp\svchost.execarpeta escribible por el usuario, binario del sistema fuera de lugar

Un svchost.exe fuera de System32, ejecutándose como LocalSystem tres minutos después de que svc_backup abriera una consola y cuatro minutos antes de que apareciera m64.exe. Enmascaramiento de manual (T1036). Cómo obtuvo SYSTEM — instalación de un servicio, una tarea programada, el propio servicio de PsExec — requiere los eventos 7045/4697 y la clave Services.

La línea de tiempo combinada

UTCCuentaEvento (BAM)
09:12:07alice«Factura» con doble extensión desde Downloads
09:12:31alicePowerShell
10:02:16svc_backupcmd.exe
10:05:01SYSTEMFalso svchost.exe en Windows\Temp
10:09:44svc_backupm64.exe en ProgramData\Intel
10:15:58svc_backupEscáner de IP desde HarddiskVolume7
10:18:40svc_backupCliente RDP
10:21:03svc_backupPsExec
10:39:25svc_backup7-Zip
10:47:12svc_backuprclone

Los cuarenta minutos entre PowerShell y la primera consola de la cuenta de servicio son el hueco evidente: ¿cómo obtuvo el atacante las credenciales de svc_backup? BAM no lo sabe. Hipótesis a comprobar: credenciales guardadas en un script o configuración legible por alice, un volcado de credenciales (Prefetch/Amcache para herramientas de volcado, eventos de acceso a LSASS) o un inicio de sesión desde otro equipo (4624 tipo 3/10).

Lo que entró en el informe

  1. Los hallazgos de BAM, cada uno redactado como «última actividad registrada con la cuenta X a las T UTC», con la ruta de la clave SID.
  2. Los límites explícitos: sin líneas de comandos, sin hash, sin herramientas de consola, sin ejecuciones desde soportes extraíbles o de red, una sola marca de tiempo por programa.
  3. El plan de corroboración: Amcache (hash de m64.exe, de la factura y de rclone), Prefetch (contadores, primeras ejecuciones), EVTX (inicios de sesión, instalaciones de servicios, PowerShell), SRUM (bytes enviados por rclone.exe) y las claves de BAM de los equipos alcanzados por PsExec y RDP, donde la misma cuenta (o SYSTEM) pudo ejecutar herramientas también.
  4. El alcance: los demás equipos alcanzados por mstsc.exe y PsExec64.exe reciben la misma recopilación.

Pruébalo

Abre el BAM/DAM Parser, haz clic en Probar un ejemplo y reproduce cada tabla con el filtro de cuentas, «Solo señaladas» y la ordenación. La guía paso a paso explica cada control, y la comparación con Prefetch, ShimCache y Amcache muestra lo que aportaría cada artefacto de corroboración.

Artículos relacionados