Detection rules › Sigma
Kerberos AS-REP Roasting ticket request detected
Detects scenarios where an attacker abuse an account with UAC settings set to "Accounts Does not Require Pre-Authentication" in order to perform offline TGT brutforce. May also be triggered by an attacker performing some Kerberos user enumration with tools like "Kerbrute".
MITRE ATT&CK coverage
| Tactic | Techniques |
|---|---|
| Credential Access | T1558.004 Steal or Forge Kerberos Tickets: AS-REP Roasting |
Event coverage
| Provider | Event | Title |
|---|---|---|
| Security-Auditing | Event ID 4768 | A Kerberos authentication ticket (TGT) was requested. |
Rule body yaml
title: Kerberos AS-REP Roasting ticket request detected
description: Detects scenarios where an attacker abuse an account with UAC settings set to "Accounts Does not Require Pre-Authentication" in order to perform offline TGT brutforce. May also be triggered by an attacker performing some Kerberos user enumration with tools like "Kerbrute".
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0006-Credential%20Access/T1558-Steal%20or%20Forge%20Kerberos%20Tickets
- https://github.com/HarmJ0y/ASREPRoast
- https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/as-rep-roasting-using-rubeus-and-hashcat
- https://m0chan.github.io/2019/07/31/How-To-Attack-Kerberos-101.html#as-rep-roasting
- https://medium.com/@jsecurity101/ioc-differences-between-kerberoasting-and-as-rep-roasting-4ae179cdf9ec
- https://rioasmara.com/2020/07/04/kerberoasting-as-req-pre-auth-vs-non-pre-auth/
- https://www.hackingarticles.in/as-rep-roasting/
tags:
- attack.credential_access
- attack.t1558.004
author: mdecrevoisier
status: experimental
logsource:
product: windows
service: security
detection:
selection:
EventID: 4768
Status: 0x0 # Success
ServiceSid|endswith: '-502'
PreAuthType: 0 # Logon without Pre-Authentication.
#TicketOptions:
# - 0x40800010 # triggered by ASREPRoast & Rubeus
# - 0x50800000 # user enumeration triggered by Kerbrute (proxiable ticket)
filter:
- IpAddress: '%domain_controllers_ips%' # reduce amount of false positives
condition: selection and not filter
falsepositives:
- Account configured to not require pre-authentication
level: high
Stages and Predicates
Stage 0: condition
selection and not filterStage 1: selection
selection:
EventID: 4768
Status: 0x0
ServiceSid|endswith: '-502'
PreAuthType: 0
Stage 2: not filter
filter:
- IpAddress: '%domain_controllers_ips%'
Exclusions
Top-level NOT(...) conjuncts: predicates this rule actively suppresses.
| Field | Kind | Excluded values |
|---|---|---|
IpAddress | eq | %domain_controllers_ips% |
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 |
|---|---|---|
PreAuthType | eq |
|
ServiceSid | ends_with |
|
Status | eq |
|