Skip to content

Commit bb5231b

Browse files
authored
Merge pull request #2945 from splunk/gitlab_release_v4.20.0
Gitlab release v4.20.0
2 parents 99fd815 + 6c68bd7 commit bb5231b

21 files changed

+407
-25
lines changed

contentctl.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ build:
55
name: DA-ESS-ContentUpdate
66
path_root: dist
77
prefix: ESCU
8-
build: 004190
9-
version: 4.19.0
8+
build: 004200
9+
version: 4.20.0
1010
label: ES Content Updates
1111
author_name: Splunk Threat Research Team
1212
author_email: [email protected]
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
name: Access to Vulnerable Ivanti Connect Secure Bookmark Endpoint
2+
id: 15838756-f425-43fa-9d88-a7f88063e81a
3+
version: 1
4+
date: '2024-01-16'
5+
author: Michael Haag, Splunk
6+
status: production
7+
type: TTP
8+
data_source: []
9+
description: This analytic monitors access to the /api/v1/configuration/users/user-roles/user-role/rest-userrole1/web/web-bookmarks/bookmark endpoint, a key indicator for both CVE-2023-46805 and CVE-2024-21887 vulnerabilities. It detects potential vulnerabilities by looking for a 403 Forbidden response with an empty body on this endpoint. This detection method is used in both Nmap script and Project Discovery Nuclei, with the latter focusing on systems where XML mitigation for these vulnerabilities has not been applied.
10+
search: '| tstats count min(_time) as firstTime max(_time) as lastTime from datamodel=Web where Web.url="*/api/v1/configuration/users/user-roles/user-role/rest-userrole1/web/web-bookmarks/bookmark*" Web.http_method=GET Web.status=403 by Web.src, Web.dest, Web.http_user_agent, Web.status, Web.url source
11+
| `drop_dm_object_name("Web")`
12+
| `security_content_ctime(firstTime)`
13+
| `security_content_ctime(lastTime)` | `access_to_vulnerable_ivanti_connect_secure_bookmark_endpoint_filter`'
14+
how_to_implement: This detection requires the Web datamodel to be populated from a supported Technology Add-On like Suricata, Splunk for Apache, Splunk for Nginx, or Splunk for Palo Alto.
15+
known_false_positives: This analytic is limited to HTTP Status 403; adjust as necessary. False positives may occur if the URI path is IP-restricted or externally blocked. It's recommended to review the context of the alerts and adjust the analytic parameters to better fit the specific environment.
16+
references:
17+
- https://github.com/RootUp/PersonalStuff/blob/master/http-vuln-cve2023-46805_2024_21887.nse
18+
- https://github.com/projectdiscovery/nuclei-templates/blob/c6b351e71b0fb0e40e222e97038f1fe09ac58194/http/misconfiguration/ivanti/CVE-2023-46085-CVE-2024-21887-mitigation-not-applied.yaml
19+
- https://github.com/rapid7/metasploit-framework/pull/18708/files
20+
tags:
21+
cve:
22+
- CVE-2023-46805
23+
- CVE-2024-21887
24+
analytic_story:
25+
- Ivanti Connect Secure VPN Vulnerabilities
26+
asset_type: VPN Appliance
27+
atomic_guid: []
28+
confidence: 80
29+
impact: 90
30+
message: Possible exploitation of CVE-2023-46805 and CVE-2024-21887 against $dest$.
31+
mitre_attack_id:
32+
- T1190
33+
observable:
34+
- name: dest
35+
type: Hostname
36+
role:
37+
- Victim
38+
product:
39+
- Splunk Enterprise
40+
- Splunk Enterprise Security
41+
- Splunk Cloud
42+
risk_score: 72
43+
required_fields:
44+
- Web.src
45+
- Web.dest
46+
- Web.http_user_agent
47+
- Web.status
48+
- Web.url
49+
security_domain: network
50+
tests:
51+
- name: True Positive Test
52+
attack_data:
53+
- data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1190/ivanti/ivanti_bookmark_web_access.log
54+
source: suricata
55+
sourcetype: suricata
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: Ivanti Connect Secure Command Injection Attempts
2+
id: 1f32a7e0-a060-4545-b7de-73fcf9ad536e
3+
version: 1
4+
date: '2024-01-16'
5+
author: Michael Haag, Splunk
6+
status: production
7+
type: TTP
8+
data_source: []
9+
description: This analytic is designed to identify the exploit phase of the CVE-2023-46805 and CVE-2024-21887 vulnerabilities. During this phase, a POST request is made to the /api/v1/totp/user-backup-code/../../system/maintenance/archiving/cloud-server-test-connection URI. This request exploits the command injection vulnerability to execute arbitrary commands. A successful request, indicated by a 200 OK response, suggests that the system is vulnerable.
10+
search: '| tstats count min(_time) as firstTime max(__time) as lastTime from datamodel=Web where Web.url="*/api/v1/totp/user-backup-code/../../system/maintenance/archiving/cloud-server-test-connection*" Web.http_method=POST Web.status=200 by Web.src, Web.dest, Web.http_user_agent, Web.url
11+
| `drop_dm_object_name("Web")`
12+
| `security_content_ctime(firstTime)`
13+
| `security_content_ctime(lastTime)`
14+
| `ivanti_connect_secure_command_injection_attempts_filter`'
15+
how_to_implement: This detection requires the Web datamodel to be populated from a supported Technology Add-On like Suricata, Splunk for Apache, Splunk for Nginx, or Splunk for Palo Alto.
16+
known_false_positives: This analytic is limited to HTTP Status 200; adjust as necessary. False positives may occur if the URI path is IP-restricted or externally blocked. It's recommended to review the context of the alerts and adjust the analytic parameters to better fit the specific environment.
17+
references:
18+
- https://github.com/RootUp/PersonalStuff/blob/master/http-vuln-cve2023-46805_2024_21887.nse
19+
- https://github.com/projectdiscovery/nuclei-templates/blob/c6b351e71b0fb0e40e222e97038f1fe09ac58194/http/misconfiguration/ivanti/CVE-2023-46085-CVE-2024-21887-mitigation-not-applied.yaml
20+
- https://github.com/rapid7/metasploit-framework/pull/18708/files
21+
- https://attackerkb.com/topics/AdUh6by52K/cve-2023-46805/rapid7-analysis
22+
- https://labs.watchtowr.com/welcome-to-2024-the-sslvpn-chaos-continues-ivanti-cve-2023-46805-cve-2024-21887/
23+
tags:
24+
cve:
25+
- CVE-2023-46805
26+
- CVE-2024-21887
27+
analytic_story:
28+
- Ivanti Connect Secure VPN Vulnerabilities
29+
asset_type: VPN Appliance
30+
atomic_guid: []
31+
confidence: 90
32+
impact: 100
33+
message: Possible exploitation of CVE-2023-46805 and CVE-2024-21887 against $dest$.
34+
mitre_attack_id:
35+
- T1190
36+
observable:
37+
- name: dest
38+
type: Hostname
39+
role:
40+
- Victim
41+
product:
42+
- Splunk Enterprise
43+
- Splunk Enterprise Security
44+
- Splunk Cloud
45+
risk_score: 90
46+
required_fields:
47+
- Web.src
48+
- Web.dest
49+
- Web.http_user_agent
50+
- Web.url
51+
security_domain: network
52+
tests:
53+
- name: True Positive Test
54+
attack_data:
55+
- data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1190/ivanti/suricata_ivanti_secure_connect_exploitphase.log
56+
source: suricata
57+
sourcetype: suricata
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
name: Ivanti Connect Secure System Information Access via Auth Bypass
2+
id: d51c13dd-a232-4c83-a2bb-72ab36233c5d
3+
version: 1
4+
date: '2024-01-16'
5+
author: Michael Haag, Splunk
6+
status: production
7+
type: Anomaly
8+
data_source: []
9+
description: This analytic is designed to identify the "check phase" of the CVE-2023-46805 and CVE-2024-21887 vulnerabilities. During this phase, a GET request is made to the /api/v1/totp/user-backup-code/../../system/system-information URI. This request exploits the authentication bypass vulnerability to gain access to system information. A successful request, indicated by a 200 OK response, suggests that the system is vulnerable.
10+
search: '| tstats count min(_time) as firstTime max(_time) as lastTime from datamodel=Web where Web.url="*/api/v1/totp/user-backup-code/../../system/system-information*" Web.http_method=GET Web.status=200 by Web.src, Web.dest, Web.http_user_agent, Web.url
11+
| `drop_dm_object_name("Web")`
12+
| `security_content_ctime(firstTime)`
13+
| `security_content_ctime(lastTime)`
14+
| `ivanti_connect_secure_system_information_access_via_auth_bypass_filter`'
15+
how_to_implement: This detection requires the Web datamodel to be populated from a supported Technology Add-On like Suricata, Splunk for Apache, Splunk for Nginx, or Splunk for Palo Alto.
16+
known_false_positives: This analytic is limited to HTTP Status 200; adjust as necessary. False positives may occur if the URI path is IP-restricted or externally blocked. It's recommended to review the context of the alerts and adjust the analytic parameters to better fit the specific environment.
17+
references:
18+
- https://github.com/RootUp/PersonalStuff/blob/master/http-vuln-cve2023-46805_2024_21887.nse
19+
- https://github.com/projectdiscovery/nuclei-templates/blob/c6b351e71b0fb0e40e222e97038f1fe09ac58194/http/misconfiguration/ivanti/CVE-2023-46085-CVE-2024-21887-mitigation-not-applied.yaml
20+
- https://github.com/rapid7/metasploit-framework/pull/18708/files
21+
tags:
22+
cve:
23+
- CVE-2023-46805
24+
- CVE-2024-21887
25+
analytic_story:
26+
- Ivanti Connect Secure VPN Vulnerabilities
27+
asset_type: VPN Appliance
28+
atomic_guid: []
29+
confidence: 80
30+
impact: 90
31+
message: Possible exploitation of CVE-2023-46805 and CVE-2024-21887 against $dest$.
32+
mitre_attack_id:
33+
- T1190
34+
observable:
35+
- name: dest
36+
type: Hostname
37+
role:
38+
- Victim
39+
product:
40+
- Splunk Enterprise
41+
- Splunk Enterprise Security
42+
- Splunk Cloud
43+
risk_score: 72
44+
required_fields:
45+
- Web.src
46+
- Web.dest
47+
- Web.http_user_agent
48+
- Web.url
49+
security_domain: network
50+
tests:
51+
- name: True Positive Test
52+
attack_data:
53+
- data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1190/ivanti/suricata_ivanti_secure_connect_checkphase.log
54+
source: suricata
55+
sourcetype: suricata

