Skip to content

Commit 538d8f9

Browse files
Merge branch 'main' into rule-tuning-aws-sts-temporary-credentials-via-assumedrole
2 parents c1d0288 + 2b6116e commit 538d8f9

File tree

34 files changed

+196
-146
lines changed

34 files changed

+196
-146
lines changed
730 Bytes
Binary file not shown.
202 KB
Binary file not shown.

detection_rules/schemas/definitions.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,8 @@ def validator(value):
7979
'sentinel_one_cloud_funnel',
8080
'ti_rapid7_threat_command',
8181
'm365_defender',
82-
'panw']
82+
'panw',
83+
'crowdstrike']
8384
NON_PUBLIC_FIELDS = {
8485
"related_integrations": (Version.parse('8.3.0'), None),
8586
"required_fields": (Version.parse('8.3.0'), None),

rules/windows/collection_email_powershell_exchange_mailbox.toml

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[metadata]
22
creation_date = "2020/12/15"
3-
integration = ["endpoint", "windows", "system", "sentinel_one_cloud_funnel", "m365_defender"]
3+
integration = ["endpoint", "windows", "system", "sentinel_one_cloud_funnel", "m365_defender", "crowdstrike"]
44
maturity = "production"
55
min_stack_comments = "Breaking change at 8.14.0 for the Windows Integration."
66
min_stack_version = "8.14.0"
7-
updated_date = "2024/10/15"
7+
updated_date = "2024/10/31"
88

99
[rule]
1010
author = ["Elastic"]
@@ -22,6 +22,7 @@ index = [
2222
"logs-system.security*",
2323
"logs-sentinel_one_cloud_funnel.*",
2424
"logs-m365_defender.event-*",
25+
"logs-crowdstrike.fdr*",
2526
]
2627
language = "eql"
2728
license = "Elastic License v2"
@@ -74,14 +75,6 @@ references = [
7475
]
7576
risk_score = 47
7677
rule_id = "6aace640-e631-4870-ba8e-5fdda09325db"
77-
setup = """## Setup
78-
79-
If enabling an EQL rule on a non-elastic-agent index (such as beats) for versions <8.2,
80-
events will not define `event.ingested` and default fallback for EQL rules was not added until version 8.2.
81-
Hence for this rule to work effectively, users will need to add a custom ingest pipeline to populate
82-
`event.ingested` to @timestamp.
83-
For more details on adding a custom ingest pipeline refer - https://www.elastic.co/guide/en/fleet/current/data-streams-pipeline-tutorial.html
84-
"""
8578
severity = "medium"
8679
tags = [
8780
"Domain: Endpoint",
@@ -95,6 +88,7 @@ tags = [
9588
"Data Source: SentinelOne",
9689
"Data Source: Microsoft Defender for Endpoint",
9790
"Data Source: System",
91+
"Data Source: Crowdstrike",
9892
]
9993
timestamp_override = "event.ingested"
10094
type = "eql"

rules/windows/command_and_control_headless_browser.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/10"
3-
integration = ["endpoint", "windows", "system", "m365_defender", "sentinel_one_cloud_funnel"]
3+
integration = ["endpoint", "windows", "system", "m365_defender", "sentinel_one_cloud_funnel", "crowdstrike"]
44
maturity = "production"
5-
updated_date = "2024/10/15"
5+
updated_date = "2024/10/31"
66
min_stack_version = "8.14.0"
77
min_stack_comments = "Breaking change at 8.14.0 for the Windows Integration."
88

@@ -22,6 +22,7 @@ index = [
2222
"logs-system.security*",
2323
"logs-m365_defender.event-*",
2424
"logs-sentinel_one_cloud_funnel.*",
25+
"logs-crowdstrike.fdr*",
2526
]
2627
language = "eql"
2728
license = "Elastic License v2"
@@ -67,6 +68,7 @@ tags = [
6768
"Data Source: Microsoft Defender for Endpoint",
6869
"Data Source: SentinelOne",
6970
"Data Source: Sysmon",
71+
"Data Source: Crowdstrike",
7072
]
7173
timestamp_override = "event.ingested"
7274
type = "eql"

rules/windows/command_and_control_rdp_tunnel_plink.toml

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[metadata]
22
creation_date = "2020/10/14"
3-
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender", "system"]
3+
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender", "system", "crowdstrike"]
44
maturity = "production"
55
min_stack_comments = "Breaking change at 8.14.0 for the Windows Integration."
66
min_stack_version = "8.14.0"
7-
updated_date = "2024/10/17"
7+
updated_date = "2024/10/31"
88

99
[rule]
1010
author = ["Elastic"]
@@ -13,7 +13,7 @@ Identifies potential use of an SSH utility to establish RDP over a reverse SSH T
1313
enable routing of network packets that would otherwise not reach their intended destination.
1414
"""
1515
from = "now-9m"
16-
index = ["logs-endpoint.events.process-*", "winlogbeat-*", "logs-windows.*", "endgame-*", "logs-system.security*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*"]
16+
index = ["logs-endpoint.events.process-*", "winlogbeat-*", "logs-windows.*", "endgame-*", "logs-system.security*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*", "logs-crowdstrike.fdr*"]
1717
language = "eql"
1818
license = "Elastic License v2"
1919
name = "Potential Remote Desktop Tunneling Detected"
@@ -54,14 +54,6 @@ This rule looks for command lines involving the `3389` port, which RDP uses by d
5454
references = ["https://blog.netspi.com/how-to-access-rdp-over-a-reverse-ssh-tunnel/"]
5555
risk_score = 73
5656
rule_id = "76fd43b7-3480-4dd9-8ad7-8bd36bfad92f"
57-
setup = """## Setup
58-
59-
If enabling an EQL rule on a non-elastic-agent index (such as beats) for versions <8.2,
60-
events will not define `event.ingested` and default fallback for EQL rules was not added until version 8.2.
61-
Hence for this rule to work effectively, users will need to add a custom ingest pipeline to populate
62-
`event.ingested` to @timestamp.
63-
For more details on adding a custom ingest pipeline refer - https://www.elastic.co/guide/en/fleet/current/data-streams-pipeline-tutorial.html
64-
"""
6557
severity = "high"
6658
tags = [
6759
"Domain: Endpoint",
@@ -75,6 +67,7 @@ tags = [
7567
"Data Source: SentinelOne",
7668
"Data Source: Microsoft Defender for Endpoint",
7769
"Data Source: System",
70+
"Data Source: Crowdstrike",
7871
]
7972
timestamp_override = "event.ingested"
8073
type = "eql"

rules/windows/command_and_control_screenconnect_childproc.toml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[metadata]
22
creation_date = "2024/03/27"
3-
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender", "system"]
3+
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender", "system", "crowdstrike"]
44
maturity = "production"
55
min_stack_comments = "Breaking change at 8.14.0 for the Windows Integration."
66
min_stack_version = "8.14.0"
7-
updated_date = "2024/10/17"
7+
updated_date = "2024/10/31"
88

99
[rule]
1010
author = ["Elastic"]
@@ -13,7 +13,7 @@ Identifies suspicious processes being spawned by the ScreenConnect client proces
1313
abusing unauthorized access to the ScreenConnect remote access software.
1414
"""
1515
from = "now-9m"
16-
index = ["logs-endpoint.events.process-*", "winlogbeat-*", "logs-windows.sysmon_operational-*", "logs-system.security*", "endgame-*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*"]
16+
index = ["logs-endpoint.events.process-*", "winlogbeat-*", "logs-windows.sysmon_operational-*", "logs-system.security*", "endgame-*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*", "logs-crowdstrike.fdr*"]
1717
language = "eql"
1818
license = "Elastic License v2"
1919
name = "Suspicious ScreenConnect Client Child Process"
@@ -33,6 +33,7 @@ tags = [
3333
"Data Source: SentinelOne",
3434
"Data Source: Microsoft Defender for Endpoint",
3535
"Data Source: System",
36+
"Data Source: Crowdstrike",
3637
]
3738
timestamp_override = "event.ingested"
3839
type = "eql"

rules/windows/command_and_control_tunnel_vscode.toml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[metadata]
22
creation_date = "2024/09/09"
3-
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender", "system"]
3+
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender", "system", "crowdstrike"]
44
maturity = "production"
55
min_stack_comments = "Breaking change at 8.14.0 for the Windows Integration."
66
min_stack_version = "8.14.0"
7-
updated_date = "2024/10/17"
7+
updated_date = "2024/10/31"
88

99
[rule]
1010
author = ["Elastic"]
@@ -13,7 +13,7 @@ Detects the execution of the VScode portable binary with the tunnel command line
1313
attempt to establish a remote tunnel session to Github or a remote VScode instance.
1414
"""
1515
from = "now-9m"
16-
index = ["logs-endpoint.events.process-*", "winlogbeat-*", "logs-windows.sysmon_operational-*", "logs-system.security*", "endgame-*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*"]
16+
index = ["logs-endpoint.events.process-*", "winlogbeat-*", "logs-windows.sysmon_operational-*", "logs-system.security*", "endgame-*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*", "logs-crowdstrike.fdr*"]
1717
language = "eql"
1818
license = "Elastic License v2"
1919
name = "Attempt to Establish VScode Remote Tunnel"
@@ -35,6 +35,7 @@ tags = [
3535
"Data Source: SentinelOne",
3636
"Data Source: Microsoft Defender for Endpoint",
3737
"Data Source: System",
38+
"Data Source: Crowdstrike",
3839
]
3940
timestamp_override = "event.ingested"
4041
type = "eql"

rules/windows/credential_access_domain_backup_dpapi_private_keys.toml

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[metadata]
22
creation_date = "2020/08/13"
3-
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender"]
3+
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender", "crowdstrike"]
44
maturity = "production"
55
min_stack_comments = "Breaking change at 8.14.0 for the Windows Integration."
66
min_stack_version = "8.14.0"
7-
updated_date = "2024/10/15"
7+
updated_date = "2024/10/31"
88

99
[rule]
1010
author = ["Elastic"]
@@ -13,7 +13,7 @@ Identifies the creation or modification of Domain Backup private keys. Adversari
1313
(DPAPI) domain backup key from a Domain Controller (DC) to be able to decrypt any domain user master key file.
1414
"""
1515
from = "now-9m"
16-
index = ["winlogbeat-*", "logs-endpoint.events.file-*", "logs-windows.sysmon_operational-*", "endgame-*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*"]
16+
index = ["winlogbeat-*", "logs-endpoint.events.file-*", "logs-windows.sysmon_operational-*", "endgame-*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*", "logs-crowdstrike.fdr*"]
1717
language = "eql"
1818
license = "Elastic License v2"
1919
name = "Creation or Modification of Domain Backup DPAPI private key"
@@ -27,16 +27,8 @@ references = [
2727
]
2828
risk_score = 73
2929
rule_id = "b83a7e96-2eb3-4edf-8346-427b6858d3bd"
30-
setup = """## Setup
31-
32-
If enabling an EQL rule on a non-elastic-agent index (such as beats) for versions <8.2,
33-
events will not define `event.ingested` and default fallback for EQL rules was not added until version 8.2.
34-
Hence for this rule to work effectively, users will need to add a custom ingest pipeline to populate
35-
`event.ingested` to @timestamp.
36-
For more details on adding a custom ingest pipeline refer - https://www.elastic.co/guide/en/fleet/current/data-streams-pipeline-tutorial.html
37-
"""
3830
severity = "high"
39-
tags = ["Domain: Endpoint", "OS: Windows", "Use Case: Threat Detection", "Tactic: Credential Access", "Data Source: Elastic Endgame", "Data Source: Elastic Defend", "Data Source: Sysmon", "Data Source: SentinelOne", "Data Source: Microsoft Defender for Endpoint"]
31+
tags = ["Domain: Endpoint", "OS: Windows", "Use Case: Threat Detection", "Tactic: Credential Access", "Data Source: Elastic Endgame", "Data Source: Elastic Defend", "Data Source: Sysmon", "Data Source: SentinelOne", "Data Source: Microsoft Defender for Endpoint", "Data Source: Crowdstrike"]
4032
timestamp_override = "event.ingested"
4133
type = "eql"
4234

rules/windows/credential_access_kirbi_file.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[metadata]
22
creation_date = "2023/08/23"
3-
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender"]
3+
integration = ["endpoint", "windows", "sentinel_one_cloud_funnel", "m365_defender", "crowdstrike"]
44
maturity = "production"
55
min_stack_comments = "Breaking change at 8.14.0 for the Windows Integration."
66
min_stack_version = "8.14.0"
7-
updated_date = "2024/10/15"
7+
updated_date = "2024/10/31"
88

99
[rule]
1010
author = ["Elastic"]
@@ -14,14 +14,14 @@ Kerberos ticket dump utilities, such as Mimikatz, and precedes attacks such as P
1414
attacker to impersonate users using Kerberos tickets.
1515
"""
1616
from = "now-9m"
17-
index = ["logs-endpoint.events.file-*", "logs-windows.sysmon_operational-*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*", "winlogbeat-*", "endgame-*"]
17+
index = ["logs-endpoint.events.file-*", "logs-windows.sysmon_operational-*", "logs-sentinel_one_cloud_funnel.*", "logs-m365_defender.event-*", "winlogbeat-*", "endgame-*", "logs-crowdstrike.fdr*"]
1818
language = "eql"
1919
license = "Elastic License v2"
2020
name = "Kirbi File Creation"
2121
risk_score = 73
2222
rule_id = "b8f8da2d-a9dc-48c0-90e4-955c0aa1259a"
2323
severity = "high"
24-
tags = ["Domain: Endpoint", "OS: Windows", "Use Case: Threat Detection", "Tactic: Credential Access", "Data Source: Elastic Defend", "Data Source: Sysmon", "Data Source: SentinelOne", "Data Source: Microsoft Defender for Endpoint", "Data Source: Elastic Endgame"]
24+
tags = ["Domain: Endpoint", "OS: Windows", "Use Case: Threat Detection", "Tactic: Credential Access", "Data Source: Elastic Defend", "Data Source: Sysmon", "Data Source: SentinelOne", "Data Source: Microsoft Defender for Endpoint", "Data Source: Elastic Endgame", "Data Source: Crowdstrike"]
2525
timestamp_override = "event.ingested"
2626
type = "eql"
2727

0 commit comments

Comments
 (0)