DCShadow
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Registra un nuovo Domain Controller nell'AD e lo utilizza per inviare attributi (SIDHistory, SPNs...) su oggetti specificati senza lasciare alcun log riguardo alle modifiche. Hai bisogno di privilegi DA e di essere all'interno del dominio radice. Nota che se usi dati errati, appariranno log piuttosto brutti.
Per eseguire l'attacco hai bisogno di 2 istanze di mimikatz. Una di esse avvierà i server RPC con privilegi di SYSTEM (devi indicare qui le modifiche che desideri eseguire), e l'altra istanza sarà utilizzata per inviare i valori:
Nota che elevate::token
non funzionerà nella sessione mimikatz1
poiché ha elevato i privilegi del thread, ma dobbiamo elevare il privilegio del processo.
Puoi anche selezionare un oggetto "LDAP": /object:CN=Administrator,CN=Users,DC=JEFFLAB,DC=local
Puoi applicare le modifiche da un DA o da un utente con questi permessi minimi:
Nell'oggetto di dominio:
DS-Install-Replica (Aggiungi/Rimuovi Replica nel Dominio)
DS-Replication-Manage-Topology (Gestisci Topologia di Replica)
DS-Replication-Synchronize (Sincronizzazione Replica)
L'oggetto Siti (e i suoi figli) nel contenitore di Configurazione:
CreateChild e DeleteChild
L'oggetto del computer registrato come DC:
WriteProperty (Non Scrivere)
L'oggetto target:
WriteProperty (Non Scrivere)
Puoi usare Set-DCShadowPermissions per dare questi privilegi a un utente non privilegiato (nota che questo lascerà alcuni log). Questo è molto più restrittivo rispetto ad avere privilegi DA.
Ad esempio: Set-DCShadowPermissions -FakeDC mcorp-student1 SAMAccountName root1user -Username student1 -Verbose
Questo significa che il nome utente student1 quando è connesso nella macchina mcorp-student1 ha permessi DCShadow sull'oggetto root1user.
Dobbiamo aggiungere i seguenti ACE con il SID del nostro utente alla fine:
Sull'oggetto dominio:
(OA;;CR;1131f6ac-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)
(OA;;CR;9923a32a-3607-11d2-b9be-0000f87a36b2;;UserSID)
(OA;;CR;1131f6ab-9c07-11d1-f79f-00c04fc2dcd2;;UserSID)
Sull'oggetto computer dell'attaccante: (A;;WP;;;UserSID)
Sull'oggetto utente target: (A;;WP;;;UserSID)
Sull'oggetto Siti nel contenitore di Configurazione: (A;CI;CCDC;;;UserSID)
Per ottenere l'attuale ACE di un oggetto: (New-Object System.DirectoryServices.DirectoryEntry("LDAP://DC=moneycorp,DC=loca l")).psbase.ObjectSecurity.sddl
Nota che in questo caso devi fare diverse modifiche, non solo una. Quindi, nella sessione mimikatz1 (server RPC) usa il parametro /stack
con ogni modifica che vuoi fare. In questo modo, dovrai solo /push
una volta per eseguire tutte le modifiche accumulate nel server rogue.
Ulteriori informazioni su DCShadow in ired.team.
Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)