Was ist der Unterschied zwischen Amcache und AppCompatCache?
AppCompatCache (üblicherweise ShimCache genannt) und Amcache sind verschiedene Windows-Artefakte, die beide PE-Binärprogramme auf einem Host aufzeichnen. Sie werden ständig verwechselt, weil beide in der Application-Compatibility-Infrastruktur leben — aber es sind verschiedene Mechanismen mit unterschiedlichen Grenzen und sehr unterschiedlichem forensischen Wert.
Die wichtigsten Unterschiede:
ShimCache ist kürzer, dünner, kernelseitig gepflegt und vom Loader aktualisiert. Amcache ist länger, reicher, im User-Mode gepflegt und von einem geplanten Task aktualisiert.
Direkter Vergleich#
| Eigenschaft | AppCompatCache (ShimCache) | Amcache |
|---|---|---|
| Speicherung | SYSTEM-Hive, einzelner binärer Wert |
Eigenständige Amcache.hve |
| Registry-Pfad | HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache\AppCompatCache |
C:\Windows\AppCompat\Programs\Amcache.hve |
| Pfleger | Kernel-Loader | Geplanter Task im User-Mode (Appraiser) |
| Max. Einträge | 1024 (LRU-Verdrängung) | Praktisch unbegrenzt |
| Hash aufgezeichnet? | Nein | Ja (SHA-1 der ersten 31 MiB) |
| Herausgeber / Version aufgezeichnet? | Nein | Ja |
ProgramId aufgezeichnet? |
Nein | Ja |
| Treiber-/Gerätedaten aufgezeichnet? | Nein | Ja (separate Schlüssel) |
| Persistenz auf Disk | Beim Herunterfahren | Kontinuierlich (mit Transaktionsprotokollen) |
| Frisch auf Live-System verfügbar? | Nein (Herunterfahren oder Speicher nötig) | Ja |
| Verfügbar vor Windows 10 1709? | Ja (seit Windows XP) | Teilweise (nur Legacy-Schema) |
| Standardmäßig auf Server aktiviert? | Ja | Ja (aber langsamerer Takt) |
Für vollständige Abdeckung siehe Amcache vs ShimCache.
Wann ShimCache gewinnt#
- „Hat der Loader dieses Binärprogramm berührt?" ShimCache zeichnet Loader-Berührungen auf; Amcache zeichnet vom Appraiser inventarisierte Präsenz auf. Das sind unterschiedliche Signale.
- Nur-Speicher-Akquisen. Das
shimcachemem-Plugin von Volatility extrahiert ShimCache sauber aus dem RAM. - Pre-Windows-10-Hosts. ShimCache gibt es seit Windows XP.
- Gehärtete Hosts mit deaktiviertem Appraiser. ShimCache wird vom Kernel gepflegt; es bleibt erhalten, auch wenn der Appraiser aus ist.
Wann Amcache gewinnt#
- Hash-Pivots. ShimCache hat keinen Hash; Amcache hat SHA-1.
- Cross-Host-Suchen. ShimCache hat keine
ProgramIdund keinen Hash — Cross-Host-Pivots unmöglich. Amcache hat beides. - Treiber-/Geräte-Beweise. ShimCache deckt nur User-Mode-PE ab. Amcache hat dedizierte Treiber- und Geräte-Schemata.
- Triage auf einem Live-System. Amcache ist auf der Disk aktuell; ShimCache ist bis zum Neustart veraltet.
Wann Sie beide verwenden sollten#
Immer. Die beiden Artefakte erhärten sich gegenseitig:
- Ein Binärprogramm in beiden → Loader hat es berührt UND der Appraiser hat es aufgezeichnet. Starker „das war präsent und in Gebrauch"-Befund.
- Ein Binärprogramm nur in ShimCache → Loader hat es berührt, aber der Appraiser hat es noch nicht inventarisiert, ODER die Datei lag in einem Pfad, den der Appraiser nicht scannt, ODER der Appraiser ist deaktiviert.
- Ein Binärprogramm nur in Amcache → präsent und inventarisiert, aber der Loader hat es nicht berührt (im aktuellen 1024-Fenster von ShimCache), ODER ShimCache wurde gewischt oder rotiert.
Beide auf einem Host abwesend, auf dem Sie ein Binärprogramm erwarten würden = das stärkste „das ist nie passiert"-Signal, das Sie aus diesen beiden Artefakten bekommen. Für Ausführungsbeweis paaren Sie es mit Prefetch.
Verwandt#
- Vollständige Amcache-Referenz
- Amcache vs ShimCache — der vollständige Vergleich.
- ShimCache-Glossar.
- AppCompatCache-Parsing mit Zimmermans Tool.
Verwandte Beiträge
- Amcache vs ShimCache: wann welches Artefakt gewinnt
ShimCache und Amcache zeichnen beide Binärprogramme auf, die einen Windows-Host berührt haben. Es sind unterschiedliche Mechanismen mit unterschiedlichen Grenzen — hier ist, wann man was verwendet und was ihre Überschneidung tatsächlich beweist.
- Warum ist meine Amcache.hve leer?
Drei häufige Ursachen: Der Compatibility Appraiser ist deaktiviert, der Host wurde frisch installiert oder Sie sammeln von einem Server / Server Core, auf dem der Appraiser viel seltener läuft.
- Wo ist der Amcache-Registry-Schlüssel?
Amcache ist eine eigene Hive-Datei unter C:\Windows\AppCompat\Programs\Amcache.hve — kein Schlüssel unter HKLM. Beim Laden durch Tools oder durch Windows selbst wird sie als HKLM\Amcache eingehängt.
- Was enthält Amcache.hve?
Amcache.hve enthält Inventar-Datensätze für jedes PE-Binärprogramm, jeden Treiber und jedes verbundene Gerät, das der Windows Compatibility Appraiser gesehen hat — mit SHA-1-Hashes, Pfaden, Herausgebern und Zeitstempeln.