AD Permissions — Hub

BloodHound edges are not interchangeable — the target object (Domain, User, Group, Computer, OU, Certificate Template, CA) determines what you do. Each note links to the vault file with full commands.

Ctrl+F: WriteDacl · GenericAll · DCSync · HasSession · ForceChangePassword · AD CS

External: Internal All The Things — Access Controls ACL/ACE

Collect paths → Bloodhound + Sharphound · decision tree → Credential Graph


📌 How to read a BloodHound ACL edge

  1. What right? (WriteDacl, GenericAll, AddMember, …)
  2. What object does the arrow point to? (Domain, user, group, computer, cert template, CA)

Open the matching note below → follow Execute links to bloodyAD, PowerView, Certipy & Certify, etc.


📌 Permission notes — interpret → execute

NoteBloodHound rightFirst thoughtCommands live in
WriteDaclWriteDACLDomain? → DCSync · User/group? → abuse that objectbloodyAD > add dcsync · secretsdump
GenericAllGenericAllFull control — reset pass / join group / RBCD by targetbloodyAD · PowerView
GenericWriteGenericWriteShadow creds · RBCD · SPN · AS-REPShadow Credentials - pywhisker · Kerberoast
ForceChangePasswordForceChangePasswordReset target password → become userbloodyAD > set password · Change password AD - NT_STATUS_PASSWORD_MUST_CHANGE (different scenario)
AllExtendedRightsAllExtendedRightsBundle — usually → ForceChangePassword on usersForceChangePassword
WriteOwnerWriteOwner / OwnsTake ownership → grant GenericAllbloodyAD > set ownerWriteDacl chain
AddMemberAddMemberAdd self to privileged groupbloodyAD > add groupMember · LatMovement
AD CS PermissionsWrite on template / ManageCA on CAESC4 / ESC7 cert abuseESC4 · ESC7 · AD CS ESC
DCSyncDCSync / GetChanges+GetChangesAllDump all domain hashes from DCsecretsdump · CrackMapExec - nxc --ntds · Mimikatz
HasSessionHasSessionUser logged on host — steal creds if you have AdminToLSASS · PowerView Invoke-UserHunter · LatMovement

📌 BloodHound edges — ACL vs relationship

TypeExamplesFolder notes
DACL rightsWriteDacl, GenericAll, AddMember, …Permission notes above
RelationshipsHasSession, AdminTo, MemberOfHasSession (+ AdminTo via LatMovement)
Granted rightsDCSync (result of ACL abuse or DA)DCSync · grant via WriteDacl

📌 Permission → tool quick map

Need to…Go to
Grant DCSync / modify ACLsbloodyAD · PowerView
Dump hashes after DCSyncDCSync · Impacket secretsdump
Steal logged-on user credsHasSession · LSASS
Shadow credentialsShadow Credentials - pywhisker · Certipy & Certify
AD CS cert privescCertipy & Certify · AD CS ESC
Reset your must-change passwordChange password AD - NT_STATUS_PASSWORD_MUST_CHANGE · krb5-user
Graph / queriesBloodhound + Sharphound

📌 Standard escalation flow

BloodHound edge → [[AD Permissions]] note (interpret target)
    → linked exploit file (bloodyAD / PowerView / Certipy / Shadow Creds)
    → DCSync / DA shell / lateral ([[LatMovement]])