Detection rules › Sigma

Active Directory Replication from Non Machine Account

Status
test
Severity
critical
Log source
product windows, service security
Author
Roberto Rodriguez @Cyb3rWard0g
Source
github.com/SigmaHQ/sigma

Detects potential abuse of Active Directory Replication Service (ADRS) from a non machine account to request credentials.

MITRE ATT&CK coverage

TacticTechniques
Credential AccessT1003.006 OS Credential Dumping: DCSync

Event coverage

Rule body yaml

title: Active Directory Replication from Non Machine Account
id: 17d619c1-e020-4347-957e-1d1207455c93
status: test
description: Detects potential abuse of Active Directory Replication Service (ADRS) from a non machine account to request credentials.
references:
    - https://threathunterplaybook.com/hunts/windows/180815-ADObjectAccessReplication/notebook.html
    - https://threathunterplaybook.com/library/windows/active_directory_replication.html
    - https://threathunterplaybook.com/hunts/windows/190101-ADModDirectoryReplication/notebook.html
author: Roberto Rodriguez @Cyb3rWard0g
date: 2019-07-26
modified: 2021-11-27
tags:
    - attack.credential-access
    - attack.t1003.006
logsource:
    product: windows
    service: security
detection:
    selection:
        EventID: 4662
        AccessMask: '0x100'
        Properties|contains:
            - '1131f6aa-9c07-11d1-f79f-00c04fc2dcd2'
            - '1131f6ad-9c07-11d1-f79f-00c04fc2dcd2'
            - '89e95b76-444d-4c62-991a-0facbeda640c'
    filter:
        - SubjectUserName|endswith: '$'
        - SubjectUserName|startswith: 'MSOL_' # https://learn.microsoft.com/en-us/entra/identity/hybrid/connect/reference-connect-accounts-permissions#ad-ds-connector-account
    condition: selection and not filter
falsepositives:
    - Unknown
level: critical

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    EventID: 4662
    AccessMask: '0x100'
    Properties|contains:
        - '1131f6aa-9c07-11d1-f79f-00c04fc2dcd2'
        - '1131f6ad-9c07-11d1-f79f-00c04fc2dcd2'
        - '89e95b76-444d-4c62-991a-0facbeda640c'

Stage 2: not filter

filter:
    - SubjectUserName|endswith: '$'
    - SubjectUserName|startswith: 'MSOL_'

Exclusions

Top-level NOT(...) conjuncts: predicates this rule actively suppresses.

FieldKindExcluded values
SubjectUserNameends_with$
SubjectUserNamestarts_withMSOL_

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.

FieldKindValues
AccessMaskeq
  • 0x100 corpus 5 (sigma 2, splunk 2, elastic 1)
Propertiesmatch
  • 1131f6aa-9c07-11d1-f79f-00c04fc2dcd2 corpus 6 (sigma 3, elastic 2, kusto 1)
  • 1131f6ad-9c07-11d1-f79f-00c04fc2dcd2 corpus 6 (sigma 3, elastic 2, kusto 1)
  • 89e95b76-444d-4c62-991a-0facbeda640c corpus 6 (sigma 3, elastic 2, kusto 1)