Rapid7 Vulnerability & Exploit Database

Drupal HTTP Parameter Key/Value SQL Injection

Back to Search

Drupal HTTP Parameter Key/Value SQL Injection



This module exploits the Drupal HTTP Parameter Key/Value SQL Injection (aka Drupageddon) in order to achieve a remote shell on the vulnerable instance. This module was tested against Drupal 7.0 and 7.31 (was fixed in 7.32). Two methods are available to trigger the PHP payload on the target: - set TARGET 0: Form-cache PHP injection method (default). This uses the SQLi to upload a malicious form to Drupal's cache, then trigger the cache entry to execute the payload using a POP chain. - set TARGET 1: User-post injection method. This creates a new Drupal user, adds it to the administrators group, enable Drupal's PHP module, grant the administrators the right to bundle PHP code in their post, create a new post containing the payload and preview it to trigger the payload execution.


  • SektionEins
  • WhiteWinterWolf
  • Christian Mehlmauer <FireFart@gmail.com>
  • Brandon Perry






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/drupal_drupageddon
msf exploit(drupal_drupageddon) > show targets
msf exploit(drupal_drupageddon) > set TARGET < target-id >
msf exploit(drupal_drupageddon) > show options
    ...show and set options...
msf exploit(drupal_drupageddon) > 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