Skip to content

Commit eead81f

Browse files
author
Patrick Bareiss
committed
new detection yml schema
1 parent 7e119c8 commit eead81f

18 files changed

+126
-376
lines changed

detections/cloud/github_enterprise_created_self_hosted_runner.yml

Lines changed: 7 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -34,33 +34,23 @@ drilldown_searches:
3434
search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
3535
earliest_offset: $info_min_time$
3636
latest_offset: $info_max_time$
37+
rba:
38+
message: $user$ created a self-hosted runner in GitHub Enterprise
39+
risk_objects:
40+
- field: user
41+
type: user
42+
score: 25
43+
threat_objects: []
3744
tags:
3845
analytic_story:
3946
- GitHub Malicious Activity
4047
asset_type: GitHub
41-
confidence: 90
42-
impact: 30
43-
message: $user$ created a self-hosted runner in GitHub Enterprise
4448
mitre_attack_id:
4549
- T1562.001
46-
observable:
47-
- name: user
48-
type: User
49-
role:
50-
- Victim
5150
product:
5251
- Splunk Enterprise
5352
- Splunk Enterprise Security
5453
- Splunk Cloud
55-
required_fields:
56-
- actor
57-
- actor_id
58-
- actor_is_bot
59-
- actor_location.country_code
60-
- business
61-
- business_id
62-
- user_agent
63-
risk_score: 27
6454
security_domain: network
6555
tests:
6656
- name: True Positive Test

detections/cloud/github_enterprise_delete_branch_ruleset.yml

Lines changed: 7 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -35,38 +35,23 @@ drilldown_searches:
3535
search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
3636
earliest_offset: $info_min_time$
3737
latest_offset: $info_max_time$
38+
rba:
39+
message: $user$ deleted a branch ruleset in repo $repo$
40+
risk_objects:
41+
- field: user
42+
type: user
43+
score: 25
44+
threat_objects: []
3845
tags:
3946
analytic_story:
4047
- GitHub Malicious Activity
4148
asset_type: GitHub
42-
confidence: 90
43-
impact: 30
44-
message: $user$ deleted a branch ruleset in repo $repo$
4549
mitre_attack_id:
4650
- T1562.001
47-
observable:
48-
- name: user
49-
type: User
50-
role:
51-
- Victim
5251
product:
5352
- Splunk Enterprise
5453
- Splunk Enterprise Security
5554
- Splunk Cloud
56-
required_fields:
57-
- actor
58-
- actor_id
59-
- actor_is_bot
60-
- actor_location.country_code
61-
- business
62-
- business_id
63-
- org
64-
- org_id
65-
- repo
66-
- repo_id
67-
- user_agent
68-
- ruleset_name
69-
risk_score: 27
7055
security_domain: network
7156
tests:
7257
- name: True Positive Test

detections/cloud/github_enterprise_disable_2fa_requirement.yml

Lines changed: 7 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -35,33 +35,23 @@ drilldown_searches:
3535
search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
3636
earliest_offset: $info_min_time$
3737
latest_offset: $info_max_time$
38+
rba:
39+
message: $user$ disabled 2FA requirement
40+
risk_objects:
41+
- field: user
42+
type: user
43+
score: 25
44+
threat_objects: []
3845
tags:
3946
analytic_story:
4047
- GitHub Malicious Activity
4148
asset_type: GitHub
42-
confidence: 90
43-
impact: 30
44-
message: $user$ disabled 2FA requirement
4549
mitre_attack_id:
4650
- T1562.001
47-
observable:
48-
- name: user
49-
type: User
50-
role:
51-
- Victim
5251
product:
5352
- Splunk Enterprise
5453
- Splunk Enterprise Security
5554
- Splunk Cloud
56-
required_fields:
57-
- actor
58-
- actor_id
59-
- actor_is_bot
60-
- actor_location.country_code
61-
- business
62-
- business_id
63-
- user_agent
64-
risk_score: 27
6555
security_domain: network
6656
tests:
6757
- name: True Positive Test

