CVE-2025-20371

7.5 HIGH

📋 TL;DR

This vulnerability allows unauthenticated attackers to perform blind server-side request forgery (SSRF) against vulnerable Splunk deployments, potentially enabling them to make REST API calls with the privileges of authenticated high-privileged users. It affects Splunk Enterprise versions below 10.0.1, 9.4.4, 9.3.6 and 9.2.8, and Splunk Cloud Platform versions below specific patch levels.

💻 Affected Systems

Products:
  • Splunk Enterprise
  • Splunk Cloud Platform
Versions: Splunk Enterprise: below 10.0.1, 9.4.4, 9.3.6, 9.2.8; Splunk Cloud Platform: below 9.3.2411.109, 9.3.2408.119, 9.2.2406.122
Operating Systems: All supported platforms
Default Config Vulnerable: ⚠️ Yes
Notes: All default configurations of affected versions are vulnerable. No special configuration required for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could perform administrative REST API operations, potentially leading to data exfiltration, configuration changes, or further system compromise.

🟠

Likely Case

Attackers could probe internal networks, access internal services, or perform limited API operations depending on network configuration.

🟢

If Mitigated

With proper network segmentation and authentication controls, impact would be limited to information disclosure about internal network services.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires no authentication and appears to be straightforward based on advisory description.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Splunk Enterprise: 10.0.1, 9.4.4, 9.3.6, 9.2.8; Splunk Cloud Platform: 9.3.2411.109, 9.3.2408.119, 9.2.2406.122

Vendor Advisory: https://advisory.splunk.com/advisories/SVD-2025-1006

Restart Required: Yes

Instructions:

1. Download appropriate patch version from Splunk downloads portal. 2. Backup current installation. 3. Stop Splunk services. 4. Apply patch according to Splunk upgrade documentation. 5. Restart Splunk services. 6. Verify successful upgrade.

🔧 Temporary Workarounds

Network Access Control

all

Restrict network access to Splunk management interfaces to trusted IP addresses only.

# Configure firewall rules to restrict access to Splunk ports (default: 8000, 8089)
# Example iptables: iptables -A INPUT -p tcp --dport 8000 -s trusted_network -j ACCEPT
# Example iptables: iptables -A INPUT -p tcp --dport 8089 -s trusted_network -j ACCEPT

Authentication Enforcement

all

Ensure all REST API endpoints require authentication, though this may not fully mitigate SSRF.

# Review and configure authentication settings in web.conf and server.conf
# Ensure [settings] authentication = Splunk in web.conf

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate Splunk instances from sensitive internal services
  • Deploy web application firewall (WAF) rules to detect and block SSRF patterns

🔍 How to Verify

Check if Vulnerable:

Check Splunk version via web interface (Settings > Server Info) or command line. Compare against affected versions list.

Check Version:

On Splunk server: $SPLUNK_HOME/bin/splunk version

Verify Fix Applied:

Verify version is at or above patched versions after upgrade. Test REST API endpoints for SSRF behavior.

📡 Detection & Monitoring

Log Indicators:

  • Unusual REST API calls from unauthenticated sources
  • Unexpected outbound connections from Splunk server
  • Failed authentication attempts followed by API calls

Network Indicators:

  • HTTP requests to internal services originating from Splunk server
  • Unusual traffic patterns on Splunk management ports (8000, 8089)

SIEM Query:

index=_internal source=*web_access.log (status=200 OR status=302) AND (uri_path=*/services/* OR uri_path=*/api/*) AND clientip NOT IN [list_of_trusted_ips]

🔗 References

📤 Share & Export