Was ist Windows Prefetch? (Glossar)
Windows Prefetch ist ein Verzeichnis mit .pf-Dateien unter
C:\Windows\Prefetch\, das vom Prefetcher-Subsystem gepflegt
wird. Jede .pf-Datei wird beim ersten Ausführen eines
Binärprogramms erstellt und bei nachfolgenden Läufen aktualisiert.
Die Datei zeichnet bis zu 8 Ausführungs-Zeitstempel (10 auf
Windows 11), einen Run-Zähler und die Liste der Dateien auf, die
das Binärprogramm in seinen ersten 10 Sekunden der Ausführung
geladen hat.
Es ist das stärkste Windows-Artefakt zum Nachweis der
Ausführung. Eine .pf existiert genau dann, wenn das
Binärprogramm tatsächlich gelaufen ist (vorausgesetzt, Prefetch
ist aktiviert, was auf Windows-Desktops standardmäßig der Fall
ist).
Was jede .pf enthält#
| Feld | Wert |
|---|---|
| Name der ausführbaren Datei | Aus dem Dateinamen, z. B. NOTEPAD.EXE. |
| Pfad-Hash | Suffix am Dateinamen — kein Inhalts-Hash. |
| Run-Zähler | Wie oft das Binärprogramm gelaufen ist. |
| Letzte Run-Zeit(en) | Bis zu 8 Zeitstempel (10 auf Win 11). |
| Geladene Dateien | DLLs und Datendateien, in den ersten ~10 s referenziert. |
| Referenzierte Volumes | Quell-Volume-Seriennummern. |
Prefetch vs. Amcache#
| Prefetch | Amcache | |
|---|---|---|
| Beweist Ausführung? | Ja | Nein — nur Präsenz |
| Hash aufgezeichnet? | Nein (nur Pfad-Hash) | Ja (SHA-1) |
| Run-Zeiten aufgezeichnet? | Ja, bis zu 8/10 | Nein |
| Herausgeber / Version aufgezeichnet? | Nein | Ja |
| Überlebt Löschung des Binärprogramms? | Ja (nur Datei-Löschung) | Ja |
| Standardmäßig aktiviert? | Ja (Desktops) | Ja |
| Server-Standard üblich? | Oft deaktiviert | Aktiviert |
Für vollständige Abdeckung siehe Amcache vs Prefetch.
Wann Prefetch gewinnt#
- „Hat dieses Binärprogramm tatsächlich ausgeführt?" — die
Existenz einer
.pfist definitiv. - „Wann lief es?" — bis zu 8/10 Zeitstempel pro Binärprogramm.
- „Was hat es geladen?" — die Liste geladener Dateien zeigt oft DLLs, die der Angreifer injiziert hat.
Wann Amcache gewinnt#
- „Was ist der SHA-1?" — Prefetch hat keinen Inhalts-Hash.
- „War dieses Binärprogramm präsent, aber nie ausgeführt?" — Amcache erfasst es; Prefetch existiert nicht für nie-ausgeführte Binärprogramme.
- „Treiber-/Geräte-Beweise" — Amcache hat dedizierte Schemata; Prefetch zeichnet nur Userspace-PE-Ausführung auf.
Parsing-Tools#
- PECmd (Zimmerman) — produziert strukturierte CSV aus einem Prefetch-Verzeichnis. Das Standard-Tool zum Parsen von Windows Prefetch.
- Windows-Prefetch-Parser — ältere Python-Alternative.
Für das breitere Bild der Ausführungsbeweise siehe Amcache vs ShimCache.
Verwandte Begriffe#
- Amcache.hve — das Präsenzbeweis- Artefakt.
- ShimCache — der kernelseitige Loader-Cache.
- SRUM — das Ressourcennutzungs-Artefakt über lange Zeiträume.
Verwandte Beiträge
- Was ist SRUM (SRUDB.dat)? (Glossar)
SRUM ist der Windows System Resource Usage Monitor — eine ESE-Datenbank, die pro Anwendung CPU-, Netzwerk- und I/O-Nutzung in Stunden-Buckets über 30-60 Tage aufzeichnet.
- Was ist eine .pf-Datei vs. ein Amcache-Eintrag?
.pf-Dateien sind Windows-Prefetch-Datensätze — Beweis, dass ein Binärprogramm ausgeführt wurde, mit Run-Zeitstempeln und Listen geladener Dateien. Amcache-Einträge zeichnen Präsenz auf, mit dem SHA-1-Hash und Metadaten.
- Was ist ShimCache (AppCompatCache)? (Glossar)
ShimCache ist ein kernelseitig gepflegter Cache in der SYSTEM-Registry-Hive, der bis zu 1024 Binärprogramme aufzeichnet, die der Windows-Loader berührt hat. Anders als Amcache.
- Was ist Amcache ProgramId? (Glossar)
ProgramId ist der 44-stellige Anwendungs-Identitäts-Hash, den Amcache jeder logischen Anwendung zuweist. Dieselbe ProgramId auf verschiedenen Hosts bedeutet dieselbe Anwendungsinstallation.