← Voltar ao blog

Os quatro timestamps do MFT e a assinatura do timestomping

· 2 min de leitura

Cada registro MFT armazena quatro timestamps em dois atributos distintos — $STANDARD_INFORMATION e $FILE_NAME. Ambos registram os mesmos quatro momentos:

  • Criação — primeira escrita do arquivo no volume
  • Modificação — última alteração do conteúdo
  • Acesso — última leitura do arquivo
  • Modificação do MFT — última atualização do próprio registro

São oito valores por registro. Nem sempre estão sincronizados.

Por que existem dois conjuntos

$STANDARD_INFORMATION (SI) é atualizado a cada operação de arquivo rotineira. $FILE_NAME (FN) foi acrescentado originalmente para compatibilidade POSIX e é atualizado bem menos vezes — tipicamente apenas na criação, no rename ou ao mover entre pastas.

Na prática, os timestamps SI mudam constantemente enquanto os FN permanecem estáveis.

O timestomping deixa marca

Ferramentas que alteram timestamps geralmente chamam a API do Windows SetFileTime. Ela escreve em SI. Não toca em FN.

Após o timestomping, SI mostra o que o atacante escolheu — frequentemente retroagido em anos — enquanto FN continua refletindo a data real de criação, às vezes com diferença considerável.

Dois padrões para observar em triagem:

  1. Criação SI anterior à criação FN. Um arquivo não pode existir antes de ser nomeado: impossível de forma natural.
  2. SI e FN modificação diferem em mais de alguns segundos para um arquivo que claramente não foi renomeado nem movido.

Qualquer um deles é forte indício de adulteração de metadados.

A granularidade diz ainda mais

O NTFS armazena timestamps com resolução de 100 nanossegundos, mas muitas ferramentas de timestomping arredondam para o segundo. Um timestamp terminado em .0000000 UTC é suspeito — a atividade natural do Windows costuma deixar intacta a precisão abaixo do segundo.

Recursos externos