A maioria dos ransomwares faz mais ou menos a mesma coisa em disco: enumera arquivos, lê cada um, escreve uma cópia criptografada ao lado, exclui o original. Cada um desses passos aparece no $MFT.
Os três padrões reveladores
Troca de extensões em massa. Um arquivo novo aparece com o mesmo diretório pai e nome base de um existente, mas com extensão diferente. relatorio.docx vira relatorio.docx.locked, relatorio.encrypted ou relatorio.{guid}. Contar quantos pares assim aparecem numa janela curta de tempo é um dos indicadores mais limpos de ransomware no $MFT.
Uma rajada de timestamps SI criado agrupados em poucos segundos. A atividade normal do usuário cria arquivos a conta-gotas, um ou dois por vez. Ransomware cria centenas ou milhares. Se plotar os SI criado como histograma, a janela do ataque salta como pico vertical.
Originais excluídos batendo com duplicatas criptografadas. Para cada relatorio.docx.locked costuma haver um relatorio.docx cuja flag «em uso» foi apagada. O registro excluído permanece no $MFT até ser reutilizado. Desses slots dá para recuperar nomes, tamanhos e timestamps dos originais.
O que o $MFT não te conta
O $MFT confirma o o quê e o quando. Não te diz qual processo fez a escrita. Para isso você precisa de:
- Prefetch e ShimCache como evidência de qual executável rodou
$UsnJrnlpara ver a ordem das operações de criação, exclusão e renomeação- forense de memória se a máquina ainda está viva e o processo ainda é residente.
Mas o $MFT sozinho costuma responder às perguntas mais urgentes: quando o ataque começou, até onde se espalhou e quais arquivos foram tocados.
Uma nota sobre os arquivos de pedido de resgate
A maioria das famílias deixa uma nota de resgate em cada diretório afetado, com nomes como HOW_TO_DECRYPT.txt ou README_FOR_DECRYPT.html. Essas notas têm conteúdo idêntico, tamanho idêntico e horários de criação muito próximos. Percorrer o $MFT em busca de muitos arquivos de texto com mesmo tamanho espalhados por muitos diretórios costuma achá-las antes de qualquer filtro por nome.