Parser MFT — analisador $MFT NTFS no navegador
Um parser MFT que roda inteiramente no seu navegador. Solte um arquivo $MFT NTFS e inspecione cada registro — entradas excluídas, carimbos de tempo de $STANDARD_INFORMATION e $FILE_NAME, fluxos de dados alternativos, dados residentes — sem enviar um único byte. WebAssembly por baixo do capô, o crate Rust omerbenamram/mft fazendo o parsing.
Sobre este parser MFT
Um parser MFT lê a Master File Table do NTFS — o arquivo $MFT no início de cada volume NTFS — e transforma seus registros de 1.024 bytes em algo com que um analista forense pode trabalhar: nomes de arquivos, timestamps, diretórios pai, fluxos de dados alternativos, entradas excluídas e dados residentes. Este site é um desses parsers. Roda no seu navegador.
Solte um arquivo $MFT sobre a área acima. O arquivo é carregado na memória do navegador, analisado pela crate Rust omerbenamram/mft compilada para WebAssembly, e exibido em uma tabela paginada e pesquisável. Nada é enviado — você pode verificar desconectando sua rede antes de soltar o arquivo. Exportação para CSV e um relatório de triagem ficam disponíveis para análise posterior.
O que ele mostra
- Cada registro MFT, alocado ou excluído, com o flag in-use exposto.
- Os dois conjuntos de timestamps — $STANDARD_INFORMATION e $FILE_NAME — para identificar timestomping num relance.
- Os fluxos de dados alternativos associados a cada registro, incluindo Zone.Identifier.
- Os bytes $DATA residentes dos arquivos pequenos — muitas vezes a única versão recuperável após a exclusão.
- Reconstrução completa do caminho seguindo as referências pai pela tabela.
Como se compara a outros parsers MFT
Em uma workstation de análise Windows, MFTECmd é o CLI padrão e produz o CSV que Timeline Explorer e KAPE esperam. Para scripts em Linux, o CLI e a crate Rust omerbenamram/mft emitem JSON Lines. Este parser de navegador ocupa o terceiro espaço: zero instalação, roda em qualquer lugar que um navegador rode, adequado para triagem rápida e para situações em que as evidências não podem ser enviadas para um serviço em nuvem. Comparação completa no artigo Comparativo de parsers MFT.
Obter uma $MFT para analisar
$MFT fica bloqueado enquanto o Windows está em execução. Para extrair uma cópia, use fsutil em um sistema vivo, FTK Imager contra um disco físico, ou o alvo MFT do KAPE para uma coleta de triagem completa. Passo a passo em como extrair $MFT de um sistema Windows em execução.
FAQ forense
- O que é a Master File Table?
- A Master File Table ($MFT) é o índice de metadados do NTFS. Cada arquivo e diretório do volume tem ao menos um registro de 1.024 bytes em $MFT descrevendo seu nome, atributos, carimbos de tempo e onde seus dados ficam no disco.
- O que significa MFT?
- MFT significa Master File Table. No disco é escrita $MFT — o cifrão é a convenção do NTFS para arquivos de metadados.
- Quais atributos de arquivo são armazenados na Master File Table?
- Cada registro carrega $STANDARD_INFORMATION (carimbos de tempo, flags DOS), $FILE_NAME (nome e um segundo conjunto de carimbos de tempo) e $DATA (o conteúdo do arquivo ou seus cluster runs). Os registros também podem carregar $ATTRIBUTE_LIST, $OBJECT_ID, $SECURITY_DESCRIPTOR, $INDEX_ROOT, $INDEX_ALLOCATION, $BITMAP, $REPARSE_POINT, $EA e $LOGGED_UTILITY_STREAM.
- Como extraio o $MFT de um sistema Windows?
- O $MFT é o primeiro arquivo de todo volume NTFS e fica bloqueado enquanto o Windows está em execução. Use uma ferramenta forense como FTK Imager, KAPE ou o comando Windows «fsutil» para exportar uma cópia de um sistema ativo, ou leia-o diretamente de uma imagem de disco.
- Como conserto uma Master File Table corrompida?
- Faça uma imagem do disco antes de qualquer coisa. Depois rode chkdsk /f contra a imagem (rápido, pode descartar registros ilegíveis) ou use uma ferramenta de recuperação que escaneie o volume bruto por assinaturas «FILE» e remonte os registros (lento, preserva mais evidências). Nunca rode chkdsk contra o original antes da imagem.
- Esta ferramenta envia meu $MFT para algum lugar?
- Não. A análise ocorre em um Web Worker via WebAssembly. O arquivo é carregado na memória do navegador e nunca é transmitido. Desconecte a rede se quiser verificar.
- Por que algumas entradas aparecem como excluídas?
- Cada registro MFT tem um sinalizador de «em uso». Quando um arquivo é excluído, o sinalizador é apagado mas o registro permanece em $MFT até ser reutilizado. Essas entradas excluídas costumam preservar nomes recuperáveis, timestamps e até dados residentes.
- Consegue processar arquivos $MFT muito grandes?
- A análise roda em uma thread de Web Worker dedicada. O uso de memória cresce linearmente com o tamanho do arquivo. Arquivos $MFT de vários gigabytes funcionam em navegadores modernos, mas a leitura inicial para a memória leva um instante.