Windows-Prefetch-Parser im Vergleich
Für das Auslesen von Prefetch-Dateien gibt es gute Open-Source-Tools. Keines davon ist für jeden Workflow die richtige Antwort. Hier erfahren Sie, worauf jedes Tool optimiert ist, was es weglässt und wann Sie zwischen ihnen wechseln sollten.
PECmd (Eric Zimmerman)
PECmd ist der De-facto-
Standard auf der Kommandozeile in DFIR. Geschrieben in .NET, läuft
unter Windows, wird sowohl als CLI als auch als Bibliothek
(Prefetch.dll) ausgeliefert. Unterstützt jede SCCA-Version von XP bis
Windows 11.
Stärken: vollständige Feldabdeckung, einschließlich der
File-Metric-Flags, Trace-Chains und der Verzeichnis-Stringlisten pro
Datei. CSV/JSON-Ausgabe, sauber in Erics Triage-Suite (KAPE)
integriert.
Schwächen: nur unter Windows. Der .NET-Startaufwand macht die Verarbeitung Datei für Datei langsam, wenn man iteriert; üblicherweise arbeitet man ordnerweise im Batch. Die CSV-Ausgabe ist dicht — nützlich für nachgelagertes Tooling, weniger für die Sichtprüfung auf einen Blick.
Am besten geeignet für: skriptgesteuerte DFIR-Pipelines, KAPE-Module, alles, was einen strukturierten Datensatz erzeugt, den ein weiteres Tool weiterverarbeitet.
WinPrefetchView (NirSoft)
WinPrefetchView
von NirSoft ist die klassische Windows-GUI zum Durchsehen eines lokalen
Prefetch\-Ordners.
Stärken: keinerlei Einarbeitung, sofortige visuelle Antwort auf „Was lief?". Rechtsklick-Kontextmenü für Eigenschaften, ausgewählte Einträge speichern, HTML-Berichte erzeugen.
Schwächen: nur unter Windows. Keine strukturierte Ausgabe jenseits von einfachem HTML oder tabseparierter Kopie. Etwas in die Jahre gekommen — Oberfläche und Funktionsumfang haben sich seit Langem kaum bewegt. Nicht ideal für die Stapelverarbeitung oder für Systeme, auf denen das Ausführen unsignierter Utilities eingeschränkt ist.
Am besten geeignet für: schnelle Triage auf einer
Windows-Analystenmaschine, wenn der Prefetch\-Ordner bereits
exportiert vorliegt.
libscca / scca-Tools (libyal)
libscca ist die plattform- übergreifende C-Bibliothek hinter mehreren Tool-Ketten (Plaso, log2timeline). Sie veröffentlicht außerdem die gründlichste öffentliche Dokumentation des SCCA-Formats.
Stärken: plattformübergreifend, gut dokumentiert, in
Bibliotheksqualität geschrieben. Python-Bindings existieren über
pyscca. Das mitgelieferte CLI sccainfo gibt pro Datei einen sauberen
Textdump aus.
Schwächen: keine GUI, keine eingebaute Stapel-Berichterstattung; die Ausgabe ist standardmäßig eher menschenlesbar als maschinenfreundlich.
Am besten geeignet für: den Bau eigener Tools, insbesondere auf Nicht-Windows-Analysehosts. In Kombination mit Plaso für die Timeline-Integration.
Browserbasierte Parser
Browserbasierte Parser — einschließlich dieses hier — laden einen in reinem Rust geschriebenen, zu WebAssembly kompilierten SCCA-Decoder und führen ihn in einem Web Worker aus. Keine lokale Installation, keine Windows-Voraussetzung, die Dateien verlassen den Browser nie.
Stärken: keinerlei Installation, läuft auf jedem Betriebssystem und auf jedem Gerät, keine Chain-of-Custody-Probleme durch das Versenden von Beweismaterial an Dritte (weil eben nichts versendet wird). Sortierbare und durchsuchbare Tabelle, Detailpanel zum Aufklappen, JSON-Export. Nützlich für die spontane Triage, wenn Ihre gewohnte Tool-Kette nicht zur Hand ist.
Schwächen: hängt für die SCCA-Versionsabdeckung von der Aktualität des zugrunde liegenden Rust-Crates ab. Weniger anpassbar als das Skripten gegen PECmd oder libscca direkt.
Am besten geeignet für: schnelle Triage, das Teilen von Befunden
mit Nicht-DFIR-Kollegen, den Einsatz auf restriktiv konfigurierten
Workstations, auf denen die Installation von Analyse-Tools nicht
erlaubt ist, oder einfach das Ende-zu-Ende-Verifizieren einer einzelnen
.pf-Datei.
Welches Tool wann
Ein sinnvoller Workflow:
- Erster Blick — Ziehen Sie den Ordner in den Browser-Parser, um schnell zu triagieren und die Zeilen zu identifizieren, die Sie genauer betrachten wollen.
- Massensicherung — Lassen Sie PECmd über denselben Ordner laufen, um einen CSV/JSON-Feed für Ihre Fall-Timeline zu erzeugen.
- Detail in Beweisqualität — Für jede einzelne
.pf-Datei, die Sie sauber dokumentieren müssen, lassen Sie sowohl PECmd als auchsccainfolaufen und vergleichen die Ergebnisse. Das Format ist ausreichend wohldefiniert, dass zwei unabhängige Parser übereinstimmen sollten; Abweichungen verdienen Aufmerksamkeit.
Kein einzelnes Tool ist eine vollständige Antwort, aber die Kombination aus einem Browser-Parser für die Triage und PECmd oder libscca für die archivierungsfähige Ausgabe deckt nahezu jede Prefetch-Frage ab, die in der Praxis auftritt.