Local Account TokenFilter Policy Disabled

Identifies registry modification to the LocalAccountTokenFilterPolicy policy. If this value exists (which doesn't by default) and is set to 1, then remote connections from all local members of Administrators are granted full high-integrity tokens during negotiation.

Elastic rule (View on GitHub)

 1[metadata]
 2creation_date = "2022/11/01"
 3integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender"]
 4maturity = "production"
 5min_stack_comments = "Breaking change at 8.14.0 for the Windows Integration."
 6min_stack_version = "8.14.0"
 7updated_date = "2024/10/15"
 8
 9[rule]
10author = ["Elastic"]
11description = """
12Identifies registry modification to the LocalAccountTokenFilterPolicy policy. If this value exists (which doesn't by
13default) and is set to 1, then remote connections from all local members of Administrators are granted full
14high-integrity tokens during negotiation.
15"""
16from = "now-9m"
17index = ["winlogbeat-*", "logs-endpoint.events.registry-*", "logs-windows.sysmon_operational-*", "endgame-*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*"]
18language = "eql"
19license = "Elastic License v2"
20name = "Local Account TokenFilter Policy Disabled"
21references = [
22    "https://www.stigviewer.com/stig/windows_server_2008_r2_member_server/2014-04-02/finding/V-36439",
23    "https://posts.specterops.io/pass-the-hash-is-dead-long-live-localaccounttokenfilterpolicy-506c25a7c167",
24    "https://www.welivesecurity.com/wp-content/uploads/2018/01/ESET_Turla_Mosquito.pdf",
25]
26risk_score = 47
27rule_id = "07b1ef73-1fde-4a49-a34a-5dd40011b076"
28severity = "medium"
29tags = [
30    "Domain: Endpoint",
31    "OS: Windows",
32    "Use Case: Threat Detection",
33    "Tactic: Defense Evasion",
34    "Tactic: Lateral Movement",
35    "Data Source: Elastic Endgame",
36    "Data Source: Elastic Defend",
37    "Data Source: Sysmon",
38    "Data Source: SentinelOne",
39    "Data Source: Microsoft Defender for Endpoint"
40]
41timestamp_override = "event.ingested"
42type = "eql"
43
44query = '''
45registry where host.os.type == "windows" and event.type == "change" and
46  registry.value : "LocalAccountTokenFilterPolicy" and
47  registry.path : (
48    "HKLM\\*\\LocalAccountTokenFilterPolicy",
49    "\\REGISTRY\\MACHINE\\*\\LocalAccountTokenFilterPolicy",
50    "MACHINE\\*\\LocalAccountTokenFilterPolicy"
51  ) and registry.data.strings : ("1", "0x00000001")
52'''
53
54
55[[rule.threat]]
56framework = "MITRE ATT&CK"
57[[rule.threat.technique]]
58id = "T1112"
59name = "Modify Registry"
60reference = "https://attack.mitre.org/techniques/T1112/"
61
62[[rule.threat.technique]]
63id = "T1562"
64name = "Impair Defenses"
65reference = "https://attack.mitre.org/techniques/T1562/"
66
67
68[rule.threat.tactic]
69id = "TA0005"
70name = "Defense Evasion"
71reference = "https://attack.mitre.org/tactics/TA0005/"
72
73
74[[rule.threat]]
75framework = "MITRE ATT&CK"
76[[rule.threat.technique]]
77id = "T1550"
78name = "Use Alternate Authentication Material"
79reference = "https://attack.mitre.org/techniques/T1550/"
80[[rule.threat.technique.subtechnique]]
81id = "T1550.002"
82name = "Pass the Hash"
83reference = "https://attack.mitre.org/techniques/T1550/002/"
84
85
86
87[rule.threat.tactic]
88id = "TA0008"
89name = "Lateral Movement"
90reference = "https://attack.mitre.org/tactics/TA0008/"

References

Related rules

to-top