Backup Operators
Configuring
Prerequisite
The membership of the "Backup Operators" group is configured in the Dumping DPAPI page.
Dumping DPAPIAttacking
How it works
The Backup Operators group is a built in group in AD. By default it has no members.
Members of the Backup Operators group can back up and restore all files on a computer, regardless of the permissions that protect those files. Backup Operators also can log on to and shut down the computer. This group cannot be renamed, deleted, or moved. They also have the permissions needed to replace files (including operating system files) on domain controllers.
One of the known attacks is to copy the ntds.dit file and extract all the domain credentials from it.
Tools
Executing the attack
The small stuff
Login to the DC locally (Not through RDP but only locally):
List files on the Domain Controller:
Copy files from the Domain Controller:
To Domain Admin!
From our enumeration when we gained access to the sa_backup
account we know the user is part of the Backup Operators group. We can abuse the permissions by making a copy of the SAM, SYSTEM and SECURITY hive, extract the machine account hash and then execute a DCsync attack.
Login to
DATA01
assa_backup
with the passwordLS6RV5o8T9
.Run the following command to check if the
sa_backup
user is member of theBackup Operators
group.
3. One of the requirements is to host a public SMB share, we can do this with the smbserver.py script from Impacket. This will create a share on \\192.168.248.2\share
.
4. The next step is to execute the BackupOperatorToDa.exe tool to retrieve the the SAM, SYSTEN and SECURITY HIVE and save them in our created public share:
If you are using another share, make sure the share is writeable by anyone otherwise the DC won't be able to write its files.
5. If we check in our directory ~/adlab
we can see the files: (for the screenshot I made a copy in the HIVE directory)
6. The next step is to run SecretDump.py to retrieve the machine account NTLM hash out of these HIVE dumps:
7. The last step is to run Secretsdump.py to run DCsync and retrieve all the domain account hashes:
We retrieved the NTLM account hash of every user in the domain and could authenticate with these to the domain controller. As Administrator for example which is Domain Admin.
Defending
Recommendations
Never use any of the "Operator" groups. Create specialised groups and minimal permissions for the tasks the different IT departments/roles need. Use the least privilege principal.
Detection
References
Last updated