Zurück zu allen Beiträgen

Was sich in Windows Prefetch v30 und v31 geändert hat

Die ersten vier Bytes eines dekomprimierten SCCA-Payloads bilden eine Versionsnummer. Dieses eine Feld sagt Ihnen, welche Windows-Familie die Datei geschrieben hat und welches Header-Layout zu erwarten ist:

VersionWindowsKompressionLast-run-Slots
17XP, Vista, 7Keine1
23Windows 8Xpress Huff1
26Windows 8.1Xpress Huff8
30Windows 10Xpress Huff8
31Windows 11Xpress Huff8

Der Sprung auf v26: acht Ausführungszeiten

Die nützlichste Änderung in der gesamten Formatgeschichte kam mit Windows 8.1 (v26): Der Header bietet seither Platz für acht Last-run-Zeitstempel statt nur für einen. Vor 8.1 verriet eine Prefetch-Datei lediglich, wann das Programm zuletzt lief. Ab 8.1 bekommen Sie ein rollierendes Fenster der acht jüngsten Ausführungen, jeweils als Windows-FILETIME (u64-Intervalle zu 100 Nanosekunden seit dem 01.01.1601 UTC).

Genau dieses Feld erlaubt Analysten die Aussage „die Binary wurde in den letzten drei Tagen achtmal ausgeführt" statt nur „die Binary wurde irgendwann vor gestern ausgeführt".

v30: Windows 10

Das Windows-10-Layout (v30) verschiebt einige Offsets im File-Information-Abschnitt und strafft die Volume-Information-Records, aber die von außen sichtbaren Felder bleiben dieselben: Name, Hash, Run Count, die acht Last-run-Zeiten, Volume-Informationen sowie die File-Metric-Liste sämtlicher DLLs und Ressourcen, die die Binary angefasst hat.

Die meisten Parser brauchen innerhalb des SCCA-Payloads keine versionsspezifischen Code-Pfade jenseits des Lesens der Versionsnummer selbst — Feldbreite und -bedeutung sind identisch, nur die Positionen verschieben sich.

v31: Windows 11

Windows 11 liefert v31-Prefetch-Dateien. Die Unterschiede zu v30 sind gering — Microsoft hat einige Padding-Bytes verdichtet und dem Prefetch-Flags-Feld zusätzliche Bits spendiert. In der Praxis liest ein Parser, der v30 sauber verarbeitet, auch v31 mit höchstens einer konstanten Offset-Anpassung. Wenn Ihre Toolchain „Windows 10-Support" verspricht, an Windows-11-Dateien aber scheitert, ist meist eine zu strenge Versionsprüfung die Ursache und keine echte Format-Inkompatibilität.

Was das für Sie bedeutet

Wenn der Parser auf dieser Seite Ihnen „Ver. 31" in der Tabelle anzeigt, können Sie sich auf die acht Einträge tiefe Last-run-Historie und die vollständige File-Metric-Liste verlassen. Steht dort „Ver. 17", bekommen Sie nur einen einzigen Last-run-Zeitstempel, und die Datei stammt aus dem Bereich XP bis 7. Das Versionsfeld eignet sich außerdem zur schnellen Triage: Eine v17-Prefetch-Datei auf einem modernen Windows-10-Host ist ein starkes Indiz dafür, dass die Datei von woanders eingeschleust wurde.