AmcacheParser-Ausgabespalten erklärt: jedes CSV-Feld dekodiert
AmcacheParser schreibt eine andere CSV pro Inventory*-Kategorie.
Die meisten Analysten verbringen 90 % ihrer Zeit in zwei dieser
Dateien — *_UnassociatedFileEntries.csv und
*_AssociatedFileEntries.csv — aber jede Spalte in jeder Datei
ist potenziell nützlich. Dies ist die Referenz dafür, was jede
einzelne bedeutet.
Für den breiteren Kontext zum Tool siehe den vollständigen AmcacheParser-Leitfaden.
Die sieben CSV-Dateien#
Nach einem typischen Lauf mit --csv .\out sehen Sie:
| Datei | Quell-Schlüssel | Typische Zeilenanzahl |
|---|---|---|
*_AssociatedFileEntries.csv |
Root\InventoryApplicationFile, verknüpft mit einer InventoryApplication |
Hunderte bis Tausende |
*_UnassociatedFileEntries.csv |
Root\InventoryApplicationFile ohne Eltern-Anwendung |
Hunderte bis Tausende |
*_ProgramEntries.csv |
Root\Programs (alte Liste installierter Software) |
niedrige Hunderte |
*_ShortcutEntries.csv |
Root\InventoryApplicationShortcut |
Dutzende |
*_DriverBinaries.csv |
Root\InventoryDriverBinary |
Hunderte |
*_DevicePnps.csv |
Root\InventoryDevicePnp |
Hunderte |
*_DeviceContainers.csv |
Root\InventoryDeviceContainer |
Dutzende |
Die Unassociated-Datei ist die, auf die die meisten Analysten
zuerst pivotieren: dort landen typischerweise ad-hoc
heruntergeladene Binaries, Angreifer-Tooling und einmalige
Skripte, weil sie nie durch ein registriertes Produkt installiert
wurden.
Dateieintrags-Spalten (Associated / Unassociated)#
Die beiden Dateieintrags-CSVs teilen sich dasselbe Schema. Spalten, die Sie in fast jedem Fall verwenden werden:
Identität & Pfad#
| Spalte | Bedeutung | Hinweise |
|---|---|---|
ApplicationName |
Anzeigename, von Windows aufgelöst | Oft leer für nicht zugeordnete Einträge. |
ProgramId |
44-Zeichen-Windows-Programm-Identitäts-Hash | Pivotieren Sie zu Root\InventoryApplication, um den Datensatz des installierten Produkts zu finden. |
FileId |
"0000" + SHA-1 hex der ersten 31 MiB der Datei |
Entfernen Sie den 0000-Präfix, um einen SHA-1 zu erhalten, den Sie an VirusTotal / TI-Feeds übermitteln können. |
Hash |
Bequemkopie des SHA-1 ohne Präfix | Verwenden Sie diese Spalte, nicht FileId, wenn Sie gegen externe Hash-Feeds joinen. |
Name |
Nur Dateiname | kernel32.dll, mimikatz.exe, etc. |
FullPath |
Vollständiger Pfad zur Inventarzeit | Wenn der Pfad \Users\ oder \AppData\ enthält und Publisher leer ist, schauen Sie genau hin. |
Publisher |
Publisher-String aus der PE-Signatur / Ressource | Leer für unsignierte Binaries. |
PublisherName |
Freundlicherer Publisher-Anzeigename | Manchmal befüllt, wenn Publisher der X.509-CN ist. |
BinaryType |
Architektur / Art (pe32, pe64, pe32_arm, ...) |
Nützlich zum Filtern von nativem vs. managed PE. |
Zeitstempel#
Amcache ist eine Goldgrube an Zeitstempeln, aber sie bedeuten verschiedene Dinge. Diese Unterscheidung richtig zu machen oder Sie werden Befunde falsch datieren.
| Spalte | Was es ist | Nicht verwechseln mit |
|---|---|---|
KeyLastWriteTimestamp |
Registry-Last-Write des umschließenden Schlüssels | „Wann die Datei inventarisiert wurde." Das Naheste an einer echten „Amcache-Zeit." |
LinkDate |
PE-Header TimeDateStamp, zur Kompilier-/Link-Zeit gesetzt |
„Wann die Datei erstellt wurde" — vom Compiler gesetzt, angreiferkontrollierbar und häufig gefälscht. |
BinFileVersion / ProductVersion |
Versionsstrings aus der PE-Ressource | Das sind keine Zeitstempel. |
LastModified |
Manche Amcache-Schemata exponieren ein letztes-Änderungs-FILETIME | Nicht in jeder Schema-Version vorhanden; als Best-Effort behandeln. |
Der richtige „Wann"-Pivot für Amcache ist
KeyLastWriteTimestamp. LinkDate ist fantastisch zum
Gruppieren von Binaries (alle Binaries, die der Angreifer am
selben Tag kompiliert hat, clustern zusammen), aber es ist kein
Signal für „dieses Binary wurde zu dieser Zeit auf diesem Host
platziert".
Version / Metadaten#
| Spalte | Bedeutung |
|---|---|
BinFileVersion |
PE VS_FIXEDFILEINFO.dwFileVersion |
BinProductVersion |
PE VS_FIXEDFILEINFO.dwProductVersion |
ProductName |
PE-Ressource ProductName |
ProductVersion |
PE-Ressource ProductVersion (String-Form) |
FileVersionString |
PE-Ressource FileVersion |
Language |
PE-Ressourcen-Sprach-ID |
Size |
Dateigröße in Bytes |
Flags#
| Spalte | Bedeutung | Standard-Filter |
|---|---|---|
IsPeFile |
True, wenn Amcache die Datei als PE klassifiziert hat | Filtern Sie auf True, wenn Sie nach ausführbaren Artefakten jagen. |
IsOsComponent |
True, wenn die Datei zu Windows selbst gehört | Filtern Sie auf False, außer -i wurde übergeben; OS-Komponenten sind laut. |
Lifecycle / Inventar-Metadaten#
| Spalte | Bedeutung |
|---|---|
Usn |
USN-Journal-Eintrag, der zur Inventarzeit mit der Datei verknüpft war |
Description |
Freitext-Beschreibung, oft aus der PE-Ressource |
LongPathHash |
Hash, den Amcache intern für Pfad-Deduplizierung nutzt |
MsiInstallDate |
Wann das Eltern-MSI installiert wurde (falls vorhanden) |
MsiPackageCode |
MSI-Paket-GUID |
ProgramEntries.csv (alter Programs-Schlüssel)#
Der alte Root\Programs-Schlüssel ist älter als das
Inventory*-Schema und ist sparsamer. Die am häufigsten
verwendeten Spalten:
| Spalte | Bedeutung |
|---|---|
ProgramId |
Dieselbe 44-Zeichen-Identität, die in den Dateieintrags-CSVs verwendet wird |
LastWriteTimestamp |
Registry-Last-Write des Eintrags |
Name |
Programm-Anzeigename |
Version |
Programmversion |
Publisher |
Publisher-String |
InstallDate |
Installationsdatum (FILETIME → ISO-8601) |
LanguageCode |
LCID |
InstallSource |
Quellpfad (CD, Netzwerkfreigabe, Downloads-Ordner) |
UninstallString |
Kommandozeile, die das Programm deinstallieren würde |
RootDirPath |
Installationsverzeichnis |
Source |
MSI, AddRemoveProgram, etc. |
InstallSource ist die Geheimwaffe hier: er zeichnet manchmal die
Netzwerkfreigabe oder Download-URL auf, von der der Installer
gezogen wurde, was unbezahlbar ist, wenn Sie Lieferketten- oder
Social-Engineering-Eindringungen untersuchen.
DriverBinaries.csv#
Für Kernelmode-Artefakte. Spalten:
| Spalte | Bedeutung |
|---|---|
KeyLastWriteTimestamp |
Inventarzeit |
DriverName |
Treiber-Dateiname |
Inf |
Quell-.inf |
DriverVersion |
Treiber-Versionsstring |
Product |
Produktname aus der PE-Ressource des Treibers |
ProductVersion |
Produktversion |
WdfVersion |
Windows Driver Framework-Version, falls anwendbar |
DriverCompany |
Unternehmens-String |
DriverPackageStrongName |
Strong Name |
Service |
Verknüpfter Dienstname |
DriverSigned |
Ob der Treiber behauptete, signiert zu sein |
DriverIsKernelMode |
True für Kernelmode-Treiber |
DriverType |
legacy, pnp, service, ... |
DriverTimeStamp |
PE-Linkdatum des Treibers |
Hash |
SHA-1 des Treiber-Binaries |
Für BYOVD-Untersuchungen (Bring-Your-Own-Vulnerable-Driver),
sortieren Sie nach DriverTimeStamp und suchen Sie nach
alten-aber-signierten Treibern, die kürzlich auf dem Host
erschienen sind.
DeviceContainers.csv#
Historie verbundener Geräte. Relevanteste Spalten:
| Spalte | Bedeutung |
|---|---|
KeyLastWriteTimestamp |
Wann der Geräte-Datensatz zuletzt berührt wurde |
Categories |
Gerätekategorien (Drucker, Display, Netzwerk, ...) |
DiscoveryMethod |
Wie Windows das Gerät enumeriert hat |
FriendlyName |
„Brother HL-L2350DW", „Logitech BRIO", ... |
Manufacturer |
Vendor-String |
ModelName / ModelNumber |
Modell-Bezeichner |
IsConnected |
Zuletzt-verbunden-Flag zur Inventarzeit |
IsPaired |
Gekoppelt (Bluetooth, etc.) |
Icon |
Pfad zur Geräte-Icon-Ressource |
Diese Datei beantwortet oft „hat sich Gerät X jemals mit diesem Host verbunden?" ohne sich durch Setup-Logs wühlen zu müssen.
DevicePnps.csv#
PnP-Enumerations-Datensätze — eine Zeile pro Geräteschnittstelle. Die in DFIR nützlichsten Spalten:
| Spalte | Bedeutung |
|---|---|
KeyLastWriteTimestamp |
Wann der PnP-Datensatz zuletzt berührt wurde |
BusReportedDescription |
Was das Gerät Windows mitteilte zu sein |
DeviceClass |
Treiber-Klassen-GUID |
DeviceId / InstanceId |
PnP-Instanz-Identifikator |
Manufacturer |
Vendor-String |
Service |
Treiber-Dienst |
DriverName |
Treiber-Datei hinter dem Gerät |
Verknüpfen Sie hier InstanceId mit der passenden Zeile in
DeviceContainers.csv, um sowohl den benutzerseitigen Namen als
auch die technischen IDs zu erhalten.
ShortcutEntries.csv#
Jede Startmenü-/angepinnte Verknüpfung, die Windows kennt, mit
der entsprechenden ProgramId und dem Inventar-Zeitstempel.
Weniger für Incident Response, aber praktisch für Fragen wie „was
hatte der Benutzer am $DATE angepinnt".
Pivots, die ihr Geld verdienen#
Einige Spalten-übergreifende Muster, die immer wieder auftauchen:
-
Hash überall. Nehmen Sie
Hashaus*_UnassociatedFileEntries.csvund greppen Sie ihn in*_AssociatedFileEntries.csv, dem Prefetch-CSV des Hosts und den Sysmon-1/7-Events. Ein Binary, das in Amcache, aber nie in Prefetch auftaucht, ist „präsent, aber nie ausgeführt" — ein sehr anderer Befund als „ausgeführt". -
Publisherleer + Pfad unter\Users\. Das ist der einzelne produktivste Triage-Filter bei einer typischen Commodity-Malware-Untersuchung. -
LinkDate-Clustering. Sortieren Sie alle nicht zugeordneten PE-Einträge nachLinkDateund suchen Sie nach engen Clustern von 3–10 Binaries mit demselben Kompilier-Tag. Das ist oft ein einzelner Angreifer-Tool-Drop. -
InstallSource-URLs inProgramEntries. Wann immer Sie ein verdächtiges Programm sehen, prüfen Sie seineInstallSource— sie zeigt oft direkt auf den Auslieferungsvektor. -
KeyLastWriteTimestamp-Fenster-Join. Joinen Sie alle CSVs auf ein Ein-Stunden-Fenster um die vermutete Initial-Access-Zeit und Sie erhalten das vollständige Bild dessen, was Windows während der Eindringung inventarisiert hat.
Siehe auch#
- Vollständiger AmcacheParser-Leitfaden — die kanonische Referenz zum Tool.
- AmcacheParser-CLI-Spickzettel — die Optionen, die diese CSVs erzeugen.
- AmcacheParser-Download-Leitfaden — wo Sie das Tool bekommen.
- Amcache für Windows-Forensik verstehen — was die Hive aufzeichnet und warum es wichtig ist.
Möchten Sie diese Spalten auf Ihrer eigenen Hive sehen, ohne etwas zu installieren? Legen Sie die Datei auf die Startseite des Parsers — sie parst vollständig in Ihrem Browser.
Verwandte Beiträge
- AmcacheParser-Download-Leitfaden: offizielle Quellen, Mirrors und Verifizierung
Alle Wege, AmcacheParser von Eric Zimmerman herunterzuladen — Get-ZimmermanTools, direkter Download, KAPE, Velociraptor — mit Prüfsummen-Verifizierung und Air-Gap-Installationsmustern.
- AmcacheParser: der vollständige Leitfaden zu Eric Zimmermans Tool
Der definitive Leitfaden zu AmcacheParser — was es tut, wie man Eric Zimmermans CLI installiert und ausführt, wie man die CSV-Ausgabe liest und wann die browserbasierte Alternative die bessere Wahl ist.
- AmcacheParser-CLI-Spickzettel: jede Option, mit Praxisbeispielen
Eine praktische Kommandozeilen-Referenz für AmcacheParser von Eric Zimmerman — jede Option erklärt, mit KAPE-, Velociraptor- und PowerShell-Batch-Verarbeitungsmustern zum Kopieren und Einfügen.
- Amcache-Parser im Vergleich: AmcacheParser CLI, Browser-Tool, Volatility, RegRipper
Direkter Vergleich der vier Wege, eine Windows-Amcache.hve-Hive 2026 zu parsen — Eric Zimmermans AmcacheParser CLI, Browser-Tool, Volatility 3 und RegRipper.