TL;DR. Las herramientas de movimiento lateral (PsExec, wmic, at / schtasks, PowerShell remoto) dejan entradas en el ShimCache del host destino (la binaria de servicio soltada) y a menudo en el origen. Hacer diff del AppCompatCache entre muchos hosts saca a la luz la ruta que tomó el atacante.
El ShimCache se suele enmarcar como un artefacto de un único host. Su verdadera potencia en respuesta a incidentes es entre hosts. Las mismas herramientas, examinadas para compatibilidad en cada máquina que tocan, dejan un rastro correlacionable. Así lo uso de verdad para reconstruir el movimiento lateral.
Cómo se ve el movimiento lateral en el cache
Las técnicas de ejecución remota sueltan o invocan un ejecutable en el destino. Cada una deja una ruta característica.
| Técnica | Pista en el ShimCache del destino |
|---|---|
| PsExec / SMB service exec | C:\Windows\PSEXESVC.exe o una binaria de servicio aleatoria de 8 caracteres en C:\Windows\ |
sc \\host create | Binaria de servicio nombrada por el atacante, a menudo en C:\Windows\ o \PerfLogs\ |
WMI (wmic process call create) | Ruta de payload bajo C:\Windows\Temp\ o un directorio escribible por usuario |
Tarea programada (schtasks /s) | Binaria de acción de tarea, frecuentemente C:\Users\Public\ |
| PowerShell remoto / WinRM | powershell.exe más cualquier .exe soltado que stageó |
Impacket smbexec / wmiexec | .bat y .exe con nombre aleatorio bajo \Windows\Temp\ |
Una binaria de servicio con nombre aleatorio en C:\Windows\ es uno de los hallazgos de ShimCache con mayor señal que existen. Tratado como regla de triage en cazar malware con el ShimCache.
El lado del host origen
El host originador suele mostrar entradas de ShimCache para el propio tooling de ataque: PsExec.exe, wmic.exe usado interactivamente, un mover a medida, un cargador de framework post-explotación. Emparejar "herramienta en host A" con "binaria de servicio en host B" dentro de una ventana plausible es el núcleo de la inferencia de movimiento lateral.
Cruza con conexiones de red Sysmon Event ID 3 y Security 4624 logon tipo 3 para cerrar el círculo. El parser de EVTX cubre los IDs de evento relevantes.
El workflow de diff entre hosts
- Recolecta hives SYSTEM de cada host en alcance. Mira adquirir un hive SYSTEM. O usa Velociraptor para recolección en flota.
- Parsea cada uno y exporta a CSV. El AppCompatCacheParser de Eric Zimmerman es la respuesta correcta para trabajo por lotes.
- Normaliza rutas y haz diff por binarias compartidas y poco comunes. El mismo nombre de servicio aleatorio o ruta de staging apareciendo en varios hosts es la ruta del movimiento.
- Ordena hosts por orden de inserción, no por timestamp. El timestamp es la mtime del archivo, no un tiempo de evento, así que no secuencia saltos por sí solo.
- Corrobora cada salto con Security 4624 (logon tipo 3), 4648 (credenciales explícitas), 7045 (instalación de servicio), y AmCache para atribución por SHA-1.
Esto se funde de forma natural en una línea de tiempo de ejecución de programas completa. 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, así que un host aún corriendo puede no haber escrito todavía la entrada decisiva. Comprueba memoria (extraer de un volcado de memoria) antes de concluir que un host no fue tocado. El timestamp nunca secuencia saltos por sí solo; tira del orden de inserción más EVTX y el USN journal para tiempos de evento. Los atacantes que limpian el valor dejan su propia pista. Mira anti-forense del ShimCache.
Para hacer diff de hives rápido, parsea cada uno con el Shimcache Parser y compara en cliente. El export CSV de la herramienta de EZ alimenta directo a pandas o csvdiff para conjuntos más grandes.
Lectura adicional
- MITRE ATT&CK Remote Services (T1021). referencia de técnica para las pistas en el destino.
- Caching Out the Val de Mandiant. tradecraft fundacional de ShimCache.
- Detecting Lateral Movement through Tracking Event Logs de JPCERT/CC. encaja de forma natural con el lado EVTX del análisis.