Kurzfassung: Mimikatz ist das bekannteste Werkzeug, um Passwort-Hashes und Kerberos-Tickets direkt aus dem Speicher von lsass.exe zu lesen. Für Verteidiger ist entscheidend: Egal welches Werkzeug, der Zugriff auf LSASS ist der gemeinsame und gut sichtbare Schritt. Erkennung: der Prozesszugriff auf lsass.exe mit lesenden Rechten in Sysmon 10 (Feld GrantedAccess), die entstehende Dump-Datei in Sysmon 11, die bekannte LOLBin-Methode über comsvcs.dll in Sysmon 1, ein Fund durch Defender in Event 1116 und eine blockierende ASR-Regel in Event 1121. Zwei Sigma-Regeln, Test nur im Lab und als stärkste Gegenmaßnahme LSA Protection und Credential Guard. Serie „Angriff erkennen“.
Mimikatz erkennen ist die Erkennung, an der ein ganzer Vorfall hängt. Wer die Anmeldedaten aus dem Speicher eines Systems liest, hat damit oft den Schlüssel zu vielen weiteren Systemen und im schlechtesten Fall zur ganzen Domäne. Das Werkzeug der Wahl heißt seit Jahren Mimikatz, aber die Technik dahinter ist allgemeiner: T1003.001 (OS Credential Dumping: LSASS Memory) beschreibt das Auslesen des Prozesses lsass.exe, in dem Windows die Anmeldeinformationen angemeldeter Benutzer hält. Für ein Blue Team ist die gute Nachricht, dass dieser Zugriff schwer zu verstecken ist: Bevor irgendein Werkzeug den Speicher lesen kann, muss es ein Handle auf lsass.exe öffnen, und genau das lässt sich protokollieren. Dieser Beitrag aus der Serie „Angriff erkennen“ zeigt aus Verteidigersicht, welche Spuren das Dumping hinterlässt, mit Logquellen, dem Muster, zwei Sigma-Regeln, dem Test im Lab und der Härtung, die den Angriff gar nicht erst zulässt. Die Kerberos-Grundlagen dazu stehen unter Kerberos verstehen.
Was der Angreifer tut
Nach der Rechteausweitung zu lokalem Administrator oder SYSTEM will der Angreifer Anmeldeinformationen, um sich weiterzubewegen. lsass.exe (Local Security Authority Subsystem Service) hält diese Informationen für die aktiven Sitzungen im Speicher: NTLM-Hashes, Kerberos-Tickets und bei älteren Konfigurationen sogar Klartextpasswörter. Die Wege dorthin unterscheiden sich im Werkzeug, nicht im Prinzip, und sind bewusst nur auf Prinzipebene beschrieben:
- Direktes Auslesen des Speichers. Mimikatz und vergleichbare Werkzeuge öffnen lsass.exe mit Leserechten und lesen die Anmeldeinformationen direkt aus dem Prozessspeicher. Das ist der klassische Weg und erzeugt den charakteristischen Zugriff mit bestimmten Zugriffsmasken.
- Speicherabbild per Bordmittel. Statt den Speicher direkt zu lesen, erzeugen Angreifer oft erst ein vollständiges Abbild von lsass.exe als Datei und werten es später auf einem anderen System aus. Dafür genügen Windows-eigene Programme, etwa die Bibliothek comsvcs.dll mit ihrer MiniDump-Funktion oder Werkzeuge aus der Sysinternals-Suite. Das vermeidet das bekannte Mimikatz-Binary auf dem Zielsystem, erzeugt aber dieselbe LSASS-Zugriffsspur und zusätzlich eine Dump-Datei.
- Umbenannte und reflektiv geladene Werkzeuge. Um Signaturen zu entgehen, wird das Werkzeug umbenannt oder direkt im Speicher ausgeführt, ohne als Datei auf der Platte zu landen. Das ändert den Dateinamen, nicht aber den Zugriff auf lsass.exe und oft erkennbar die Aufrufkette.
Der gemeinsame Nenner aller Wege ist der Zugriff auf lsass.exe mit Rechten, die das Lesen des Speichers erlauben. Genau dort setzt die Erkennung an, unabhängig vom Namen des Werkzeugs.
Welche Logquellen die Technik zeigt
| Schritt des Angreifers | Primäre Quelle | Ergänzend |
|---|---|---|
| Zugriff auf lsass.exe | Sysmon 10 mit TargetImage lsass.exe und der Zugriffsmaske in GrantedAccess | Sicherheits-Log 4656 und 4663 mit SACL auf den Prozess |
| Speicherabbild als Datei | Sysmon 11 für eine neue .dmp-Datei kurz nach dem Zugriff | 4663 auf das Verzeichnis, wenn die Objektüberwachung gesetzt ist |
| LOLBin-Methode (comsvcs.dll) | Sysmon 1 oder 4688 mit rundll32.exe, comsvcs.dll und MiniDump in der Befehlszeile | Elternprozess und Benutzerkontext im selben Event |
| Bekanntes Werkzeug auf der Platte | Event 1116 (Defender-Fund) und Event 1117 (ergriffene Maßnahme) | ein Fund von Mimikatz bedeutet: ein Mensch arbeitet aktiv |
| Blockierter Zugriff durch Härtung | Event 1121 (ASR-Regel gegen LSASS-Diebstahl hat blockiert) | zugleich Alarm und Prävention |
Die Tabelle zeigt den Vorteil dieser Technik: Sie ist mehrfach abgesichert. Selbst wenn der eine Weg (direkter Zugriff) durch eine Allowlist verrauscht ist, bleiben die Dump-Datei, die LOLBin-Befehlszeile und der Defender-Fund. Welche Felder jedes Ereignis liefert, steht in der Referenz zu den Event-IDs; die Konfiguration von Sysmon im Beitrag zu Sysmon.
Das Muster im Log
Der Schlüssel liegt im Feld GrantedAccess von Sysmon 10, der Bitmaske der gewährten Zugriffsrechte. Entscheidend ist das Leserecht auf den Speicher (PROCESS_VM_READ, Bit 0x10). Werkzeuge zum Auslesen fordern typische Kombinationen an, etwa 0x1010 oder 0x1410; ein vollständiges Abbild läuft oft über 0x1fffff (Vollzugriff). Drei Fragen trennen den Angriff von legitimen Zugriffen:
- Welcher Prozess greift zu? EDR, Virenscanner, Backup und einige Windows-Komponenten greifen regelmäßig auf lsass.exe zu und sind bekannt. Ein Zugriff aus einem Office-Programm, einer Shell, rundll32.exe oder einem unsignierten Binary ist es nicht. Die Allowlist arbeitet mit vollständigen Pfaden und Signaturprüfung, nicht mit Prozessnamen, weil Namen sich ändern lassen.
- Mit welchen Rechten? Ein reiner Informationszugriff (0x1000) ist meist harmlos, das Leserecht auf den Speicher ist das Signal. Die Regel filtert auf die lesenden Masken statt auf jeden Zugriff.
- Was sagt die Aufrufkette? Einträge mit UNKNOWN im CallTrace deuten auf Code hin, der nicht aus einer geladenen Bibliothek stammt, also auf injizierten oder reflektiv geladenen Code, wie ihn speicherbasierte Werkzeuge erzeugen.
Zusammen mit einer kurz darauf erzeugten Dump-Datei wird aus dem Zugriff ein nahezu sicherer Treffer.
Zwei Sigma-Regeln
Die erste Regel erkennt den lesenden Zugriff auf lsass.exe über die typischen Zugriffsmasken, die zweite die LOLBin-Methode über comsvcs.dll. Beide sind bewusst einfach gehalten; die Allowlist der ersten Regel wird um die eigenen Sicherheitswerkzeuge mit vollständigem Pfad ergänzt.
title: Verdaechtiger lesender Zugriff auf LSASS
id: 7957ccab-e11c-47ea-b290-8ea91b27d754
status: experimental
description: Erkennt Prozesszugriffe auf lsass.exe mit Zugriffsrechten, wie sie
Mimikatz und andere Credential-Dumping-Tools anfordern. Die Allowlist wird um
die eigenen Sicherheitswerkzeuge mit vollstaendigem Pfad ergaenzt.
references:
- https://attack.mitre.org/techniques/T1003/001/
author: blue-team.net
tags:
- attack.credential-access
- attack.t1003.001
logsource:
product: windows
category: process_access
detection:
selection:
TargetImage|endswith: '\\lsass.exe'
GrantedAccess:
- '0x1010'
- '0x1410'
- '0x1438'
- '0x143a'
- '0x1fffff'
filter_system:
SourceImage|startswith:
- 'C:\\Windows\\System32\\'
- 'C:\\Program Files\\'
condition: selection and not filter_system
falsepositives:
- EDR, Virenscanner und Backup-Agents ausserhalb der gefilterten Pfade
level: high
title: LSASS-Speicherabbild ueber comsvcs.dll MiniDump
id: b3f8d217-6c0a-4e5b-9d41-2a7f3e6c81d0
status: experimental
description: Erkennt das Erzeugen eines LSASS-Speicherabbilds ueber die
Windows-Bibliothek comsvcs.dll mit der Funktion MiniDump, eine LOLBin-Methode
ohne Fremdwerkzeug. Die Funktion wird per Namen (MiniDump) oder per Ordinal
(#24) aufgerufen; der aufrufende Prozessname (meist rundll32) kann durch
Umbenennen abweichen und bleibt deshalb bewusst ungeprueft.
references:
- https://attack.mitre.org/techniques/T1003/001/
author: blue-team.net
tags:
- attack.credential-access
- attack.t1003.001
logsource:
category: process_creation
product: windows
detection:
selection_dll:
CommandLine|contains: 'comsvcs.dll'
selection_export:
CommandLine|contains:
- 'MiniDump'
- '#24'
condition: selection_dll and selection_export
falsepositives:
- Sehr selten; dokumentierte Diagnose durch den Support
level: high
Eine dritte, kostenlose Erkennung liefert Defender selbst: Ein Fund in 1116 mit einem Bedrohungsnamen, der auf ein Credential-Dumping-Werkzeug zeigt, bedeutet, dass ein Mensch aktiv im Netz arbeitet, auch wenn die Datei entfernt wurde. Wie die Regeln ins eigene SIEM übersetzt werden, steht im Beitrag zu Sigma-Regeln; die Übersetzung nach KQL im Beitrag zu Kusto.
Der Test
Dafür genügt ein einzelnes Windows-System mit Sysmon im Homelab; der Test gehört ausschließlich dorthin, niemals auf ein Produktivsystem. Ziel ist nur zu prüfen, ob die erwarteten Ereignisse entstehen und die Regeln treffen, nicht Anmeldeinformationen tatsächlich zu erbeuten. Ein erzeugtes Speicherabbild von lsass.exe mit einem Bordmittel reicht aus. Erwartet werden Sysmon 10 mit einer lesenden GrantedAccess-Maske auf lsass.exe, Sysmon 11 für die Dump-Datei und, bei der comsvcs-Methode, Sysmon 1 mit der passenden Befehlszeile; beide Sigma-Regeln müssen treffen. Ist die ASR-Regel gegen LSASS-Diebstahl aktiv, erscheint stattdessen 1121 und der Zugriff wird blockiert, was zugleich der beste Ausgang ist. Atomic Red Team hat für T1003.001 mehrere Tests, vom Speicherabbild per Bordmittel bis zum bekannten Werkzeug. Ergebnis und Datum in den ATT&CK-Navigator, und weil diese Erkennung in fast jedem ernsten Vorfall gebraucht wird, gehört sie in jede Purple-Team-Übung.
Fehlalarme und Tuning
- Sicherheits- und Systemwerkzeuge. EDR, Virenscanner, Backup und Windows-Komponenten wie svchost.exe, wininit.exe und der Defender-Dienst greifen regelmäßig auf LSASS zu. Sie kommen mit vollständigem Pfad und, wo möglich, mit Signaturprüfung in die Allowlist. Ein Filter nur auf den Prozessnamen ist wertlos, weil ein umbenanntes Werkzeug ihn umgeht.
- Absturz-Dumps und Diagnose. Der Taskmanager und Diagnosewerkzeuge können legitime Abbilder von Prozessen erzeugen. Solche Fälle sind selten, von einem Administrator ausgelöst und zeitlich begrenzt; sie werden einzeln geprüft, nicht pauschal gefiltert.
- Die Zugriffsmasken. Die Liste der Masken ist ein Startpunkt und fängt die gängigen Werkzeuge. Manche Werkzeuge nutzen andere Kombinationen; wer sicher gehen will, alarmiert auf jedes PROCESS_VM_READ (Bit 0x10) auf lsass.exe außerhalb der Allowlist und nimmt dafür mehr Tuning in Kauf.
- Die Gegenmaßnahme, die den Angriff verhindert. LSA Protection (RunAsPPL) lässt lsass.exe als geschützten Prozess laufen, sodass nicht privilegierter Code ihn nicht mehr öffnen kann; Credential Guard verlagert die Geheimnisse in einen isolierten Bereich, auf den selbst SYSTEM nicht zugreift; und die ASR-Regel gegen den Diebstahl aus LSASS blockiert die typischen Zugriffe direkt. Alle drei gehören in die Grundhärtung, beschrieben im Beitrag Active Directory härten. Danach ist der Zugriff nicht nur sichtbar, sondern scheitert, und jeder Versuch ist ein Alarm.
Fazit
Das Auslesen von Anmeldeinformationen aus LSASS ist der Dreh- und Angelpunkt der meisten Angriffe, die von einem System auf viele übergreifen, und zugleich einer der am besten erkennbaren Schritte, weil jeder Weg denselben Zugriff auf lsass.exe braucht. Der lesende Zugriff in Sysmon 10, die Dump-Datei in Sysmon 11, die comsvcs-Befehlszeile in Sysmon 1, der Defender-Fund in 1116 und die blockierende ASR-Regel in 1121 decken die Technik mehrfach ab. Wer diese Ereignisse erfasst, die Regeln im Lab gegen ein echtes Speicherabbild prüft und LSA Protection, Credential Guard und die passende ASR-Regel setzt, macht aus einer Erkennung eine Sperre. Für ein Blue Team ist das der Unterschied zwischen einem kompromittierten System und einer kompromittierten Domäne.