Skip to content

Commit 73d1052

Browse files
w0rk3rtradebot-elastic
authored andcommitted
[Rule Tuning] Windows 3rd Party EDR Compatibility - Part 6 (#5021)
* [Rule Tuning] Windows 3rd Party EDR Compatibility - Part 6 * Apply suggestions from code review Co-authored-by: Samirbous <[email protected]> * Update defense_evasion_proxy_execution_via_msdt.toml --------- Co-authored-by: Samirbous <[email protected]> (cherry picked from commit 1af98a6)
1 parent 2d3b1a1 commit 73d1052

5 files changed

+46
-23
lines changed

rules/windows/defense_evasion_persistence_account_tokenfilterpolicy.toml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
[metadata]
22
creation_date = "2022/11/01"
3-
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender"]
3+
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender", "crowdstrike"]
44
maturity = "production"
5-
updated_date = "2025/07/03"
5+
updated_date = "2025/08/26"
66

77
[rule]
88
author = ["Elastic"]
@@ -19,6 +19,7 @@ index = [
1919
"endgame-*",
2020
"logs-sentinel_one_cloud_funnel.*",
2121
"logs-m365_defender.event-*",
22+
"logs-crowdstrike.fdr*",
2223
]
2324
language = "eql"
2425
license = "Elastic License v2"
@@ -76,6 +77,7 @@ tags = [
7677
"Data Source: Sysmon",
7778
"Data Source: SentinelOne",
7879
"Data Source: Microsoft Defender for Endpoint",
80+
"Data Source: Crowdstrike",
7981
"Resources: Investigation Guide",
8082
]
8183
timestamp_override = "event.ingested"
@@ -92,7 +94,11 @@ registry where host.os.type == "windows" and event.type == "change" and
9294
not process.executable : (
9395
/* Intune */
9496
"C:\\Windows\\system32\\deviceenroller.exe",
95-
"C:\\Windows\\system32\\omadmclient.exe"
97+
"C:\\Windows\\system32\\omadmclient.exe",
98+
99+
/* Crowdstrike specific exclusion as it uses NT Object paths */
100+
"\\Device\\HarddiskVolume*\\system32\\deviceenroller.exe",
101+
"\\Device\\HarddiskVolume*\\system32\\omadmclient.exe"
96102
)
97103
'''
98104

rules/windows/defense_evasion_proxy_execution_via_msdt.toml

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
[metadata]
22
creation_date = "2022/05/31"
3-
integration = ["endpoint", "windows", "m365_defender"]
3+
integration = ["endpoint", "windows", "m365_defender", "crowdstrike", "sentinel_one_cloud_funnel"]
44
maturity = "production"
5-
updated_date = "2025/03/20"
5+
updated_date = "2025/08/26"
66

77
[rule]
88
author = ["Elastic"]
@@ -17,6 +17,8 @@ index = [
1717
"logs-windows.sysmon_operational-*",
1818
"endgame-*",
1919
"logs-m365_defender.event-*",
20+
"logs-crowdstrike.fdr*",
21+
"logs-sentinel_one_cloud_funnel.*",
2022
]
2123
language = "eql"
2224
license = "Elastic License v2"
@@ -72,25 +74,38 @@ tags = [
7274
"Data Source: Elastic Defend",
7375
"Data Source: Microsoft Defender for Endpoint",
7476
"Data Source: Sysmon",
77+
"Data Source: Crowdstrike",
78+
"Data Source: SentinelOne",
7579
"Resources: Investigation Guide",
7680
]
7781
timestamp_override = "event.ingested"
7882
type = "eql"
7983

8084
query = '''
8185
process where host.os.type == "windows" and event.type == "start" and
82-
(process.pe.original_file_name == "msdt.exe" or process.name : "msdt.exe") and
83-
(
86+
(?process.pe.original_file_name == "msdt.exe" or process.name : "msdt.exe") and
87+
(
8488
process.args : ("IT_RebrowseForFile=*", "ms-msdt:/id", "ms-msdt:-id", "*FromBase64*") or
8589
86-
(process.args : "-af" and process.args : "/skip" and
87-
process.parent.name : ("explorer.exe", "cmd.exe", "powershell.exe", "cscript.exe", "wscript.exe", "mshta.exe", "rundll32.exe", "regsvr32.exe") and
88-
process.args : ("?:\\WINDOWS\\diagnostics\\index\\PCWDiagnostic.xml", "PCWDiagnostic.xml", "?:\\Users\\Public\\*", "?:\\Windows\\Temp\\*")) or
90+
(
91+
process.args : "-af" and process.args : "/skip" and
92+
process.parent.name : ("explorer.exe", "cmd.exe", "powershell.exe", "cscript.exe", "wscript.exe", "mshta.exe", "rundll32.exe", "regsvr32.exe") and
93+
process.args : ("?:\\WINDOWS\\diagnostics\\index\\PCWDiagnostic.xml", "PCWDiagnostic.xml", "?:\\Users\\Public\\*", "?:\\Windows\\Temp\\*")
94+
) or
8995
9096
(process.pe.original_file_name == "msdt.exe" and not process.name : "msdt.exe" and process.name != null) or
9197
92-
(process.pe.original_file_name == "msdt.exe" and not process.executable : ("?:\\Windows\\system32\\msdt.exe", "?:\\Windows\\SysWOW64\\msdt.exe"))
98+
(
99+
?process.pe.original_file_name == "msdt.exe" and
100+
not process.executable : (
101+
"?:\\Windows\\system32\\msdt.exe",
102+
"?:\\Windows\\SysWOW64\\msdt.exe",
103+
/* Crowdstrike specific exclusion as it uses NT Object paths */
104+
"\\Device\\HarddiskVolume*\\Windows\\system32\\msdt.exe",
105+
"\\Device\\HarddiskVolume*\\Windows\\SysWOW64\\msdt.exe"
106+
)
93107
)
108+
)
94109
'''
95110

96111

rules/windows/defense_evasion_reg_disable_enableglobalqueryblocklist.toml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
[metadata]
22
creation_date = "2024/05/31"
3-
integration = ["endpoint", "windows", "m365_defender", "sentinel_one_cloud_funnel"]
3+
integration = ["endpoint", "windows", "m365_defender", "sentinel_one_cloud_funnel", "crowdstrike"]
44
maturity = "production"
5-
updated_date = "2025/03/20"
5+
updated_date = "2025/08/26"
66

77
[rule]
88
author = ["Elastic"]
@@ -20,6 +20,7 @@ index = [
2020
"logs-m365_defender.event-*",
2121
"logs-sentinel_one_cloud_funnel.*",
2222
"endgame-*",
23+
"logs-crowdstrike.fdr*",
2324
]
2425
language = "eql"
2526
license = "Elastic License v2"
@@ -76,6 +77,7 @@ tags = [
7677
"Data Source: Microsoft Defender for Endpoint",
7778
"Data Source: SentinelOne",
7879
"Data Source: Elastic Endgame",
80+
"Data Source: Crowdstrike",
7981
"Resources: Investigation Guide",
8082
]
8183
timestamp_override = "event.ingested"

rules/windows/defense_evasion_rundll32_no_arguments.toml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
[metadata]
22
creation_date = "2020/09/02"
3-
integration = ["endpoint", "windows"]
3+
integration = ["endpoint", "windows", "crowdstrike"]
44
maturity = "production"
5-
updated_date = "2025/08/12"
5+
updated_date = "2025/08/26"
66

77
[transform]
88
[[transform.osquery]]
@@ -37,7 +37,7 @@ Identifies child processes of unusual instances of RunDLL32 where the command li
3737
RunDLL32 could indicate malicious activity.
3838
"""
3939
from = "now-60m"
40-
index = ["logs-endpoint.events.process-*", "winlogbeat-*", "logs-windows.sysmon_operational-*"]
40+
index = ["logs-endpoint.events.process-*", "winlogbeat-*", "logs-windows.sysmon_operational-*", "logs-crowdstrike.fdr*"]
4141
interval = "30m"
4242
language = "eql"
4343
license = "Elastic License v2"
@@ -108,6 +108,7 @@ tags = [
108108
"Tactic: Defense Evasion",
109109
"Data Source: Elastic Defend",
110110
"Data Source: Sysmon",
111+
"Data Source: Crowdstrike",
111112
"Resources: Investigation Guide",
112113
]
113114
type = "eql"

rules/windows/defense_evasion_scheduledjobs_at_protocol_enabled.toml

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
[metadata]
22
creation_date = "2020/11/23"
3-
integration = ["endpoint", "windows", "m365_defender", "sentinel_one_cloud_funnel"]
3+
integration = ["endpoint", "windows", "m365_defender", "sentinel_one_cloud_funnel", "crowdstrike"]
44
maturity = "production"
5-
updated_date = "2025/03/20"
5+
updated_date = "2025/08/26"
66

77
[rule]
88
author = ["Elastic"]
@@ -19,6 +19,7 @@ index = [
1919
"endgame-*",
2020
"logs-m365_defender.event-*",
2121
"logs-sentinel_one_cloud_funnel.*",
22+
"logs-crowdstrike.fdr*",
2223
]
2324
language = "eql"
2425
license = "Elastic License v2"
@@ -72,18 +73,16 @@ tags = [
7273
"Data Source: Sysmon",
7374
"Data Source: Microsoft Defender for Endpoint",
7475
"Data Source: SentinelOne",
76+
"Data Source: Crowdstrike",
7577
"Resources: Investigation Guide",
7678
]
7779
timestamp_override = "event.ingested"
7880
type = "eql"
7981

8082
query = '''
8183
registry where host.os.type == "windows" and event.type == "change" and
82-
registry.path : (
83-
"HKLM\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Schedule\\Configuration\\EnableAt",
84-
"\\REGISTRY\\MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Schedule\\Configuration\\EnableAt",
85-
"MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Schedule\\Configuration\\EnableAt"
86-
) and registry.data.strings : ("1", "0x00000001")
84+
registry.value : "EnableAt" and
85+
registry.data.strings : ("1", "0x00000001")
8786
'''
8887

8988

0 commit comments

Comments
 (0)