Rapid7 Vulnerability & Exploit Database

Microsoft SQL Server Payload Execution

Back to Search

Microsoft SQL Server Payload Execution

Disclosed
05/30/2000
Created
05/30/2018

Description

This module executes an arbitrary payload on a Microsoft SQL Server by using the "xp_cmdshell" stored procedure. Currently, three delivery methods are supported. First, the original method uses Windows 'debug.com'. File size restrictions are avoided by incorporating the debug bypass method presented by SecureStat at Defcon 17. Since this method invokes ntvdm, it is not available on x64 systems. A second method takes advantage of the Command Stager subsystem. This allows using various techniques, such as using a TFTP server, to send the executable. By default the Command Stager uses 'wcsript.exe' to generate the executable on the target. Finally, ReL1K's latest method utilizes PowerShell to transmit and recreate the payload on the target. NOTE: This module will leave a payload executable on the target system when the attack is finished.

Author(s)

  • David Kennedy "ReL1K" <kennedyd013@gmail.com>
  • jduck <jduck@metasploit.com>

Platform

Windows

Architectures

x86, x64

Development

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

;