dist/DA-ESS-ContentUpdate/app.manifest

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"id": {
66
"group": null,
77
"name": "DA-ESS-ContentUpdate",
8-
"version": "4.19.0"
8+
"version": "4.20.0"
99
},
1010
"author": [
1111
{

dist/DA-ESS-ContentUpdate/default/analyticstories.conf

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#############
22
# Automatically generated by generator.py in splunk/security_content
3-
# On Date: 2024-01-10T18:42:59 UTC
3+
# On Date: 2024-01-17T18:35:46 UTC
44
# Author: Splunk Threat Research Team - Splunk
55
66
#############
@@ -14802,6 +14802,16 @@ annotations = {"cis20": ["CIS 13"], "kill_chain_phases": ["Command And Control"]
1480214802
known_false_positives = False positives may be present if the organization works with international businesses. Filter as needed.
1480314803
providing_technologies = null
1480414804

14805+
[savedsearch://ESCU - Access to Vulnerable Ivanti Connect Secure Bookmark Endpoint - Rule]
14806+
type = detection
14807+
asset_type = VPN Appliance
14808+
confidence = medium
14809+
explanation = This analytic monitors access to the /api/v1/configuration/users/user-roles/user-role/rest-userrole1/web/web-bookmarks/bookmark endpoint, a key indicator for both CVE-2023-46805 and CVE-2024-21887 vulnerabilities. It detects potential vulnerabilities by looking for a 403 Forbidden response with an empty body on this endpoint. This detection method is used in both Nmap script and Project Discovery Nuclei, with the latter focusing on systems where XML mitigation for these vulnerabilities has not been applied.
14810+
how_to_implement = This detection requires the Web datamodel to be populated from a supported Technology Add-On like Suricata, Splunk for Apache, Splunk for Nginx, or Splunk for Palo Alto.
14811+
annotations = {"cis20": ["CIS 13"], "kill_chain_phases": ["Delivery"], "mitre_attack": ["T1190"], "nist": ["DE.CM"]}
14812+
known_false_positives = This analytic is limited to HTTP Status 403; adjust as necessary. False positives may occur if the URI path is IP-restricted or externally blocked. It's recommended to review the context of the alerts and adjust the analytic parameters to better fit the specific environment.
14813+
providing_technologies = null
14814+
1480514815
[savedsearch://ESCU - Adobe ColdFusion Access Control Bypass - Rule]
1480614816
type = detection
1480714817
asset_type = Network
@@ -14997,6 +15007,26 @@ annotations = {"cis20": ["CIS 13"], "kill_chain_phases": ["Delivery", "Installat
1499715007
known_false_positives = It is highly possible you will find false positives, however, the base score is set to 2 for _any_ jndi found in raw logs. tune and change as needed, include any filtering.
1499815008
providing_technologies = null
1499915009

15010+
[savedsearch://ESCU - Ivanti Connect Secure Command Injection Attempts - Rule]
15011+
type = detection
15012+
asset_type = VPN Appliance
15013+
confidence = medium
15014+
explanation = This analytic is designed to identify the exploit phase of the CVE-2023-46805 and CVE-2024-21887 vulnerabilities. During this phase, a POST request is made to the /api/v1/totp/user-backup-code/../../system/maintenance/archiving/cloud-server-test-connection URI. This request exploits the command injection vulnerability to execute arbitrary commands. A successful request, indicated by a 200 OK response, suggests that the system is vulnerable.
15015+
how_to_implement = This detection requires the Web datamodel to be populated from a supported Technology Add-On like Suricata, Splunk for Apache, Splunk for Nginx, or Splunk for Palo Alto.
15016+
annotations = {"cis20": ["CIS 13"], "kill_chain_phases": ["Delivery"], "mitre_attack": ["T1190"], "nist": ["DE.CM"]}
15017+
known_false_positives = This analytic is limited to HTTP Status 200; adjust as necessary. False positives may occur if the URI path is IP-restricted or externally blocked. It's recommended to review the context of the alerts and adjust the analytic parameters to better fit the specific environment.
15018+
providing_technologies = null
15019+
15020+
[savedsearch://ESCU - Ivanti Connect Secure System Information Access via Auth Bypass - Rule]
15021+
type = detection
15022+
asset_type = VPN Appliance
15023+
confidence = medium
15024+
explanation = This analytic is designed to identify the "check phase" of the CVE-2023-46805 and CVE-2024-21887 vulnerabilities. During this phase, a GET request is made to the /api/v1/totp/user-backup-code/../../system/system-information URI. This request exploits the authentication bypass vulnerability to gain access to system information. A successful request, indicated by a 200 OK response, suggests that the system is vulnerable.
15025+
how_to_implement = This detection requires the Web datamodel to be populated from a supported Technology Add-On like Suricata, Splunk for Apache, Splunk for Nginx, or Splunk for Palo Alto.
15026+
annotations = {"cis20": ["CIS 13"], "kill_chain_phases": ["Delivery"], "mitre_attack": ["T1190"], "nist": ["DE.AE"]}
15027+
known_false_positives = This analytic is limited to HTTP Status 200; adjust as necessary. False positives may occur if the URI path is IP-restricted or externally blocked. It's recommended to review the context of the alerts and adjust the analytic parameters to better fit the specific environment.
15028+
providing_technologies = null
15029+
1500015030
[savedsearch://ESCU - Ivanti EPMM Remote Unauthenticated API Access CVE-2023-35078 - Rule]
1500115031
type = detection
1500215032
asset_type = Web Server
@@ -16530,6 +16560,17 @@ searches = ["ESCU - Gsuite Drive Share In External Email - Rule", "ESCU - Gsuite
1653016560
description = Monitor for activities and techniques associated with insider threats and specifically focusing on malicious insiders operating with in a corporate environment.
1653116561
narrative = Insider Threats are best defined by CISA: "Insider threat incidents are possible in any sector or organization. An insider threat is typically a current or former employee, third-party contractor, or business partner. In their present or former role, the person has or had access to an organization's network systems, data, or premises, and uses their access (sometimes unwittingly). To combat the insider threat, organizations can implement a proactive, prevention-focused mitigation program to detect and identify threats, assess risk, and manage that risk - before an incident occurs." An insider is any person who has or had authorized access to or knowledge of an organization's resources, including personnel, facilities, information, equipment, networks, and systems. These are the common insiders that create insider threats: Departing Employees, Security Evaders, Malicious Insiders, and Negligent Employees. This story aims at detecting the malicious insider.
1653216562

16563+
[analytic_story://Ivanti Connect Secure VPN Vulnerabilities]
16564+
category = Adversary Tactics
16565+
last_updated = 2024-01-16
16566+
version = 1
16567+
references = ["https://github.com/RootUp/PersonalStuff/blob/master/http-vuln-cve2023-46805_2024_21887.nse", "https://github.com/projectdiscovery/nuclei-templates/blob/c6b351e71b0fb0e40e222e97038f1fe09ac58194/http/misconfiguration/ivanti/CVE-2023-46085-CVE-2024-21887-mitigation-not-applied.yaml", "https://github.com/rapid7/metasploit-framework/pull/18708/files", "https://attackerkb.com/topics/AdUh6by52K/cve-2023-46805/rapid7-analysis", "https://labs.watchtowr.com/welcome-to-2024-the-sslvpn-chaos-continues-ivanti-cve-2023-46805-cve-2024-21887/", "https://www.volexity.com/blog/2024/01/10/active-exploitation-of-two-zero-day-vulnerabilities-in-ivanti-connect-secure-vpn/", "https://www.mandiant.com/resources/blog/suspected-apt-targets-ivanti-zero-day", "https://forums.ivanti.com/s/article/CVE-2023-46805-Authentication-Bypass-CVE-2024-21887-Command-Injection-for-Ivanti-Connect-Secure-and-Ivanti-Policy-Secure-Gateways?language=en_US"]
16568+
maintainers = [{"company": "Splunk", "email": "-", "name": "Michael Haag"}]
16569+
spec_version = 3
16570+
searches = ["ESCU - Access to Vulnerable Ivanti Connect Secure Bookmark Endpoint - Rule", "ESCU - Ivanti Connect Secure Command Injection Attempts - Rule", "ESCU - Ivanti Connect Secure System Information Access via Auth Bypass - Rule"]
16571+
description = The following analytic story addresses critical vulnerabilities CVE-2023-46805 and CVE-2024-21887 in Ivanti Connect Secure and Ivanti Policy Secure Gateways. CVE-2023-46805 is an authentication bypass vulnerability, while CVE-2024-21887 is a command injection flaw, both presenting significant risks in versions 9.x and 22.x. Combined, these vulnerabilities enable unauthenticated threat actors to execute arbitrary commands, compromising system integrity. Immediate mitigation is imperative, with patches scheduled for staggered release. Ivanti has provided interim mitigation steps, and it's crucial for customers to apply these measures to protect their systems against potential exploits.
16572+
narrative = Ivanti Connect Secure and Ivanti Policy Secure gateways face a severe security challenge with the discovery of CVE-2023-46805 and CVE-2024-21887. CVE-2023-46805 allows attackers to bypass authentication in critical web components of versions 9.x and 22.x. More alarmingly, when paired with CVE-2024-21887, a command injection vulnerability, it enables remote attackers to execute arbitrary commands without authentication. This combination poses a heightened threat, undermining the security of enterprise networks. Ivanti has mobilized resources to address these vulnerabilities, offering immediate mitigation advice and scheduling patch releases. Customers are urged to apply these mitigations without delay to safeguard their networks.
16573+
1653316574
[analytic_story://Ivanti EPMM Remote Unauthenticated Access]
1653416575
category = Vulnerability
1653516576
last_updated = 2023-08-08

dist/DA-ESS-ContentUpdate/default/app.conf

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#############
22
# Automatically generated by generator.py in splunk/security_content
3-
# On Date: 2024-01-10T18:42:59 UTC
3+
# On Date: 2024-01-17T18:35:46 UTC
44
# Author: Splunk Threat Research Team - Splunk
55
66
#############
@@ -10,7 +10,7 @@
1010
is_configured = false
1111
state = enabled
1212
state_change_requires_restart = false
13-
build = 20240110184052
13+
build = 20240117183348
1414

1515
[triggers]
1616
reload.analytic_stories = simple
@@ -26,7 +26,7 @@ reload.es_investigations = simple
2626

2727
[launcher]
2828
author = Splunk
29-
version = 4.19.0
29+
version = 4.20.0
3030
description = Explore the Analytic Stories included with ES Content Updates.
3131

3232
[ui]

dist/DA-ESS-ContentUpdate/default/collections.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#############
22
# Automatically generated by generator.py in splunk/security_content
3-
# On Date: 2024-01-10T18:42:59 UTC
3+
# On Date: 2024-01-17T18:35:46 UTC
44
# Author: Splunk Threat Research Team - Splunk
55
66
#############
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
#############
22
# Automatically generated by generator.py in splunk/security_content
3-
# On Date: 2024-01-10T18:42:59 UTC
3+
# On Date: 2024-01-17T18:35:46 UTC
44
# Author: Splunk Threat Research Team - Splunk
55
66
#############
77
[content-version]
8-
version = 4.19.0
8+
version = 4.20.0

dist/DA-ESS-ContentUpdate/default/es_investigations.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#############
22
# Automatically generated by generator.py in splunk/security_content
3-
# On Date: 2024-01-10T18:42:59 UTC
3+
# On Date: 2024-01-17T18:35:46 UTC
44
# Author: Splunk Threat Research Team - Splunk
55
66
#############

0 commit comments

Comments
 (0)