PowerShell module enumeration of AD principals via get-ADPrincipalGroupMembership
Flags PowerShell module usage of Get-ADPrincipalGroupMembership and Get-ADUser with -pr -f patterns indicative of AD discovery.
- Product
- windows
- Category
- ps_module
- Author
- frack113 (SigmaHQ), DRL 1.1
- Published
- 2021-12-15
- Updated
- 2026-07-31
ATT&CK techniques
DiscoveryRecon
Resource Dev
Initial Access
Execution
Persistence
Priv Esc
Defense Evasion
Cred Access
Discovery
Lateral Movement
Collection
C2
Exfiltration
Impact
What it detects
This rule flags PowerShell module activity where commands related to enumerating Active Directory principal group membership are present in either the payload or context. It can also match PowerShell calls that retrieve AD user details using get-aduser with specific parameters (including a flag pattern for pre-auth related behavior). Enumerating groups and users helps an attacker map domain permissions and identify accounts with elevated access. The detection relies on PowerShell telemetry fields containing the relevant command text in Payload and/or ContextInfo.
Reporting behind it
Changelog
v2- v2Candidate ingested via manual entry.2026-07-31
- v1No changelog recorded for this version.2026-07-30
Detection content is published as a reviewed draft. Tune thresholds and exclusions against your own telemetry before enabling this rule for alerting.
title: PowerShell module enumeration of AD principals via get-ADPrincipalGroupMembership
id: c4be21c1-b625-4ed1-a6de-39e3c1061e16
status: test
description: This rule flags PowerShell module activity where commands related to enumerating Active Directory principal group membership are present in either the payload or context. It can also match PowerShell calls that retrieve AD user details using get-aduser with specific parameters (including a flag pattern for pre-auth related behavior). Enumerating groups and users helps an attacker map domain permissions and identify accounts with elevated access. The detection relies on PowerShell telemetry fields containing the relevant command text in Payload and/or ContextInfo.
references:
- https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1069.002/T1069.002.md
- https://github.com/SigmaHQ/sigma/blob/master/rules/windows/powershell/powershell_module/posh_pm_susp_ad_group_reco.yml
author: frack113, Huntrule Team
date: 2021-12-15
modified: 2023-01-20
tags:
- attack.discovery
- attack.t1069.001
logsource:
product: windows
category: ps_module
definition: 0ad03ef1-f21b-4a79-8ce8-e6900c54b65b
detection:
selection_ad_principal:
- Payload|contains: get-ADPrincipalGroupMembership
- ContextInfo|contains: get-ADPrincipalGroupMembership
selection_get_aduser:
- Payload|contains|all:
- get-aduser
- "-f "
- "-pr "
- DoesNotRequirePreAuth
- ContextInfo|contains|all:
- get-aduser
- "-f "
- "-pr "
- DoesNotRequirePreAuth
condition: 1 of selection_*
falsepositives:
- Administrator script
level: low
license: DRL-1.1
related:
- id: 815bfc17-7fc6-4908-a55e-2f37b98cedb4
type: derived