This analytic looks for the execution of powershell.exe with command-line arguments utilized to query for domain users. The Get-WmiObject commandlet combined with the -class ds_user parameter can be used to return the full list of users in a Windows domain. Red Teams and adversaries alike may leverage WMI in this case, using PowerShell, to enumerate domain users for situational awareness and Active Directory Discovery.
Help
Getwmiobject Ds User With Powershell Help
To successfully implement this search, you need to be ingesting logs with the process name, parent process, and command-line executions from your endpoints. If you are using Sysmon, you must have at least version 6.0.4 of the Sysmon TA.
Search
| tstats`security_content_summariesonly`countmin(_time) as firstTime max(_time) as lastTime fromdatamodel=Endpoint.Processes where (Processes.process_name="cmd.exe"OR Processes.process_name="powershell*") AND Processes.process = "*get-wmiobject*"AND Processes.process = "*ds_user*"AND Processes.process = "*root\\directory\\ldap*"AND Processes.process = "*-namespace*"by Processes.dest Processes.user Processes.parent_process Processes.process_name Processes.process Processes.process_id Processes.parent_process_id Processes.parent_process_name | `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)` | `getwmiobject_ds_user_with_powershell_filter`