TL;DR. Ferramentas de movimento lateral — PsExec, wmic, at/schtasks, PowerShell remoto — deixam entradas ShimCache no host destino (o binário de serviço solto) e muitas vezes na origem. Comparar o AppCompatCache entre vários hosts revela o caminho que o atacante tomou.
O ShimCache normalmente é enquadrado como um artefato de host único. Mas seu real poder na IR é entre hosts: a mesma ferramenta, examinada por compatibilidade em cada máquina que toca, deixa um rastro correlacionável. Este artigo trata de ler esse rastro.
Como o movimento lateral aparece no ShimCache
As técnicas de execução remota soltam ou invocam um executável no destino. Cada uma deixa um caminho característico:
| Técnica | Indício ShimCache no destino |
|---|---|
| PsExec / exec. de serviço SMB | C:\Windows\PSEXESVC.exe ou um binário de serviço de 8 caracteres aleatórios em C:\Windows\ |
sc \\host create | Binário de serviço nomeado pelo atacante, muitas vezes em C:\Windows\ ou \PerfLogs\ |
WMI (wmic process call create) | Caminho do payload sob C:\Windows\Temp\ ou um diretório gravável |
Tarefa agendada (schtasks /s) | Binário de ação da tarefa, frequentemente C:\Users\Public\ |
| PowerShell remoto | powershell.exe mais qualquer .exe solto que ele preparou |
Um binário de serviço com nome aleatório em C:\Windows\ é um dos achados ShimCache de maior sinal que existem — tratado como regra de triagem em caça a malware com o ShimCache.
O lado do host origem
O host de origem frequentemente mostra entradas ShimCache da própria ferramenta de ataque: PsExec.exe, wmic.exe usado interativamente, um movedor sob medida ou frameworks de pós-exploração. Parear «ferramenta no host A» com «binário de serviço no host B» dentro de uma janela plausível é a inferência central do movimento lateral.
O fluxo de comparação entre hosts
- Colete as colmeias SYSTEM de cada host no escopo (veja adquirir uma colmeia SYSTEM).
- Analise cada uma e exporte para CSV.
- Normalize os caminhos e compare binários compartilhados e incomuns — o mesmo nome de serviço aleatório ou o mesmo caminho de staging aparecendo em vários hosts é o caminho do movimento.
- Ordene os hosts pela ordem de inserção do ShimCache (não a marca de tempo — é o mtime do arquivo, não uma hora de evento).
- Corrobore cada salto com Security 4624/4648, eventos 7045 de instalação de serviço e AmCache.
Isso se funde naturalmente numa linha do tempo completa de execução de programas. Mapeie as técnicas para ATT&CK T1021 (Remote Services) e T1570 (Lateral Tool Transfer) para o relatório.
Ressalvas
O ShimCache só descarrega no desligamento limpo; um host ainda ligado pode não ter gravado ainda a entrada decisiva — verifique a memória (extração de um dump de memória). E a marca de tempo nunca sequencia os saltos sozinha; apoie-se na ordem de inserção mais os logs de eventos. Atacantes que limpam o valor deixam o próprio indício — veja antiforense do ShimCache.
Para comparar colmeias rapidamente, analise cada uma com o Shimcache Parser, exporte CSV e compare — tudo no lado do cliente.
Leitura adicional
- MITRE ATT&CK: Remote Services (T1021) — referência de técnica para os indícios do lado destino.
- Mandiant: leveraging the ShimCache — fundamentos do ShimCache.