CVE-2025-20229

8.0 HIGH

📋 TL;DR

This vulnerability allows low-privileged Splunk users without admin or power roles to execute arbitrary code on the server by uploading files to a specific directory. It affects Splunk Enterprise versions below 9.3.3, 9.2.5, and 9.1.8, and Splunk Cloud Platform versions below specific builds. The issue stems from missing authorization checks for file uploads to the apptemp directory.

💻 Affected Systems

Products:
  • Splunk Enterprise
  • Splunk Cloud Platform
Versions: Splunk Enterprise: below 9.3.3, 9.2.5, 9.1.8. Splunk Cloud Platform: below 9.3.2408.104, 9.2.2406.108, 9.2.2403.114, 9.1.2312.208.
Operating Systems: All supported platforms
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects instances with low-privileged user accounts. Systems with only admin/power users are not vulnerable.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

An attacker with any authenticated user account could gain full control of the Splunk server, potentially leading to data exfiltration, lateral movement, or complete system compromise.

🟠

Likely Case

Malicious insiders or compromised low-privileged accounts could execute arbitrary code, install backdoors, or access sensitive data within Splunk.

🟢

If Mitigated

With proper access controls and monitoring, exploitation attempts would be detected and blocked before successful execution.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: HIGH

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires authenticated access with any non-admin, non-power user role. Exploitation involves file upload to specific directory.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Splunk Enterprise: 9.3.3, 9.2.5, 9.1.8. Splunk Cloud Platform: 9.3.2408.104, 9.2.2406.108, 9.2.2403.114, 9.1.2312.208 or later.

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

Restart Required: No

Instructions:

1. Backup your Splunk configuration. 2. Download the appropriate patch from Splunk's downloads page. 3. Follow Splunk's upgrade documentation for your version. 4. Verify the upgrade completed successfully.

🔧 Temporary Workarounds

Restrict access to apptemp directory

all

Set strict file permissions on $SPLUNK_HOME/var/run/splunk/apptemp to prevent unauthorized writes.

chmod 750 $SPLUNK_HOME/var/run/splunk/apptemp
chown splunk:splunk $SPLUNK_HOME/var/run/splunk/apptemp

Review and restrict user roles

all

Audit all user accounts and ensure only trusted users have any access. Consider removing or disabling low-privileged accounts.

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate Splunk servers from critical systems.
  • Enable detailed audit logging for all file operations in $SPLUNK_HOME/var/run/splunk/apptemp and monitor for suspicious activity.

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

$SPLUNK_HOME/bin/splunk version

Verify Fix Applied:

Verify version is at or above patched versions. Test that low-privileged users cannot write to $SPLUNK_HOME/var/run/splunk/apptemp.

📡 Detection & Monitoring

Log Indicators:

  • Unauthorized file writes to $SPLUNK_HOME/var/run/splunk/apptemp directory
  • Suspicious process execution from apptemp location
  • Failed authorization attempts for file upload operations

Network Indicators:

  • Unusual outbound connections from Splunk server following file uploads
  • Unexpected network traffic to/from Splunk server on non-standard ports

SIEM Query:

index=* sourcetype=splunkd (file_path="*apptemp*" AND action=write) NOT user="admin" NOT user="power"

🔗 References

📤 Share & Export