TL;DR. Analise a hive SYSTEM. Filtre caminhos em locais com permissão de escrita pelo utilizador (\AppData\, \Temp\) e caminhos de sistema inesperados. Corrobore acertos com hashes da AmCache e com o Prefetch. Pivote por SHA-1 quando o ficheiro desapareceu. A ShimCache põe nomes na sua lista de caça. Não encerra casos sozinha.
A razão pela qual a ShimCache ganha lugar num workflow de caça é porque sobrevive. Um atacante deixa cair uma ferramenta, corre-a, apaga-a, e o caminho continua na cache. Isto torna-a um pivô de alto sinal quando a AmCache e o Prefetch foram limpos ou nunca estiveram ligados. Eis como a uso de facto.
O workflow em cinco passos
- Recolher a hive SYSTEM. Extraia
C:\Windows\System32\config\SYSTEMe os seus irmãos.LOG1e.LOG2, ou use o Velociraptor para recolha viva. O guia de aquisição cobre os métodos seguros. Lembre-se que a cache vive em memória até clean shutdown, portanto consulte tempos de armazenamento antes de assumir que a hive em disco está atual. - Analisar para uma lista plana. Descodifique o blob binário em linhas
(path, mtime, format). O Shimcache Parser faz isto no browser; oAppCompatCacheParserde Eric Zimmerman ou o Shim Cache Parser da Mandiant fazem-no offline. - Filtrar por caminhos suspeitos. É aqui que a caça acontece de facto.
- Corroborar execução. Uma linha na ShimCache, isolada, prova existência, não execução. Empareje cada linha interessante com Prefetch, AmCache, ou EVTX / Sysmon. A matriz completa está na referência de artefactos de execução de programas.
- Pivotar por hash. Quando o ficheiro em disco desapareceu, o SHA-1 da AmCache é a sua pega para pesquisas no VirusTotal e em threat intel. A análise ShimCache vs AmCache explica porque deve extrair sempre as duas.
Padrões que vale a pena filtrar
Estes são os padrões de caminho que pontuam consistentemente mais alto em caças reais:
- Diretórios com escrita do utilizador.
\AppData\Local\Temp\,\AppData\Roaming\,\Users\Public\,\ProgramData\. Utilizadores e serviços podem largar binários aqui sem direitos de admin, e fazem-no. - Escrita de sistema onde não deveria.
C:\Windows\Temp\,C:\PerfLogs\, qualquer coisa sobC:\Windows\que não seja um caminho conhecido do Windows. Binários de serviço do PsExec e ferramentas de pipes nomeados aterram aqui o tempo todo. - Duplas extensões e parecenças.
svchost.exefora de\System32\,lsass.exeem qualquer sítio invulgar,*.pdf.exe,*.docx.exe. OOriginalFileNameda AmCache costuma desmascarar o disfarce. - Partilhas de rede e media removível.
\\?\UNC\, letras de unidade que nãoC:,\Device\HarddiskVolumeShadowCopy*. Mostram o caminho de staging. Cruze com ficheiros LNK para histórico da shell. - Ferramentas de uso único.
psexec.exe,winrm.cmd,wmiexec.exe,mimikatz*.exe, artefactos do Cobalt Strike. Ferramentas de administração legítimas são abusadas; trate-as como achados a esclarecer, não como ruído a ignorar.
Não se faça de esperto com regex à primeira passagem. Ordene por mtime e percorra as entradas recentes a olho. Isso apanha as coisas que os filtros heurísticos perdem, incluindo binários que o atacante renomeou para fugir à sua lista de filtros.
Regras práticas de triagem
Algumas verificações rápidas separam sinal de ruído:
- Tem um irmão Prefetch? Quase prova de execução.
- A AmCache traz um SHA-1? Procure-o. Hash limpo e assinado de fornecedor: despriorize. Hash desconhecido num caminho com escrita do utilizador: escale.
- O mtime está suspeitamente próximo de uma hora conhecida de incidente? Modificado em minutos a partir de um alerta vale uma análise mais profunda. Lembre-se de que o mtime é uma propriedade do ficheiro, não o momento em que o Windows o viu.
- O diretório pai é o perfil do utilizador mas o utilizador não é admin? Razoável para instaladores; fique atento a indicadores de elevação em Sysmon Event ID 1 e em Security 4688 com tokens elevados.
- O USN journal ou a MFT confirmam criação na janela de interesse? Corroboração forte quando o ficheiro ainda está em disco.
O que este workflow não lhe diz
A ShimCache por si só não lhe diz quem lançou o binário, com que argumentos, ou quando. Para isso precisa de Sysmon, logs de eventos de segurança, ou uma timeline completa de execução de programas. O trabalho da cache é pôr nomes na lista de caça, não encerrar a investigação.
Leitura adicional
- AppCompatCacheParser de Eric Zimmerman, parser offline padrão-ouro.
Windows.Registry.AppCompatCachedo Velociraptor, recolha à escala.- ShimCache & AmCache forensic analysis de Mehrnoush, descrição orientada a casos.