Skip to main content

AD-Attack-Roadmap

We are trying to cover different authentication mechanism and why AD uses these methods under what circumstance and the attacks that can be performed over different mode of authentication. Covering the roadmap of the attacks.


Attack Mind MAP


High Level Attack info

AttackMinimum RequirementsHow to Check Requirements
KerberoastingAuthenticated domain user; SPNs assigned to accountsGetUserSPNs.py (Impacket); setspn -T <domain> -Q */*
AS-REP RoastingUser with "Do not require Kerberos preauthentication"GetNPUsers.py; Get-DomainUser -PreauthNotRequired (PowerView)
Pass-the-Ticket (PtT)Valid TGT or TGS ticket; token injection accessmimikatz kerberos::list; klist
Golden TicketKRBTGT hash; domain SID; Domain Admin or SYSTEM accessmimikatz lsadump::lsa /patch
Silver TicketNTLM hash of service account; SPN; hostname of serviceExtract hash via mimikatz or secretsdump.py
DCSyncReplication privileges (Domain Admin or equivalent)Get-ObjectAcl -SamAccountName 'krbtgt' (PowerView)
Pass-the-Hash (PtH)NTLM hash; optional admin rights on targetsecretsdump.py; mimikatz
LLMNR/NBT-NS PoisoningNo protection; broadcast name resolution usedUse Responder; monitor with Wireshark
SMB RelaySMB signing disabled; network accessnmap --script smb-security-mode; crackmapexec smb
ACL AbuseWrite or modify permissions on target objectGet-ACL, Get-ObjectAcl (PowerView)
Unconstrained DelegationMachine with delegation enabled; victim logs into itGet-DomainComputer -Unconstrained
Constrained DelegationAccess to object with msDS-AllowedToDelegateToGet-DomainUser -TrustedToAuth
Shadow CredentialsWrite access to msDS-KeyCredentialLinkUse Whisker; ForgeCert; check with Get-DomainObjectAcl
Printer BugSpooler service running on victim machineUse rpcdump.py; check spooler ports
NTLMv1 Relay/DowngradeNTLMv1 enabled; no SMB signing; broadcast trafficCheck registry; use Responder, Inveigh, or Wireshark

expand more

adding initial access

adding enumeartion section

AD attacks

refining

AD attacks