Rapid7 Vulnerability & Exploit Database

Splunk Custom App Remote Code Execution

Back to Search

Splunk Custom App Remote Code Execution



This module exploits a feature of Splunk whereby a custom application can be uploaded through the web based interface. Through the 'script' search command a user can call commands defined in their custom application which includes arbitrary perl or python code. To abuse this behavior, a valid Splunk user with the admin role is required. By default, this module uses the credential of "admin:changeme", the default Administrator credential for Splunk. Note that the Splunk web interface runs as SYSTEM on Windows, or as root on Linux by default. This module has been tested successfully against Splunk 5.0, 6.1, 6.1.1 and 7.2.4. Version 7.2.4 has been tested successfully against OSX as well


  • marcwickenden
  • sinn3r <sinn3r@metasploit.com>
  • juan vazquez <juan.vazquez@metasploit.com>
  • Gary Blosser
  • Matteo Malvica




Module Options

To display the available options, load the module within the Metasploit console and run the commands 'show options' or 'show advanced':

msf > use exploit/multi/http/splunk_upload_app_exec
msf exploit(splunk_upload_app_exec) > show targets
msf exploit(splunk_upload_app_exec) > set TARGET < target-id >
msf exploit(splunk_upload_app_exec) > show options
    ...show and set options...
msf exploit(splunk_upload_app_exec) > exploit

Time is precious, so I don’t want to do something manually that I can automate. Leveraging the Metasploit Framework when automating any task keeps us from having to re-create the wheel as we can use the existing libraries and focus our efforts where it matters.

– Jim O’Gorman | President, Offensive Security