Was ist Shimcache (AppCompatCache)? (Glossar)

Shimcache (auch AppCompatCache genannt) ist der vom Kernel verwaltete Cache, der bis zu 1024 PE-Binaries aufzeichnet, die der Windows-Loader berührt hat, mit Dateipfad, Änderungs-Zeitstempel und einem Ausführungs-Flag. Er lebt als einzelner Binärwert in der Hive SYSTEM. Älter als Amcache. Kleiner. Spärlicher. Wird ständig mit Amcache verwechselt, und die Verwechslung erzeugt falsche Befunde.

Die wichtigsten Unterschiede: Shimcache ist kürzer, hash-los, vom Kernel verwaltet und wird beim Herunterfahren geschrieben. Amcache ist länger, trägt Hashes, wird im User-Mode verwaltet und kontinuierlich geschrieben.

Shimcache vs Amcache#

Shimcache Amcache
Speicher SYSTEM-Hive, einzelner Binärwert Eigenständige Amcache.hve
Verwalter Kernel-Loader Geplante Aufgabe im User-Mode (Appraiser)
Max. Einträge 1024 (LRU) Effektiv unbegrenzt
Hash Keiner SHA-1 der ersten 31 MiB
Hersteller / Version Keiner Ja
ProgramId Keine Ja
Frisch auf laufendem System Nein (braucht Shutdown oder Speicher) Ja
Verfügbar vor Win 8 Ja (seit XP) Nein
Kadenz auf Server Aktiv Oft sehr langsam

Für vollständige Abdeckung siehe Amcache vs Shimcache.

Wann Shimcache gewinnt#

  • „Hat der Loader diese Binary berührt?" Das gesamte Aufgabengebiet von Shimcache.
  • Nur-Speicher-Akquisitionen. shimcachemem von Volatility extrahiert sauber aus einem RAM-Dump.
  • Hosts vor Win-10-1709, auf denen das moderne Amcache-Schema noch nicht existiert.
  • Gehärtete Hosts mit deaktiviertem Appraiser. Shimcache wird vom Kernel verwaltet; ein abgeschalteter Appraiser betrifft ihn nicht.

Wann Amcache gewinnt#

  • Hashes für VirusTotal. Shimcache kann nicht helfen.
  • Host-übergreifende Suchen. Shimcache hat keinen Hash und keine ProgramId, nur Pfade.
  • Treiber- und Geräte-Nachweis. Shimcache ist nur Userspace-PE.
  • Triage auf einem laufenden System. Amcache ist auf der Festplatte aktuell; Shimcache ist bis zum Neustart veraltet.

Verwenden Sie beide#

Immer. Sie bestätigen sich gegenseitig:

  • In beiden: starker „präsent und vom Loader berührt"-Befund.
  • Nur Shimcache: Der Loader hat ihn berührt, aber der Appraiser ist nicht dazugekommen, oder der Appraiser ist aus.
  • Nur Amcache: präsent, aber der Loader hat ihn im aktuellen 1024-Einträge-Fenster nicht berührt, oder Shimcache ist umgelaufen.

Verwandte Begriffe#

Verwandte Beiträge

  • Was ist SRUM (SRUDB.dat)? (Glossar)

    SRUM ist die ESE-Datenbank, mit der Windows die Ressourcennutzung pro Anwendung stündlich über 30 bis 60 Tage verfolgt. Das einzige Windows-Artefakt mit Netzwerk-Byte-Summen pro App. Kritisch für Exfiltration.

  • Was ist Amcache ProgramId? (Glossar)

    ProgramId ist der 44-Zeichen-Anwendungs-Identitätshash, den Amcache speichert. Über Hosts hinweg stabil bei derselben Installation. Erwischt Neukompilierungen und Umbenennungen, wo Hash daneben liegt.

  • Was ist Windows Prefetch? (Glossar)

    Windows Prefetch ist das Verzeichnis der .pf-Dateien, das Ausführung beweist. Bis zu 8-10 Laufzeiten pro Binary plus die in den ersten zehn Sekunden geladenen Dateien. Der stärkste Windows-Ausführungsnachweis.

  • Was ist LinkDate in Amcache? (Glossar)

    LinkDate ist der PE-TimeDateStamp. Angreiferkontrollierbar. Verwenden Sie ihn für Build-Clustering, nicht für Host-Zeitlinien.

Zurück zu allen Beiträgen