Splunk protocol impersonation weak encryption simplerequest
Description
The following analytic identifies instances where Splunk's Python3 client libraries fail to validate SSL certificates properly. It leverages logs from splunk_python
to detect when "simpleRequest SSL certificate validation is enabled without hostname verification." This activity is significant because improper SSL certificate validation can expose the system to man-in-the-middle attacks, allowing attackers to intercept or alter data. If confirmed malicious, this vulnerability could lead to unauthorized access, data breaches, and potential system compromise. Upgrading to Splunk version 9 and configuring TLS hostname validation is recommended to mitigate this risk.
- Type: Hunting
-
Product: Splunk Enterprise, Splunk Enterprise Security, Splunk Cloud
- Last Updated: 2024-05-23
- Author: Rod Soto, Splunk
- ID: 839d12a6-b119-4d44-ac4f-13eed95412c8
Annotations
Kill Chain Phase
- Weaponization
NIST
- DE.AE
CIS20
- CIS 10
CVE
Search
1
2
3
`splunk_python` "simpleRequest SSL certificate validation is enabled without hostname verification"
| stats count by host path
| `splunk_protocol_impersonation_weak_encryption_simplerequest_filter`
Macros
The SPL above uses the following Macros:
splunk_protocol_impersonation_weak_encryption_simplerequest_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.
- host
- event_message
- path
How To Implement
Must upgrade to Splunk version 9 and Configure TLS host name validation for Splunk Python modules in order to apply this search. Splunk SOAR customers can find a SOAR workbook that walks an analyst through the process of running these hunting searches in the references list of this detection. In order to use this workbook, a user will need to run a curl command to post the file to their SOAR instance such as "curl -u username:password https://soar.instance.name/rest/rest/workbook_template -d @splunk_psa_0622.json". A user should then create an empty container or case, attach the workbook, and begin working through the tasks.
Known False Positives
This search tries to address validation of server and client certificates within Splunk infrastructure, it might produce results from accidental or unintended requests to port 8089.
Associated Analytic Story
RBA
Risk Score | Impact | Confidence | Message |
---|---|---|---|
40.0 | 50 | 80 | Failed to validate certificate on $host$ |
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
- https://www.splunk.com/en_us/product-security
- https://docs.splunk.com/Documentation/Splunk/9.0.0/Security/EnableTLSCertHostnameValidation
- https://www.github.com/splunk/security_content/blob/develop/workbooks/splunk_psa_0622.json
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: 2