Try in Splunk Security Cloud

Description

This detection search finds exposed authentication tokens in debug logs. This issue occurs in Splunk Enterprise versions below 9.2.1, 9.1.4, and 9.0.9, which may be affected by a vulnerability where JsonWebTokens can be exposed if the log level is set to DEBUG.

  • Type: TTP
  • Product: Splunk Enterprise, Splunk Cloud
  • Datamodel: Web
  • Last Updated: 2024-03-18
  • Author: Rod Soto, Chase Franklin
  • ID: 9a67e749-d291-40dd-8376-d422e7ecf8b5

Annotations

ATT&CK

ATT&CK

ID Technique Tactic
T1654 Log Enumeration Discovery
Kill Chain Phase
  • Exploitation
NIST
  • DE.CM
CIS20
  • CIS 10
CVE
ID Summary CVSS
CVE-2024-29945 In Splunk Enterprise versions below 9.2.1, 9.1.4, and 9.0.9, the software potentially exposes authentication tokens during the token validation process. This exposure happens when either Splunk Enterprise runs in debug mode or the JsonWebToken component has been configured to log its activity at the DEBUG logging level. None
1
2
3
4
5
6
7
`splunkd` component=JsonWebToken log_level=DEBUG eventtype="splunkd-log" event_message="Validating token:*" 
| rex "Validating token: (?<token>.*)\.$" 
| search token!=None 
| stats count min(_time) as firstTime max(_time) as lastTime values(log_level) as log_level values(event_message) as event_message by index, sourcetype, host, token 
| `security_content_ctime(firstTime)` 
| `security_content_ctime(lastTime)` 
| `splunk_authentication_token_exposure_in_debug_log_filter`

Macros

The SPL above uses the following Macros:

:information_source: splunk_authentication_token_exposure_in_debug_log_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.

  • component
  • log_level
  • eventtype
  • event_message
  • host

How To Implement

Requires access to internal Splunk indexes.

Known False Positives

Only applies to affected versions of Splunk Enterprise below 9.2.1, 9.1.4, and 9.0.9

Associated Analytic Story

RBA

Risk Score Impact Confidence Message
50.0 50 100 Possible JsonWebToken exposure, please investigate affected $host$

:information_source: 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