Detection rules › Sigma
Sensitive SAM domain user & groups discovery (native)
Detects scenarios where an attacker attempts to enumerate sensitive domain group settings and membership.
MITRE ATT&CK coverage
| Tactic | Techniques |
|---|---|
| Discovery | T1069.002 Permission Groups Discovery: Domain Groups |
Event coverage
| Provider | Event | Title |
|---|---|---|
| Security-Auditing | Event ID 4661 | A handle to an object was requested. |
Rule body yaml
title: Sensitive SAM domain user & groups discovery (native)
description: Detects scenarios where an attacker attempts to enumerate sensitive domain group settings and membership.
correlation: correlate TargetLogonId from ID 4624 with SubjectLogonId from ID 4661 to identify the source of the enumeration.
requirements: extended rights auditing enabled (https://www.manageengine.com/products/active-directory-audit/active-directory-auditing-configuration-guide-configure-object-level-auditing-manually.html)
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0007-Discovery/T1069-Permission%20Groups%20Discovery
- https://bitvijays.github.io/LFF-IPS-P3-Exploitation.html
tags:
- attack.discovery
- attack.t1069.002
author: mdecrevoisier
status: experimental
logsource:
product: windows
service: security
detection:
selection:
EventID: 4661
ProcessName|endswith: '\lsass.exe'
ObjectServer: 'Security Account Manager'
ObjectName|startswith:
- S-1-5-32- # refers to builtin domain local groups
- S-1-5-21- # refers to domain users andgroups
ObjectType:
- SAM_USER
- SAM_GROUP
ObjectName|endswith:
- '-500' # local administrator / "net user administrator /domain"
- '-512' # Domain Admins / "net group "Domain Admins" /domain"
- '-513' # Domain users
filter:
SubjectUserName|endswith: '$'
condition: selection and not filter
falsepositives:
- Administrator activity
level: high
Stages and Predicates
Stage 0: condition
selection and not filterStage 1: selection
selection:
EventID: 4661
ProcessName|endswith: '\lsass.exe'
ObjectServer: 'Security Account Manager'
ObjectName|startswith:
- S-1-5-32-
- S-1-5-21-
ObjectType:
- SAM_USER
- SAM_GROUP
ObjectName|endswith:
- '-500'
- '-512'
- '-513'
Stage 2: not filter
filter:
SubjectUserName|endswith: '$'
Exclusions
Top-level NOT(...) conjuncts: predicates this rule actively suppresses.
| Field | Kind | Excluded values |
|---|---|---|
SubjectUserName | ends_with | $ |
Indicators
Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.
| Field | Kind | Values |
|---|---|---|
ObjectName | ends_with |
|
ObjectName | starts_with |
|
ObjectServer | eq |
|
ObjectType | eq |
|
ProcessName | ends_with |
|