DCShadow
Last updated
Last updated
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Es registriert einen neuen Domänencontroller im AD und verwendet ihn, um Attribute (SIDHistory, SPNs...) an bestimmten Objekten ohne das Hinterlassen von Protokollen bezüglich der Änderungen zu pushen. Sie benötigen DA-Berechtigungen und müssen sich im Root-Domain befinden. Beachten Sie, dass bei Verwendung falscher Daten ziemlich hässliche Protokolle erscheinen werden.
Um den Angriff durchzuführen, benötigen Sie 2 Mimikatz-Instanzen. Eine davon startet die RPC-Server mit SYSTEM-Berechtigungen (hier müssen Sie die Änderungen angeben, die Sie durchführen möchten), und die andere Instanz wird verwendet, um die Werte zu pushen:
Beachten Sie, dass elevate::token
in der mimikatz1
-Sitzung nicht funktioniert, da dies die Berechtigungen des Threads erhöht, wir jedoch die Berechtigung des Prozesses erhöhen müssen.
Sie können auch ein "LDAP"-Objekt auswählen: /object:CN=Administrator,CN=Users,DC=JEFFLAB,DC=local
Sie können die Änderungen von einem DA oder von einem Benutzer mit diesen minimalen Berechtigungen vornehmen:
Im Domänenobjekt:
DS-Install-Replica (Replica in der Domäne hinzufügen/entfernen)
DS-Replication-Manage-Topology (Replikations-Topologie verwalten)
DS-Replication-Synchronize (Replikationssynchronisation)
Das Standorte-Objekt (und seine Kinder) im Konfigurationscontainer:
CreateChild und DeleteChild
Das Objekt des Computers, der als DC registriert ist:
WriteProperty (Nicht Schreiben)
Das Zielobjekt:
WriteProperty (Nicht Schreiben)
Sie können Set-DCShadowPermissions verwenden, um diese Berechtigungen einem unprivilegierten Benutzer zu geben (beachten Sie, dass dies einige Protokolle hinterlässt). Dies ist viel restriktiver als DA-Berechtigungen zu haben.
Zum Beispiel: Set-DCShadowPermissions -FakeDC mcorp-student1 SAMAccountName root1user -Username student1 -Verbose
Das bedeutet, dass der Benutzername student1 beim Anmelden an der Maschine mcorp-student1 DCShadow-Berechtigungen über das Objekt root1user hat.
Wir müssen die folgenden ACEs mit der SID unseres Benutzers am Ende anhängen:
Am Domänenobjekt:
(OA;;CR;1131f6ac-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)
(OA;;CR;9923a32a-3607-11d2-b9be-0000f87a36b2;;UserSID)
(OA;;CR;1131f6ab-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)
Am Angreifer-Computerobjekt: (A;;WP;;;UserSID)
Am Zielbenutzerobjekt: (A;;WP;;;UserSID)
Am Sites-Objekt im Konfigurationscontainer: (A;CI;CCDC;;;UserSID)
Um den aktuellen ACE eines Objekts zu erhalten: (New-Object System.DirectoryServices.DirectoryEntry("LDAP://DC=moneycorp,DC=local")).psbase.ObjectSecurity.sddl
Beachten Sie, dass Sie in diesem Fall mehrere Änderungen vornehmen müssen, nicht nur eine. Verwenden Sie also im mimikatz1-Sitzung (RPC-Server) den Parameter /stack
mit jeder Änderung, die Sie vornehmen möchten. Auf diese Weise müssen Sie nur einmal /push
verwenden, um alle gestapelten Änderungen auf dem Rouge-Server durchzuführen.
Weitere Informationen zu DCShadow auf ired.team.
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)