Splunk XSS in Highlighted JSON Events
Description
This detection provides information about possible exploitation against affected versions of Splunk Enterprise 9.1.2. The ability to view JSON logs in the web GUI may be abused by crafting a specific request, causing the execution of javascript in script tags. This vulnerability can be used to execute javascript to access the API at the permission level of the logged-in user. If user is admin it can be used to create an admin user, giving an attacker broad access to the Splunk Environment.
- Type: Hunting
-
Product: Splunk Enterprise, Splunk Enterprise Security, Splunk Cloud
- Last Updated: 2023-11-16
- Author: Rod Soto, Splunk
- ID: 1030bc63-0b37-4ac9-9ae0-9361c955a3cc
Annotations
Kill Chain Phase
- Delivery
NIST
- DE.AE
CIS20
- CIS 10
CVE
ID | Summary | CVSS |
---|---|---|
Search
1
2
3
4
5
`splunkd_ui` "/en-US/splunkd/__raw/servicesNS/nobody/search/authentication/users" status=201
| stats count min(_time) as firstTime max(_time) as lastTime by clientip, uri_path, method
| `security_content_ctime(firstTime)`
| `security_content_ctime(lastTime)`
| `splunk_xss_in_highlighted_json_events_filter`
Macros
The SPL above uses the following Macros:
splunk_xss_in_highlighted_json_events_filter is a empty macro by default. It allows the user to filter out any results (false positives) without editing the SPL.
Required fields
List of fields required to use this analytic.
- clientip
- uri_path
- method
- status
How To Implement
This search only applies to web-GUI-enabled Splunk instances and operator must have access to internal indexes.
Known False Positives
This is a hunting search and will produce false positives as it is not possible to view contents of a request payload. It shows the artifact resulting from a potential exploitation payload (the creation of a user with admin privileges).
Associated Analytic Story
RBA
Risk Score | Impact | Confidence | Message |
---|---|---|---|
15.0 | 30 | 50 | Possible XSS exploitation from $clientip$ |
The Risk Score is calculated by the following formula: Risk Score = (Impact * Confidence/100). Initial Confidence and Impact is set by the analytic author.
Reference
Test Dataset
Replay any dataset to Splunk Enterprise by using our replay.py
tool or the UI.
Alternatively you can replay a dataset into a Splunk Attack Range
source | version: 1