DACLs
Last updated
Was this helpful?
Last updated
Was this helpful?
DACL abuse potential paths can be identified by BloodHound from UNIX-like (using the Python ingestor bloodhound.py) and Windows (using the SharpHound ingestor) systems.
Other tools like, Get-DomainObjectAcl
and Add-DomainObjectAcl
from Powersploit's Powerview, Get-Acl
and Set-Acl
official Powershell cmdlets, or Impacket's dacledit.py script (Python) can be used in order to manually inspect an object's DACL. At the time of writing, the Pull Request (#1291) offering that dacledit is still being reviewed and in active development. It has the following command-line arguments.
This page is about enumeration, for DACL-based attacks, please refer to this page.
We can dump all Domain Object's ACL and convert it to a json file using Get-DomainObjectAcl
from Powersploit's Powerview.
Transfer the file to the attacking machine, then use the following command to convert the output file to UNIX format.
One of the following commands can be used to format and read the output file.
You may convert SIDs with the following WMIC command
It is possible to use a native windows binary (in addition to powershell cmdlet Get-Acl
) to enumerate Active Directory object security persmissions. The binary of interest is dsacls.exe
.
DACL abuse potential paths can be identified by BloodHound from UNIX-like (using the Python ingestor bloodhound.py) and Windows (using the SharpHound ingestor) systems.
From UNIX-like system, a non-official (but very effective nonetheless) Python version can be used.
BloodHound.py is a Python ingestor for BloodHound. Using the ACL CollectionMethod, we just collect abusable permissions on objects in Active Directory