Detection rules › Sigma

Kerberos key list attack for credential dumping

Status
experimental
Severity
high
Log source
product windows, service security
Author
mdecrevoisier
Source
github.com/mdecrevoisier/SIGMA-detection-rules

Detects scenarios where an attacker attempts to forge a special Kerberos service ticket in order to extract credentials from Read Only Domain Controllers (RODC).

MITRE ATT&CK coverage

Event coverage

Rule body yaml

title: Kerberos key list attack for credential dumping
description: Detects scenarios where an attacker attempts to forge a special Kerberos service ticket in order to extract credentials from Read Only Domain Controllers (RODC).
references:
- https://www.secureauth.com/blog/the-kerberos-key-list-attack-the-return-of-the-read-only-domain-controllers/
- https://www.tarlogic.com/blog/how-to-attack-kerberos/
tags:
- attack.credential_access
- attack.t1003 # credential dumping
- attack.t1558 # forget ticket
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: security
detection:
  selection:
    EventID: 4769
    Status: 0x0 # Success
    TicketOptions: '0x10000' # proxiable ticket
  filter:
    - IpAddress: '%domain_controllers_ips%'     # reduce amount of false positives
    - TargetUserName: '%account_allowed_proxy%' # accounts allowed to perform proxiable requests
  condition: selection and not filter
falsepositives:
- Applications or services performing delegation activities, ADFS servers
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
  EventID: 4769
  Status: 0x0
  TicketOptions: '0x10000'

Stage 2: not filter

filter:
  - IpAddress: '%domain_controllers_ips%'
  - TargetUserName: '%account_allowed_proxy%'

Exclusions

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

FieldKindExcluded values
IpAddresseq%domain_controllers_ips%
TargetUserNameeq%account_allowed_proxy%

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
Statuseq
  • 0 corpus 7 (sigma 7)
TicketOptionseq
  • 0x10000