Detectar movimiento lateral con el ShimCache

3 min de lectura

TL;DR. Las herramientas de movimiento lateral — PsExec, wmic, at/schtasks, PowerShell remoto — dejan entradas ShimCache en el host destino (el binario de servicio soltado) y a menudo en el origen. Comparar el AppCompatCache entre muchos hosts revela el camino que tomó el atacante.

El ShimCache suele presentarse como un artefacto de un solo host. Pero su verdadera potencia en respuesta a incidentes es entre hosts: el mismo herramental, examinado por compatibilidad en cada máquina que toca, deja un rastro correlacionable. Este artículo trata de leer ese rastro.

Cómo se ve el movimiento lateral en el ShimCache

Las técnicas de ejecución remota sueltan o invocan un ejecutable en el destino. Cada una deja una ruta característica:

TécnicaIndicio ShimCache en el destino
PsExec / ejec. servicio SMBC:\Windows\PSEXESVC.exe o un binario de servicio de 8 caracteres aleatorios en C:\Windows\
sc \\host createBinario de servicio nombrado por el atacante, a menudo en C:\Windows\ o \PerfLogs\
WMI (wmic process call create)Ruta de carga bajo C:\Windows\Temp\ o un directorio escribible
Tarea programada (schtasks /s)Binario de acción de tarea, frecuentemente C:\Users\Public\
PowerShell remotopowershell.exe más cualquier .exe soltado que preparó

Un binario de servicio con nombre aleatorio en C:\Windows\ es uno de los hallazgos ShimCache de más señal que existen — tratado como regla de triaje en cazar malware con el ShimCache.

El lado del host origen

El host de origen muestra con frecuencia entradas ShimCache del propio herramental de ataque: PsExec.exe, wmic.exe usado interactivamente, un movedor a medida o frameworks de post-explotación. Emparejar «herramienta en el host A» con «binario de servicio en el host B» dentro de una ventana plausible es la inferencia central del movimiento lateral.

El flujo de comparación entre hosts

  1. Recolecta las colmenas SYSTEM de cada host en alcance (ver adquirir una colmena SYSTEM).
  2. Analiza cada una y exporta a CSV.
  3. Normaliza las rutas y compara binarios compartidos e inusuales — el mismo nombre de servicio aleatorio o la misma ruta de staging apareciendo en varios hosts es el camino del movimiento.
  4. Ordena los hosts por el orden de inserción del ShimCache (no la marca temporal — es el mtime del archivo, no una hora de evento).
  5. Corrobora cada salto con Security 4624/4648, eventos 7045 de instalación de servicio y AmCache.

Esto se fusiona naturalmente en una línea de tiempo completa de ejecución de programas. Mapea las técnicas a ATT&CK T1021 (Remote Services) y T1570 (Lateral Tool Transfer) para el informe.

Salvedades

El ShimCache solo se vuelca al apagar limpiamente; un host aún encendido puede no haber escrito todavía la entrada decisiva — revisa la memoria (extracción desde un volcado de memoria). Y la marca temporal nunca secuencia los saltos por sí sola; apóyate en el orden de inserción más los registros de eventos. Los atacantes que borran el valor dejan su propio indicio — ver antiforense del ShimCache.

Para comparar colmenas rápidamente, analiza cada una con el Shimcache Parser, exporta CSV y compara — todo del lado del cliente.

Lectura adicional

Artículos relacionados