detections/cloud/github_enterprise_disable_audit_log_event_stream.yml

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -35,34 +35,23 @@ drilldown_searches:
3535
search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
3636
earliest_offset: $info_min_time$
3737
latest_offset: $info_max_time$
38+
rba:
39+
message: Audit log event streaming is disabled by $user$
40+
risk_objects:
41+
- field: user
42+
type: user
43+
score: 25
44+
threat_objects: []
3845
tags:
3946
analytic_story:
4047
- GitHub Malicious Activity
4148
asset_type: GitHub
42-
confidence: 90
43-
impact: 30
44-
message: Audit log event streaming is disabled by $user$
4549
mitre_attack_id:
4650
- T1562.008
47-
observable:
48-
- name: user
49-
type: User
50-
role:
51-
- Victim
5251
product:
5352
- Splunk Enterprise
5453
- Splunk Enterprise Security
5554
- Splunk Cloud
56-
required_fields:
57-
- actor
58-
- actor_id
59-
- actor_ip
60-
- actor_is_bot
61-
- actor_location.country_code
62-
- business
63-
- business_id
64-
- user_agent
65-
risk_score: 27
6655
security_domain: network
6756
tests:
6857
- name: True Positive Test

detections/cloud/github_enterprise_disable_classic_branch_protection_rule.yml

Lines changed: 7 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -35,38 +35,23 @@ drilldown_searches:
3535
search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
3636
earliest_offset: $info_min_time$
3737
latest_offset: $info_max_time$
38+
rba:
39+
message: $user$ disabled a classic branch protection rule in repo $repo$
40+
risk_objects:
41+
- field: user
42+
type: user
43+
score: 25
44+
threat_objects: []
3845
tags:
3946
analytic_story:
4047
- GitHub Malicious Activity
4148
asset_type: GitHub
42-
confidence: 90
43-
impact: 30
44-
message: $user$ disabled a classic branch protection rule in repo $repo$
4549
mitre_attack_id:
4650
- T1562.001
47-
observable:
48-
- name: user
49-
type: User
50-
role:
51-
- Victim
5251
product:
5352
- Splunk Enterprise
5453
- Splunk Enterprise Security
5554
- Splunk Cloud
56-
required_fields:
57-
- actor
58-
- actor_id
59-
- actor_is_bot
60-
- actor_location.country_code
61-
- business
62-
- business_id
63-
- org
64-
- org_id
65-
- repo
66-
- repo_id
67-
- user_agent
68-
- name
69-
risk_score: 27
7055
security_domain: network
7156
tests:
7257
- name: True Positive Test

detections/cloud/github_enterprise_disable_dependabot.yml

Lines changed: 7 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -33,40 +33,23 @@ drilldown_searches:
3333
search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
3434
earliest_offset: $info_min_time$
3535
latest_offset: $info_max_time$
36+
rba:
37+
message: Dependabot security features are disabled in repository $repo$ by $user$
38+
risk_objects:
39+
- field: user
40+
type: user
41+
score: 25
42+
threat_objects: []
3643
tags:
3744
analytic_story:
3845
- GitHub Malicious Activity
3946
asset_type: GitHub
40-
confidence: 90
41-
impact: 30
42-
message: Dependabot security features are disabled in repository $repo$ by $user$
4347
mitre_attack_id:
4448
- T1562.001
45-
observable:
46-
- name: user
47-
type: User
48-
role:
49-
- Victim
5049
product:
5150
- Splunk Enterprise
5251
- Splunk Enterprise Security
5352
- Splunk Cloud
54-
required_fields:
55-
- actor
56-
- actor_id
57-
- actor_ip
58-
- actor_is_bot
59-
- actor_location.country_code
60-
- business
61-
- business_id
62-
- org
63-
- org_id
64-
- repo
65-
- repo_id
66-
- user
67-
- user_agent
68-
- user_id
69-
risk_score: 27
7053
security_domain: network
7154
tests:
7255
- name: True Positive Test

