
Forensik-Tool für NTFS (parser, mft, bitlocker, gelöschte Dateien)
NTFSTool ist ein forensisches Werkzeug, das sich auf NTFS-Volumes konzentriert. Es unterstützt das Lesen von Partitionsinformationen (MBR, Partitionstabelle, VBR) sowie Informationen zur Master File Table, Bitlocker-verschlüsselten Volumes, EFS-verschlüsselten Dateien, USN-Journal und mehr.
Laden Sie die neuesten Binärdateien von AppVeyor herunter oder überprüfen Sie die letzten GitHub Artefakte.
Siehe unten für einige Beispiele der Funktionen!
Eine alternative Dokumentation von deepwiki ist hier verfügbar: https://deepwiki.com/thewhiteninja/ntfstool/
NTFSTool zeigt die vollständige Struktur des Master Boot Record, Volume Boot Record, Partitionstabelle und $MFT-Dateieintrags an. Es ist auch möglich, beliebige Dateien (sogar $MFT oder SAM) zu dumpen oder USN-Journal, LogFile einschließlich Streams von Alternate Data Stream (ADS) zu parsen und analysieren. $MFT kann als CSV oder JSON mit Zone.Identifier-Parsing ausgegeben werden, um heruntergeladene Dateien schnell zu identifizieren. Der Undelete-Befehl sucht nach Dateieinträgen, die als „nicht in Gebrauch“ markiert sind, und ermöglicht Ihnen, die Datei (oder einen Teil der Datei, falls sie bereits überschrieben wurde) wiederherzustellen. Es unterstützt Eingaben von Image-Dateien, Live-Datenträgern oder virtuellen Datenträgern wie VeraCrypt und TrueCrypt, aber Sie können auch Werkzeuge wie OSFMount verwenden, um Ihr Datenträgerabbild zu mounten. Sparse- und komprimierte Dateien (lznt1, xpress) werden ebenfalls unterstützt.
Für eine Bitlocker-verschlüsselte Partition kann es FVE-Datensätze anzeigen, ein Passwort und einen Schlüssel (bek, Passwort, Wiederherstellungsschlüssel) überprüfen, VMK und FVEK extrahieren. Es gibt keine Brute-Force-Funktion, da GPU-basiertes Knacken besser ist (siehe Bitcracker und Hashcat), aber Sie können den Hash für diese Tools erhalten.
Masterkeys, private Schlüssel und Zertifikate können mit den erforderlichen Eingaben (SID, Passwort) aufgelistet, angezeigt und entschlüsselt werden. Zertifikate mit privaten Schlüsseln können mit dem Backup-Befehl exportiert werden.
Importieren Sie das Backup auf einem anderen Rechner, um Ihre verschlüsselte Datei erneut lesen zu können! Oder Sie können den Befehl efs.decrypt verwenden, um eine Datei mit dem gesicherten Schlüssel zu entschlüsseln.
Weitere Informationen im Mimikatz-Wiki
USN-Journaldatensätze können mit benutzerdefinierten Regeln analysiert werden, um verdächtige Programme und Aktionen zu erkennen, aber auch um einen Überblick über das Journal zu erhalten (% der gelöschten, erstellten Dateien ...)
Default rules: Rules/default.json``` { "id": "lsass-dump", "description": "Dumped LSASS.exe process.", "severity": "high", "rule": { "filename": "lsass(\.(dmp|dump))?" } }
Siehe ein Beispiel für die Ausführung hier: [usn.analyze](#usn-analyze)
### Shell
Es gibt eine begrenzte Shell mit wenigen Befehlen (exit, cd, ls, cat, pwd, cp, quit, rec).
Der Befehl `rec` zeigt die Details des MFT-Eintrags an.
## Hilfe und Beispiele
Der Hilfe-Befehl zeigt Beschreibung und Beispiele für jeden Befehl an.
Optionen können als Dezimal- oder Hexadezimalzahl mit dem Präfix "0x" eingegeben werden (z.B.: inode).
ntfstool help [command]
| Befehl | Beschreibung |
| --- | --- |
| [info](#info) | Zeigt Informationen für alle Datenträger und Volumes an |
| [mbr](#mbr) | Zeigt MBR-Struktur, Code und Partitionen für einen Datenträger an |
| [gpt](#gpt) | Zeigt GPT-Struktur, Code und Partitionen für einen Datenträger an |
| [vbr](#vbr) | Zeigt VBR-Struktur und Code für ein angegebenes Volume an (unterstützt ntfs, fat32, fat1x, bitlocker) |
| [extract](#extract) | Extrahiert eine Datei aus einem Volume. |
| [image](#image) | Erstellt eine Image-Datei eines Datenträgers oder Volumes. |
| [mft.dump](#mft-dump) | Gibt die $MFT-Datei im angegebenen Format aus: csv, json, raw. |
| [mft.record](#mft-record) | Zeigt Details des FILE-Eintrags für einen angegebenen MFT-Inode an. Fast alle Attributtypen werden unterstützt |
| [mft.btree](#mft-btree) | Zeigt VCN-Inhalt und Btree-Index für einen Inode an |
| [bitlocker.info](#bitlocker-info) | Zeigt Informationen und Hash ($bitlocker$) für alle VMK an. Testen Sie ein Passwort oder einen Wiederherstellungsschlüssel. |
| [bitlocker.decrypt](#bitlocker-decrypt) | Entschlüsselt ein Volume in eine Datei mit Passwort, Wiederherstellungsschlüssel oder bek. |
| [bitlocker.fve](#bitlocker-fve) | Zeigt Informationen für den angegebenen FVE-Block an. |
| [efs.backup](#efs-backup) | Exportiert EFS-Schlüssel im PKCS12 (pfx)-Format. |
| [efs.decrypt](#efs-decrypt) | Entschlüsselt EFS-verschlüsselte Datei mit Schlüsseln im PKCS12 (pfx)-Format. |
| [efs.certificate](#efs-certificate) | Listet, zeigt und exportiert Systemzertifikate (SystemCertificates/My/Certificates). |
| [efs.key](#efs-key) | Listet, zeigt, entschlüsselt und exportiert private Schlüssel (Crypto/RSA). |
| [efs.masterkey](#efs-masterkey) | Listet, zeigt und entschlüsselt Masterschlüssel (Protect). |
| [reparse](#reparse) | Analysiert und zeigt Reparse Points aus \$Extend\$Reparse an. |
| [logfile.dump](#logfile-dump) | Gibt die $LogFile-Datei im angegebenen Format aus: csv, json, raw. |
| [usn.analyze](#usn-analyze) | Analysiert die $UsnJrnl-Datei mit angegebenen Regeln. Ausgabe : csv oder json. |
| [usn.dump](#usn-dump) | Gibt die $UsnJrnl-Datei im angegebenen Format aus: csv, json, raw. |
| [shadow](#shadow) | Listet Volumen-Schattenkopien von ausgewähltem Datenträger und Volume auf. |
| [streams](#streams) | Zeigt alternative Datenströme an |
| [undelete](#undelete) | Sucht und extrahiert gelöschte Dateien für ein Volume. |
| [shell](#shell-1) | Startet eine begrenzte Unix-ähnliche Shell |
| [smart](#smart) | Zeigt S.M.A.R.T-Daten an |
## Einschränkungen
- Einige nicht unterstützte Fälle. In Arbeit.
- Keine Dokumentation :no_mouth:.
Sie können gerne ein Issue eröffnen oder nach einer neuen Funktion fragen!