AD Dynamic Objects (dynamicObject) Anti-forense
Tip
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)
Impara e pratica il hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos github.
Meccanica e nozioni di base per il rilevamento
- Qualsiasi oggetto creato con la auxiliary class
dynamicObjectottieneentryTTL(conteggio in secondi) emsDS-Entry-Time-To-Die(scadenza assoluta). QuandoentryTTLraggiunge 0 il Garbage Collector lo elimina senza tombstone/recycle-bin, cancellando creator/timestamp e impedendo il recupero. - Il TTL può essere rinfrescato aggiornando
entryTTL; min/default sono imposti in Configuration\Services\NTDS Settings →msDS-Other-Settings→DynamicObjectMinTTL/DynamicObjectDefaultTTL(supporta 1s–1y ma comunemente defaulta a 86,400s/24h). Gli oggetti dinamici non sono supportati nelle partizioni Configuration/Schema. - La cancellazione può subire ritardi di pochi minuti su DC con uptime breve (<24h), lasciando una finestra ristretta per interrogare/backup degli attributi. Rilevare segnalando nuovi oggetti che riportano
entryTTL/msDS-Entry-Time-To-Diee correlando con SID orfani/link interrotti.
MAQ Evasion with Self-Deleting Computers
- Il valore di default
ms-DS-MachineAccountQuota= 10 permette a qualsiasi utente autenticato di creare computer. AggiungeredynamicObjectdurante la creazione fa sì che il computer si autoelimini e liberi lo slot di quota mentre cancella le prove. - Tweak Powermad dentro
New-MachineAccount(objectClass list):
$request.Attributes.Add((New-Object "System.DirectoryServices.Protocols.DirectoryAttribute" -ArgumentList "objectClass", "dynamicObject", "Computer")) > $null
- TTL breve (es. 60s) spesso fallisce per utenti standard; AD ricade su
DynamicObjectDefaultTTL(esempio: 86,400s). ADUC può nascondereentryTTL, ma LDP/LDAP query lo rivelano.
Stealth Primary Group Membership
- Creare un security group dinamico, poi impostare il
primaryGroupIDdi un utente al RID di quel gruppo per ottenere membership effettiva che non compare inmemberOfma viene rispettata nei token Kerberos/access. - Alla scadenza del TTL il gruppo viene eliminato nonostante la protezione da cancellazione primary-group, lasciando l’utente con un
primaryGroupIDcorrotto che punta a un RID inesistente e senza tombstone per indagare come sia stato concesso il privilegio.
AdminSDHolder Orphan-SID Pollution
- Aggiungere ACEs per un utente/gruppo dinamico a vita breve in
CN=AdminSDHolder,CN=System,.... Dopo la scadenza del TTL lo SID diventa non risolvibile (“Unknown SID”) nel template ACL, e SDProp (~60 min) propaga quello SID orfano su tutti gli oggetti protetti Tier-0. - La forense perde l’attribuzione perché il principale non esiste più (nessun DN di deleted-object). Monitorare per nuovi principal dinamici + improvvisi SID orfani su AdminSDHolder/ACL privilegiati.
Dynamic GPO Execution with Self-Destructing Evidence
- Creare un oggetto
groupPolicyContainerdinamico con ungPCFileSysPathmalevolo (es., SMB share in stile GPODDITY) e linkarlo tramitegPLinka un OU target. - I client processano la policy e scaricano contenuto dallo SMB dell’attaccante. Quando il TTL scade, l’oggetto GPO (e
gPCFileSysPath) scompaiono; rimane solo ungPLinkGUID rotto, cancellando le evidenze LDAP della payload eseguita.
Ephemeral AD-Integrated DNS Redirection
- I record AD DNS sono oggetti
dnsNodein DomainDnsZones/ForestDnsZones. Crearli come dynamic objects permette redirezioni host temporanee (credential capture/MITM). I client cachano la risposta A/AAAA malevola; il record poi si autoelimina lasciando la zone apparentemente pulita (DNS Manager può richiedere il reload della zona per aggiornare la vista). - Rilevamento: segnalare qualsiasi record DNS che riporti
dynamicObject/entryTTLvia replication/event logs; i record transitori raramente compaiono nei log DNS standard.
Hybrid Entra ID Delta-Sync Gap (Note)
- Entra Connect delta sync si basa sui tombstone per rilevare le cancellazioni. Un utente on-prem dinamico può syncare su Entra ID, scadere e cancellarsi senza tombstone—delta sync non rimuoverà l’account cloud, lasciando un utente Entra attivo orfano fino a quando non viene forzata una full sync.
References
Tip
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)
Impara e pratica il hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos github.


