Un parser MFT è uno strumento che legge $MFT — la Master File Table alla radice di ogni volume NTFS — e trasforma i suoi record da 1.024 byte in qualcosa che un umano o uno strumento a valle possa sfruttare: CSV, JSON, una timeline, un indice ricercabile. Tre progetti contano in pratica. Questo articolo li confronta onestamente e indica quando ognuno è la scelta giusta.
MFTECmd (Eric Zimmerman)
MFTECmd è lo standard di fatto nella risposta a incidenti. È un CLI .NET esclusivo Windows, gratuito, che analizza $MFT, $Boot, $J (il change journal $UsnJrnl:$J), $SDS (il flusso di descrittori di sicurezza da $Secure) e $LogFile. L'output è CSV nel layout body-file atteso dagli altri strumenti di Eric Zimmerman (Timeline Explorer, KAPE, RECmd).
Da usare quando:
- Siete su una workstation di analisi Windows.
- Volete un CSV apribile in Timeline Explorer per fare pivot in modo interattivo.
- State usando KAPE — MFTECmd è il parser integrato nel target
MFT. - Avete bisogno di analizzare
$Jnello stesso workflow.
Da evitare quando: siete su macOS o Linux senza runtime .NET, o volete integrare l'analisi in un altro programma.
Un GUI compagno, MFT Explorer, naviga $MFT in modo interattivo in una vista ad albero. La maggior parte degli analisti usa entrambi: MFTECmd per l'analisi batch, MFT Explorer quando devono inseguire un record specifico.
omerbenamram/mft (crate Rust + CLI)
Il crate omerbenamram/mft è la libreria di parsing usata da questo sito. È disponibile sia come dipendenza Rust (cargo add mft) sia come CLI autonomo (mft_dump). Il CLI emette CSV o JSON; la libreria espone la struttura completa del record per un uso programmatico.
Da usare quando:
- Volete integrare il parsing MFT in un pipeline Rust più ampio, un server o un target WebAssembly.
- Volete output JSON da convogliare in
jq, OpenSearch o un database personalizzato. - Siete su Linux o macOS e non volete installare .NET.
- Volete un parser auditabile — il codice è piccolo, Rust idiomatico, e il corpus di test è nel repo.
Da evitare quando: volete un'esperienza analista chiavi in mano con GUI e strumentazione di timeline integrata.
Il crate è ciò che gira, compilato in WebAssembly, dietro il parser nel browser della homepage.
Analisi nel browser (questo sito)
Il parser di questo sito prende il crate omerbenamram/mft, lo compila in WebAssembly e lo esegue in un Web Worker. Trascinate un file $MFT sulla pagina e i record appaiono in una tabella paginata e ricercabile. Niente viene caricato; il binario resta nella memoria del vostro browser.
Da usare quando:
- Volete leggere rapidamente un
$MFTsenza installare nulla. - Le policy vietano di inviare prove a un servizio cloud. L'analisi WebAssembly avviene localmente — potete verificarlo disconnettendo la rete prima di trascinare il file.
- Volete condividere una vista di triage con un collega che non ha una toolchain forense installata.
- State facendo una dimostrazione o insegnando la struttura NTFS e volete un sandbox interattivo.
Da evitare quando: avete un $MFT di diversi gigabyte proveniente da un server molto utilizzato (il modello in memoria scala linearmente) o avete bisogno di output integrati in un pipeline Eric Zimmerman più ampio.
Confronto
| Caratteristica | MFTECmd | omerbenamram/mft | Parser browser |
|----------------|---------|------------------|----------------|
| Piattaforma | Windows (.NET) | Linux / macOS / Windows / WebAssembly | Qualsiasi browser moderno |
| Installazione | Un binario | cargo install o download | Nessuna |
| Output | CSV (schema Timeline Explorer) | CSV / JSON | Tabella interattiva + export CSV |
| $UsnJrnl:$J | Sì | No (crate separato omerbenamram/usn) | Il parser browser collega una vista $J |
| $LogFile | Sì | No | No |
| Scriptabile | Solo CLI | Libreria + CLI | No (guidato dall'UI) |
| Privacy | Locale | Locale | Locale (verificabile per isolamento di rete) |
Quale scegliere?
Per un intervento IR di routine su una workstation Windows: MFTECmd. È il percorso di minor sorpresa e si integra con KAPE e Timeline Explorer.
Per un pipeline che ingerisce molti dischi, gira su Linux o vuole JSON: omerbenamram/mft. Il CLI è veloce e la libreria è il modo più pulito per aggiungere il parsing MFT al vostro strumento.
Per un triage occasionale, una situazione di rete ostile, un'aula o un collega senza macchina forense: il parser browser di questo sito.
I tre sono complementari. La maggior parte degli esaminatori esperti afferra quello che si adatta al momento invece di impegnarsi su uno solo.