Detection rules › Sigma
Potential SAM database user credentials dumped with DCshadow
Detects scenarios where an attacker would dump user passwords using the DCshadow attack.
Known false positives
- None
MITRE ATT&CK coverage
| Tactic | Techniques |
|---|---|
| Credential Access |
Telemetry coverage
| Provider | Record / event type |
|---|---|
| Security-Auditing | Event ID 4661: A handle to an object was requested. |
Rule body
title: Potential SAM database user credentials dumped with DCshadow
description: Detects scenarios where an attacker would dump user passwords using the DCshadow attack.
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/TA0006-Credential%20Access/T1003-Credential%20dumping
- https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/t1207-creating-rogue-domain-controllers-with-dcshadow
- https://medium.com/@maarten.goet/dcshadow-detecting-a-rogue-domain-controller-replicating-malicious-changes-to-your-active-1e22440df9ad
- https://github.com/AlsidOfficial/UncoverDCShadow
- https://github.com/shellster/DCSYNCMonitor
- https://blog.alsid.eu/dcshadow-explained-4510f52fc19d
- https://stealthbits.com/blog/detecting-dcshadow-with-event-logs/
- https://www.labofapenetrationtester.com/2018/05/dcshadow-sacl.html
- https://blog.stealthbits.com/creating-persistence-with-dcshadow/
- https://book.hacktricks.xyz/windows/active-directory-methodology/dcshadow
tags:
- attack.credential_access
- attack.t1003.001
author: mdecrevoisier
status: experimental
logsource:
product: windows
service: security
detection:
selection:
EventID: 4661
SubjectUserSid: S-1-5-18
ProcessName|endswith: '\lsass.exe'
ObjectServer: Security Account Manager
ObjectType:
- SAM_SERVER
- SAM_DOMAIN
ObjectName|startswith:
- CN=
- DC=
AccessList|contains|all:
- '%%5392' # ReadPasswordParameters
- '%%5447' # SetPassword
condition: selection | count(ObjectName) by Computer > 10
falsepositives:
- None
level: high
Stages and Predicates
Stage 0: condition
selection | count(ObjectName) by Computer > 10Stage 1: selection
selection:
EventID: 4661
SubjectUserSid: S-1-5-18
ProcessName|endswith: '\lsass.exe'
ObjectServer: Security Account Manager
ObjectType:
- SAM_SERVER
- SAM_DOMAIN
ObjectName|startswith:
- CN=
- DC=
AccessList|contains|all:
- '%%5392'
- '%%5447'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
AccessList | match |
| field:"AccessList" kind:match |
ObjectName | starts_with |
| field:"ObjectName" kind:starts_with |
ObjectServer | eq |
| field:"ObjectServer" kind:eq value:"Security Account Manager" |
ObjectType | eq |
| field:"ObjectType" kind:eq |
ProcessName | ends_with |
| field:"process_name" kind:ends_with value:"\lsass.exe" |
SubjectUserSid | eq |
| field:"SubjectUserSid" kind:eq value:"S-1-5-18" |