[Rule Tuning] Adjust Index Pattern on Windows rules to support WEF (#2438)
* [Rule Tuning] Adjust Index Pattern on Windows rules to support WEF * s/host.id/winlog.computer_name
This commit is contained in:
@@ -3,7 +3,7 @@ creation_date = "2020/08/29"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/29"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ short time interval. Adversaries will often brute force login attempts across mu
|
||||
password, in an attempt to gain access to accounts.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Privileged Account Brute Force"
|
||||
@@ -62,7 +62,7 @@ tags = ["Elastic", "Host", "Windows", "Threat Detection", "Credential Access"]
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id, source.ip with maxspan=10s
|
||||
sequence by winlog.computer_name, source.ip with maxspan=10s
|
||||
[authentication where event.action == "logon-failed" and
|
||||
winlog.logon.type : "Network" and
|
||||
source.ip != null and source.ip != "127.0.0.1" and source.ip != "::1" and user.name : "*admin*" and
|
||||
|
||||
+3
-3
@@ -3,7 +3,7 @@ creation_date = "2020/08/29"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/29"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ brute force login attempts across multiple users with a common or known password
|
||||
accounts.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Multiple Logon Failure Followed by Logon Success"
|
||||
@@ -62,7 +62,7 @@ tags = ["Elastic", "Host", "Windows", "Threat Detection", "Credential Access"]
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id, source.ip with maxspan=5s
|
||||
sequence by winlog.computer_name, source.ip with maxspan=5s
|
||||
[authentication where event.action == "logon-failed" and
|
||||
/* event 4625 need to be logged */
|
||||
winlog.logon.type : "Network" and
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2020/08/29"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/29"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ Adversaries will often brute force login attempts across multiple users with a c
|
||||
to gain access to accounts.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Multiple Logon Failure from the same Source Address"
|
||||
@@ -66,7 +66,7 @@ tags = ["Elastic", "Host", "Windows", "Threat Detection", "Credential Access"]
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id, source.ip with maxspan=10s
|
||||
sequence by winlog.computer_name, source.ip with maxspan=10s
|
||||
[authentication where event.action == "logon-failed" and
|
||||
/* event 4625 need to be logged */
|
||||
winlog.logon.type : "Network" and
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/02/08"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/09/13"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ technique to get credential information of individual accounts or the entire dom
|
||||
domain.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Potential Credential Access via DCSync"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/01/24"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/09/13"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -12,7 +12,7 @@ Identifies the modification of an account's Kerberos pre-authentication options.
|
||||
the account can maliciously modify these settings to perform offline password cracking attacks such as AS-REP roasting.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Kerberos Pre-authentication Disabled for User"
|
||||
@@ -79,7 +79,7 @@ references = [
|
||||
risk_score = 47
|
||||
rule_id = "e514d8cd-ed15-4011-84e2-d15147e059f1"
|
||||
severity = "medium"
|
||||
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Credential Access", "Investigation Guide"]
|
||||
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Credential Access", "Investigation Guide", "Active Directory"]
|
||||
timestamp_override = "event.ingested"
|
||||
type = "query"
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/11/09"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/12/15"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -12,7 +12,7 @@ Identify access to sensitive Active Directory object attributes that contains cr
|
||||
unixUserPassword, ms-PKI-AccountCredentials and msPKI-CredentialRoamingTokens.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Access to a Sensitive LDAP Attribute"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
[metadata]
|
||||
creation_date = "2022/02/16"
|
||||
maturity = "production"
|
||||
updated_date = "2022/11/04"
|
||||
updated_date = "2022/12/21"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
|
||||
@@ -15,7 +15,7 @@ Procdump, Mimikatz, Comsvcs etc. It detects this behavior at a low level and doe
|
||||
file name.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "LSASS Memory Dump Handle Access"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/03/01"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/11/07"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -12,7 +12,7 @@ Identifies remote access to the registry to potentially dump credential data fro
|
||||
registry hive in preparation for credential access and privileges elevation.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-endpoint.events.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-endpoint.events.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Potential Remote Credential Access via Registry"
|
||||
@@ -78,7 +78,7 @@ tags = ["Elastic", "Host", "Windows", "Threat Detection", "Lateral Movement", "C
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id, user.id with maxspan=1m
|
||||
sequence by winlog.computer_name, user.id with maxspan=1m
|
||||
[authentication where
|
||||
event.outcome == "success" and event.action == "logged-in" and
|
||||
winlog.logon.type == "Network" and not user.name == "ANONYMOUS LOGON" and
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/08/30"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/11/07"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ applications, and networks. An adversary may abuse this to list or dump credenti
|
||||
saved usernames and passwords. This may also be performed in preparation of lateral movement.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Multiple Vault Web Credentials Read"
|
||||
@@ -31,7 +31,7 @@ tags = ["Elastic", "Host", "Windows", "Threat Detection", "Credential Access"]
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id, winlog.process.pid with maxspan=1s
|
||||
sequence by winlog.computer_name, winlog.process.pid with maxspan=1s
|
||||
|
||||
/* 2 consecutive vault reads from same pid for web creds */
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/01/27"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/09/13"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ SeEnableDelegationPrivilege "user right" enables computer and user accounts to b
|
||||
abuse this right to compromise Active Directory accounts and elevate their privileges.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Sensitive Privilege SeEnableDelegationPrivilege assigned to a User"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/01/26"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/10/15"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -19,7 +19,7 @@ false_positives = [
|
||||
""",
|
||||
]
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Potential Shadow Credentials added to AD Object"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/02/22"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/09/13"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ user to configure Service Principle Names (SPNs) so that they can perform Kerber
|
||||
configure this for legitimate purposes, exposing the account to Kerberoasting.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "User account exposed to Kerberoasting"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/02/16"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/11/07"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ attempt to exfiltrate credentials by dumping the Security Account Manager (SAM)
|
||||
credential access and privileges elevation.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Suspicious Remote Registry Access via SeBackupPrivilege"
|
||||
@@ -94,11 +94,11 @@ references = [
|
||||
risk_score = 47
|
||||
rule_id = "47e22836-4a16-4b35-beee-98f6c4ee9bf2"
|
||||
severity = "medium"
|
||||
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Lateral Movement", "Credential Access", "Investigation Guide"]
|
||||
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Lateral Movement", "Credential Access", "Investigation Guide", "Active Directory"]
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id, winlog.event_data.SubjectLogonId with maxspan=1m
|
||||
sequence by winlog.computer_name, winlog.event_data.SubjectLogonId with maxspan=1m
|
||||
[iam where event.action == "logged-in-special" and
|
||||
winlog.event_data.PrivilegeList : "SeBackupPrivilege" and
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2020/11/12"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/12/12"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic", "Anabella Cristaldi"]
|
||||
@@ -12,7 +12,7 @@ Identifies attempts to clear Windows event log stores. This is often done by att
|
||||
or destroy forensic evidence on a system.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Windows Event Logs Cleared"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
[metadata]
|
||||
creation_date = "2020/10/15"
|
||||
maturity = "production"
|
||||
updated_date = "2022/11/04"
|
||||
updated_date = "2022/12/21"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
|
||||
@@ -12,7 +12,7 @@ Identifies instances of an unusual process enumerating built-in Windows privileg
|
||||
Administrators or Remote Desktop users.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Enumeration of Privileged Local Groups Membership"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/08/30"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/30"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -12,7 +12,7 @@ Identifies a network logon followed by Windows service creation with same LogonI
|
||||
movement, but will be noisy if commonly done by administrators."
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Remote Windows Service Installed"
|
||||
@@ -23,7 +23,7 @@ tags = ["Elastic", "Host", "Windows", "Threat Detection", "Lateral Movement", "P
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by winlog.logon.id, host.id with maxspan=1m
|
||||
sequence by winlog.logon.id, winlog.computer_name with maxspan=1m
|
||||
[authentication where event.action == "logged-in" and winlog.logon.type : "Network" and
|
||||
event.outcome=="success" and source.ip != null and source.ip != "127.0.0.1" and source.ip != "::1"]
|
||||
[iam where event.action == "service-installed" and
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/08/29"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/29"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -12,7 +12,7 @@ Identifies a remote logon followed by a scheduled task creation on the target ho
|
||||
adversary lateral movement.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Remote Logon followed by Scheduled Task Creation"
|
||||
@@ -65,7 +65,7 @@ type = "eql"
|
||||
query = '''
|
||||
/* Network Logon followed by Scheduled Task creation */
|
||||
|
||||
sequence by host.id with maxspan=1m
|
||||
sequence by winlog.computer_name with maxspan=1m
|
||||
[authentication where event.action == "logged-in" and
|
||||
winlog.logon.type == "Network" and event.outcome == "success" and
|
||||
not user.name == "ANONYMOUS LOGON" and not winlog.event_data.SubjectUserName : "*$" and
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2020/02/18"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/24"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -12,7 +12,7 @@ Identifies Service Control (sc.exe) spawning from script interpreter processes t
|
||||
This could be indicative of adversary lateral movement but will be noisy if commonly done by admins.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["logs-endpoint.events.*", "logs-system.*", "winlogbeat-*"]
|
||||
index = ["logs-endpoint.events.*", "logs-system.*", "winlogbeat-*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Service Control Spawned via Script Interpreter"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/01/31"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/24"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -15,7 +15,7 @@ the protected accounts and groups are reset to match those of the domain's Admin
|
||||
Administrative Privileges.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "AdminSDHolder Backdoor"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/02/22"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/09/13"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -21,7 +21,7 @@ false_positives = [
|
||||
""",
|
||||
]
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Account Configured with Never-Expiring Password"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/01/27"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/24"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -12,7 +12,7 @@ Identifies the modification of the msDS-AllowedToDelegateTo attribute to KRBTGT.
|
||||
maintain persistence to the domain by having the ability to request tickets for the KRBTGT service.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "KRBTGT Delegation Backdoor"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2021/10/18"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/11/07"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ passwords to maintain access or evade password duration policies and preserve co
|
||||
"""
|
||||
false_positives = ["Legitimate remote account administration."]
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Account Password Reset Remotely"
|
||||
@@ -30,7 +30,7 @@ tags = ["Elastic", "Host", "Windows", "Threat Detection", "Persistence"]
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id with maxspan=5m
|
||||
sequence by winlog.computer_name with maxspan=5m
|
||||
[authentication where event.action == "logged-in" and
|
||||
/* event 4624 need to be logged */
|
||||
winlog.logon.type : "Network" and event.outcome == "success" and source.ip != null and
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/08/29"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/10/26"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ move laterally, and/or escalate privileges.
|
||||
"""
|
||||
false_positives = ["Legitimate scheduled tasks may be created during installation of new software."]
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "A scheduled task was created"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/08/29"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/10/26"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -14,7 +14,7 @@ common and may may generate noise.
|
||||
"""
|
||||
false_positives = ["Legitimate scheduled tasks may be created during installation of new software."]
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "A scheduled task was updated"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/02/24"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/09/13"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -16,7 +16,7 @@ remain unchanged. Attackers can abuse this misconfiguration to maintain long-ter
|
||||
groups.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "AdminSDHolder SDProp Exclusion Added"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/08/30"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/30"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -12,7 +12,7 @@ Identifies the creation of a new Windows service with suspicious Service command
|
||||
as SYSTEM and can be used for privilege escalation and persistence.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Suspicious service was installed in the system"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/08/29"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/12/12"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ malicious execution via the schedule service and perform clean up.
|
||||
"""
|
||||
false_positives = ["Legitimate scheduled tasks may be created during installation of new software."]
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Temporarily Scheduled Task Creation"
|
||||
@@ -25,7 +25,7 @@ tags = ["Elastic", "Host", "Windows", "Threat Detection", "Defense Evasion", "Pe
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id, winlog.event_data.TaskName with maxspan=5m
|
||||
sequence by winlog.computer_name, winlog.event_data.TaskName with maxspan=5m
|
||||
[iam where event.action == "scheduled-task-created" and not user.name : "*$"]
|
||||
[iam where event.action == "scheduled-task-deleted" and not user.name : "*$"]
|
||||
'''
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2021/01/09"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/11/01"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic", "Skoetting"]
|
||||
@@ -13,7 +13,7 @@ Directory are those to which powerful rights, privileges, and permissions are gr
|
||||
any action in Active Directory and on domain-joined systems.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "User Added to Privileged Group"
|
||||
@@ -61,7 +61,7 @@ references = [
|
||||
risk_score = 47
|
||||
rule_id = "5cd8e1f7-0050-4afc-b2df-904e40b2f5ae"
|
||||
severity = "medium"
|
||||
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Persistence", "Investigation Guide"]
|
||||
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Persistence", "Investigation Guide", "Active Directory"]
|
||||
timestamp_override = "event.ingested"
|
||||
type = "eql"
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
[metadata]
|
||||
creation_date = "2021/01/04"
|
||||
maturity = "development"
|
||||
updated_date = "2022/11/01"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Skoetting"]
|
||||
@@ -16,7 +16,7 @@ false_positives = [
|
||||
behavior is causing false positives, it can be exempted from the rule.
|
||||
""",
|
||||
]
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Windows User Account Creation"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/08/30"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/10/26"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -12,7 +12,7 @@ Identifies process creation with alternate credentials. Adversaries may create a
|
||||
escalate privileges and bypass access controls.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Process Creation via Secondary Logon"
|
||||
@@ -31,7 +31,7 @@ tags = ["Elastic", "Host", "Windows", "Threat Detection", "Privilege Escalation"
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id with maxspan=1m
|
||||
sequence by winlog.computer_name with maxspan=1m
|
||||
|
||||
[authentication where event.action:"logged-in" and
|
||||
event.outcome == "success" and user.id : ("S-1-5-21-*", "S-1-12-1-*") and
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/11/09"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/11/09"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -14,7 +14,7 @@ contains binary large objects (BLOBs) of encrypted credential objects from the c
|
||||
certificates, and certificate requests.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Modification of the msPKIAccountCredentials"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2021/11/08"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/09/13"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -11,7 +11,7 @@ description = """
|
||||
Detects the modification of Group Policy Objects (GPO) to add a startup/logon script to users or computer objects.
|
||||
"""
|
||||
false_positives = ["Legitimate Administrative Activity"]
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Startup/Logon Script added to Group Policy Object"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2021/11/08"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/09/13"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -11,7 +11,7 @@ description = """
|
||||
Detects the first occurrence of a modification to Group Policy Object Attributes to add privileges to user accounts or
|
||||
use them to add users as local admins.
|
||||
"""
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Group Policy Abuse for Privilege Addition"
|
||||
|
||||
@@ -3,14 +3,14 @@ creation_date = "2021/11/08"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/09/13"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
description = """
|
||||
Detects the modification of Group Policy Object attributes to execute a scheduled task in the objects controlled by the GPO.
|
||||
"""
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Scheduled Task Execution at Scale via GPO"
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/04/27"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/24"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ localhost, followed by a sevice creation from the same LogonId. This may indicat
|
||||
relay attack variant that can be used to elevate privilege locally from a domain joined user to local System privileges.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Service Creation via Local Kerberos Authentication"
|
||||
@@ -26,11 +26,11 @@ references = [
|
||||
risk_score = 73
|
||||
rule_id = "e4e31051-ee01-4307-a6ee-b21b186958f4"
|
||||
severity = "high"
|
||||
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Privilege Escalation", "Credential Access"]
|
||||
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Privilege Escalation", "Credential Access", "Active Directory"]
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id with maxspan=5m
|
||||
sequence by winlog.computer_name with maxspan=5m
|
||||
[authentication where
|
||||
|
||||
/* event 4624 need to be logged */
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2021/12/12"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/24"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ elevate privileges from a standard domain user to a user with domain admin privi
|
||||
vulnerability that allows potential attackers to impersonate a domain controller via samAccountName attribute spoofing.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Potential Privileged Escalation via SamAccountName Spoofing"
|
||||
@@ -31,7 +31,7 @@ references = [
|
||||
risk_score = 73
|
||||
rule_id = "bdcf646b-08d4-492c-870a-6c04e3700034"
|
||||
severity = "high"
|
||||
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Persistence", "Privilege Escalation"]
|
||||
tags = ["Elastic", "Host", "Windows", "Threat Detection", "Persistence", "Privilege Escalation", "Active Directory"]
|
||||
timestamp_override = "event.ingested"
|
||||
type = "eql"
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/05/11"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/11/10"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ controller DNS hostname and the subject computer name is not a domain controller
|
||||
step to exploit CVE-2022-26923 in an attempt to elevate privileges from a standard domain user to domain admin privileges.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "eql"
|
||||
license = "Elastic License v2"
|
||||
name = "Remote Computer Account DnsHostName Update"
|
||||
@@ -28,7 +28,7 @@ tags = ["Elastic", "Host", "Windows", "Threat Detection", "Privilege Escalation"
|
||||
type = "eql"
|
||||
|
||||
query = '''
|
||||
sequence by host.id with maxspan=5m
|
||||
sequence by winlog.computer_name with maxspan=5m
|
||||
|
||||
[authentication where event.action == "logged-in" and
|
||||
winlog.logon.type == "Network" and event.outcome == "success" and
|
||||
|
||||
@@ -3,7 +3,7 @@ creation_date = "2022/02/07"
|
||||
maturity = "production"
|
||||
min_stack_comments = "New fields added: required_fields, related_integrations, setup"
|
||||
min_stack_version = "8.3.0"
|
||||
updated_date = "2022/08/24"
|
||||
updated_date = "2022/12/21"
|
||||
|
||||
[rule]
|
||||
author = ["Elastic"]
|
||||
@@ -13,7 +13,7 @@ privileges but are executed under SYSTEM privileges, so an adversary may also us
|
||||
administrator to SYSTEM.
|
||||
"""
|
||||
from = "now-9m"
|
||||
index = ["winlogbeat-*", "logs-system.*"]
|
||||
index = ["winlogbeat-*", "logs-system.*", "logs-windows.*"]
|
||||
language = "kuery"
|
||||
license = "Elastic License v2"
|
||||
name = "Windows Service Installed via an Unusual Client"
|
||||
|
||||
Reference in New Issue
Block a user