Laterale Bewegung mit dem ShimCache erkennen

3 Min. Lesezeit

TL;DR. Werkzeuge für laterale Bewegung — PsExec, wmic, at/schtasks, Remote-PowerShell — hinterlassen ShimCache-Einträge auf dem Ziel-Host (die abgelegte Service-Binärdatei) und oft auf der Quelle. Den AppCompatCache über viele Hosts zu vergleichen, legt den Weg des Angreifers offen.

ShimCache wird meist als Einzel-Host-Artefakt dargestellt. Seine wahre Stärke in der IR ist aber host-übergreifend: dasselbe Werkzeug, auf jeder berührten Maschine auf Kompatibilität untersucht, hinterlässt eine korrelierbare Spur. Dieser Beitrag handelt vom Lesen dieser Spur.

Wie laterale Bewegung im ShimCache aussieht

Remote-Execution-Techniken legen eine ausführbare Datei auf dem Ziel ab oder rufen sie auf. Jede hinterlässt einen charakteristischen Pfad:

TechnikShimCache-Hinweis auf dem Ziel
PsExec / SMB-Service-ExecC:\Windows\PSEXESVC.exe oder eine zufällige 8-Zeichen-Service-Binärdatei in C:\Windows\
sc \\host createVom Angreifer benannte Service-Binärdatei, oft in C:\Windows\ oder \PerfLogs\
WMI (wmic process call create)Payload-Pfad unter C:\Windows\Temp\ oder ein beschreibbares Verzeichnis
Geplanter Task (schtasks /s)Task-Aktions-Binärdatei, häufig C:\Users\Public\
Remote-PowerShellpowershell.exe plus jede abgelegte .exe, die es bereitstellte

Eine Service-Binärdatei mit zufälligem Namen in C:\Windows\ gehört zu den signalstärksten ShimCache-Befunden überhaupt — als Triage-Regel behandelt in Malware-Hunting mit dem ShimCache.

Die Quell-Host-Seite

Der Ursprungs-Host zeigt häufig ShimCache-Einträge für das Angriffswerkzeug selbst: PsExec.exe, interaktiv genutztes wmic.exe, einen maßgeschneiderten Mover oder Post-Exploitation-Frameworks. „Tool auf Host A" mit „Service-Binärdatei auf Host B" in einem plausiblen Fenster zu paaren, ist die zentrale Lateral-Movement-Schlussfolgerung.

Der host-übergreifende Diff-Workflow

  1. Sammeln Sie SYSTEM-Hives jedes Hosts im Scope (siehe eine SYSTEM-Hive beschaffen).
  2. Parsen Sie jede und exportieren Sie nach CSV.
  3. Normalisieren Sie Pfade und diffen Sie geteilte, ungewöhnliche Binärdateien — derselbe zufällige Service-Name oder derselbe Staging-Pfad auf mehreren Hosts ist der Bewegungspfad.
  4. Ordnen Sie Hosts nach der ShimCache-Einfügereihenfolge (nicht dem Zeitstempel — das ist die Datei-mtime, keine Ereigniszeit).
  5. Untermauern Sie jeden Sprung mit Security 4624/4648, 7045-Service-Install-Ereignissen und AmCache.

Das fügt sich natürlich in eine vollständige Programmausführungs-Zeitleiste. Mappen Sie die Techniken für den Report auf ATT&CK T1021 (Remote Services) und T1570 (Lateral Tool Transfer).

Vorbehalte

ShimCache flusht nur beim sauberen Shutdown; ein noch laufender Host hat den entscheidenden Eintrag vielleicht noch nicht geschrieben — prüfen Sie den Speicher (Extraktion aus einem Speicherabbild). Und der Zeitstempel sequenziert Sprünge nie allein; verlassen Sie sich auf Einfügereihenfolge plus Ereignisprotokolle. Angreifer, die den Wert löschen, hinterlassen ihren eigenen Hinweis — siehe ShimCache-Anti-Forensik.

Um Hives schnell zu vergleichen, parsen Sie jede mit dem Shimcache Parser, exportieren CSV und vergleichen — alles clientseitig.

Weiterführende Quellen

Verwandte Artikel