CreateUser
Summary
FSProtect ACL Alias
CreateUser
AD Alias
Create User objects
Affected Object Types
OUs, Domains, Containers
Exploitation Certainty
Certain
AD Right
CreateChild
AD Class
User
AD Class Guid
bf967aba-0de6-11d0-a285-00aa003049e2
Description
The CreateUser edge in Active Directory lets someone create new user accounts in the directory. This permission is important for everyday administrative tasks, such as adding new employees or setting up accounts for different services. The ability to create users ensures that everyone who needs access to the network can obtain it quickly and easily.
However, if the CreateUser permission is misconfigured, it can pose a security risk. An attacker with this permission could create unauthorized user accounts, potentially granting themselves elevated privileges or unauthorized access to sensitive information. This could lead to stolen data, unauthorized changes, and long-term hidden access to the network, making it significantly harder to secure systems and the entire network.
Identification
PowerShell
Active Directory Module
Using the ActiveDirectory PowerShell module, you can enumerate CreateUser entries.
1. Find-CreateUser function
2. Scan all domain containers and OUs
3. Scan a specific object
4. To exclude default admin ACLs to improve visibility
.NET Directory Services
By leveraging PowerShell’s built-in .NET DirectoryServices namespace, you can enumerate CreateUser entries without relying on any external modules or dependencies.
1. Find-CreateUserSimple function
2. Scan all domain containers and OUs
3. Scan a specific object
4. To exclude default admin ACLs to improve visibility
Active Directory Users and Computers
1. Open Active Directory Users and Computers on your Windows server.
2. Right-click on the OU name.
3. Select Properties from the context menu.
4. In the Properties window, navigate to the Security tab.
5. Click the Advanced button to open the Advanced Security Settings dialog.
6. In the Advanced Security Settings window, locate and select the relevant Access Control Entry (ACE) for the user or group you wish to configure.
7. Click Edit to modify the selected ACE.
8. In the permissions list, locate and enable the option Create user objects.
9. Click OK to save your changes and close the dialogs.

Exploitation
Windows


Linux
Example:
Mitigation
Dangerous Access Control Entries should be removed by following the steps below.
1. Open Active Directory Users and Computers, and enable the Advanced Features option.
2. Double-click the affected object and open Security tab.
3. In this tab, click the Advanced button and open the suspicious Access Control Entry.
4. Remove the rights marked as dangerous.
5. Click OK and Apply to save the changes.

Detection
Adding new Access Control Entries to Active Directory objects modifies the ntSecurityDescriptor attribute of those objects. These changes can be detected with Event IDs 5136 and 4662 to identify suspicious modifications.
5136
Audit Directory Service Changes
A directory service object was modified.
ntSecurityDescriptor
https://learn.microsoft.com/en-us/windows/security/threat-protection/auditing/event-5136
4662
Audit Directory Service Access
An operation was performed on an object.
AccessList, AccessMask
https://learn.microsoft.com/en-us/windows/security/threat-protection/auditing/event-4662
4661
A handle to an object was requested.
Subject, Object
https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4661
4720
A user account was created.
Subject, New Account, Attributes
https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4720
References
Last updated
Was this helpful?