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 .pf ist 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.

Zurück zu allen Beiträgen