detections/cloud/github_enterprise_disable_ip_allow_list.yml

Lines changed: 7 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -34,33 +34,23 @@ drilldown_searches:
3434
search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
3535
earliest_offset: $info_min_time$
3636
latest_offset: $info_max_time$
37+
rba:
38+
message: $user$ disabled an IP allow list in GitHub Enterprise
39+
risk_objects:
40+
- field: user
41+
type: user
42+
score: 25
43+
threat_objects: []
3744
tags:
3845
analytic_story:
3946
- GitHub Malicious Activity
4047
asset_type: GitHub
41-
confidence: 90
42-
impact: 30
43-
message: $user$ disabled an IP allow list in GitHub Enterprise
4448
mitre_attack_id:
4549
- T1562.001
46-
observable:
47-
- name: user
48-
type: User
49-
role:
50-
- Victim
5150
product:
5251
- Splunk Enterprise
5352
- Splunk Enterprise Security
5453
- Splunk Cloud
55-
required_fields:
56-
- actor
57-
- actor_id
58-
- actor_is_bot
59-
- actor_location.country_code
60-
- business
61-
- business_id
62-
- user_agent
63-
risk_score: 27
6454
security_domain: network
6555
tests:
6656
- name: True Positive Test

detections/cloud/github_enterprise_modify_audit_log_event_stream.yml

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -35,34 +35,23 @@ drilldown_searches:
3535
search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
3636
earliest_offset: $info_min_time$
3737
latest_offset: $info_max_time$
38+
rba:
39+
message: Audit log event streaming is modified by $user$
40+
risk_objects:
41+
- field: user
42+
type: user
43+
score: 25
44+
threat_objects: []
3845
tags:
3946
analytic_story:
4047
- GitHub Malicious Activity
4148
asset_type: GitHub
42-
confidence: 90
43-
impact: 30
44-
message: Audit log event streaming is modified by $user$
4549
mitre_attack_id:
4650
- T1562.008
47-
observable:
48-
- name: user
49-
type: User
50-
role:
51-
- Victim
5251
product:
5352
- Splunk Enterprise
5453
- Splunk Enterprise Security
5554
- Splunk Cloud
56-
required_fields:
57-
- actor
58-
- actor_id
59-
- actor_ip
60-
- actor_is_bot
61-
- actor_location.country_code
62-
- business
63-
- business_id
64-
- user_agent
65-
risk_score: 27
6655
security_domain: network
6756
tests:
6857
- name: True Positive Test

detections/cloud/github_enterprise_pause_audit_log_event_stream.yml

Lines changed: 7 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -35,35 +35,23 @@ drilldown_searches:
3535
search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
3636
earliest_offset: $info_min_time$
3737
latest_offset: $info_max_time$
38+
rba:
39+
message: Audit log event streaming is paused by $user$
40+
risk_objects:
41+
- field: user
42+
type: user
43+
score: 25
44+
threat_objects: []
3845
tags:
3946
analytic_story:
4047
- GitHub Malicious Activity
4148
asset_type: GitHub
42-
confidence: 90
43-
impact: 30
44-
message: Audit log event streaming is paused by $user$
4549
mitre_attack_id:
4650
- T1562.008
47-
observable:
48-
- name: user
49-
type: User
50-
role:
51-
- Victim
5251
product:
5352
- Splunk Enterprise
5453
- Splunk Enterprise Security
5554
- Splunk Cloud
56-
required_fields:
57-
- actor
58-
- actor_id
59-
- actor_ip
60-
- actor_is_bot
61-
- actor_location.country_code
62-
- business
63-
- business_id
64-
- user_agent
65-
- reason
66-
risk_score: 27
6755
security_domain: network
6856
tests:
6957
- name: True Positive Test

0 commit comments

Comments
 (0)