Microsoft SQL Server Generic Query - Metasploit
This page contains detailed information about how to use the auxiliary/admin/mssql/mssql_sql metasploit module. For list of all metasploit modules, visit the Metasploit Module Library.
Module Overview
Name: Microsoft SQL Server Generic Query
Module: auxiliary/admin/mssql/mssql_sql
Source code: modules/auxiliary/admin/mssql/mssql_sql.rb
Disclosure date: -
Last modification time: 2017-08-24 21:38:44 +0000
Supported architecture(s): -
Supported platform(s): -
Target service / protocol: ms-sql2000, ms-sql-s, sybase
Target network port(s): 1433, 1434, 1435, 2533, 2638, 9152, 14330
List of CVEs: -
This module will allow for simple SQL statements to be executed against a MSSQL/MSDE instance given the appropriate credentials.
Module Ranking and Traits
Module Ranking:
- normal: The exploit is otherwise reliable, but depends on a specific version and can't (or doesn't) reliably autodetect. More information about ranking can be found here.
Basic Usage
msf > use auxiliary/admin/mssql/mssql_sql
msf auxiliary(mssql_sql) > show targets
... a list of targets ...
msf auxiliary(mssql_sql) > set TARGET target-id
msf auxiliary(mssql_sql) > show options
... show and set options ...
msf auxiliary(mssql_sql) > exploit
Required Options
- RHOSTS: The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
Knowledge Base
Description
This module allows you to perform SQL queries against a database using known-good credentials.
Verification Steps
- Do:
use auxiliary/admin/mssql/mssql_sql
- Do:
set PASSWORD [password1]
- Do:
set RHOSTS [IP]
- Do:
set [SQL Command]
- Do:
run
Scenarios
msf > use auxiliary/admin/mssql/mssql_sql
msf auxiliary(mssql_sql) > set PASSWORD password1
PASSWORD => password1
msf auxiliary(mssql_sql) > set RHOST 192.168.1.195
RHOST => 192.168.1.195
msf auxiliary(mssql_sql) > set SQL use logins;select * from userpass
SQL => use logins;select * from userpass
msf auxiliary(mssql_sql) > run
[*] SQL Query: use logins;select * from userpass
[*] Row Count: 3 (Status: 16 Command: 193)
userid username password
------ -------- --------
1 bjohnson password
2 aadams s3cr3t
3 jsmith htimsj
[*] Auxiliary module execution completed
msf auxiliary(mssql_sql) >
Go back to menu.
Msfconsole Usage
Here is how the admin/mssql/mssql_sql auxiliary module looks in the msfconsole:
msf6 > use auxiliary/admin/mssql/mssql_sql
msf6 auxiliary(admin/mssql/mssql_sql) > show info
Name: Microsoft SQL Server Generic Query
Module: auxiliary/admin/mssql/mssql_sql
License: Metasploit Framework License (BSD)
Rank: Normal
Provided by:
tebo <[email protected]>
Check supported:
No
Basic options:
Name Current Setting Required Description
---- --------------- -------- -----------
PASSWORD no The password for the specified username
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 1433 yes The target port (TCP)
SQL select @@version no The SQL query to execute
TDSENCRYPTION false yes Use TLS/SSL for TDS data "Force Encryption"
USERNAME sa no The username to authenticate as
USE_WINDOWS_AUTHENT false yes Use windows authentification (requires DOMAIN option set)
Description:
This module will allow for simple SQL statements to be executed
against a MSSQL/MSDE instance given the appropriate credentials.
References:
http://www.attackresearch.com
http://msdn.microsoft.com/en-us/library/cc448435(PROT.10).aspx
Module Options
This is a complete list of options available in the admin/mssql/mssql_sql auxiliary module:
msf6 auxiliary(admin/mssql/mssql_sql) > show options
Module options (auxiliary/admin/mssql/mssql_sql):
Name Current Setting Required Description
---- --------------- -------- -----------
PASSWORD no The password for the specified username
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 1433 yes The target port (TCP)
SQL select @@version no The SQL query to execute
TDSENCRYPTION false yes Use TLS/SSL for TDS data "Force Encryption"
USERNAME sa no The username to authenticate as
USE_WINDOWS_AUTHENT false yes Use windows authentification (requires DOMAIN option set)
Advanced Options
Here is a complete list of advanced options supported by the admin/mssql/mssql_sql auxiliary module:
msf6 auxiliary(admin/mssql/mssql_sql) > show advanced
Module advanced options (auxiliary/admin/mssql/mssql_sql):
Name Current Setting Required Description
---- --------------- -------- -----------
CHOST no The local client address
CPORT no The local client port
ConnectTimeout 10 yes Maximum number of seconds to establish a TCP connection
DOMAIN WORKSTATION yes The domain to use for windows authentication
HEX2BINARY /opt/metasploit-framework/embedded/framework/data/exploits/mssql/h2b no The path to the hex2binary script on the disk
NTLM::SendLM true yes Always send the LANMAN response (except when NTLMv2_session is specified)
NTLM::SendNTLM true yes Activate the 'Negotiate NTLM key' flag, indicating the use of NTLM responses
NTLM::SendSPN true yes Send an avp of type SPN in the ntlmv2 client blob, this allows authentication on Windows 7+/Server 2008 R2+ when SPN is required
NTLM::UseLMKey false yes Activate the 'Negotiate Lan Manager Key' flag, using the LM key when the LM response is sent
NTLM::UseNTLM2_session true yes Activate the 'Negotiate NTLM2 key' flag, forcing the use of a NTLMv2_session
NTLM::UseNTLMv2 true yes Use NTLMv2 instead of NTLM2_session when 'Negotiate NTLM2' key is true
Proxies no A proxy chain of format type:host:port[,type:host:port][...]
SSL false no Negotiate SSL/TLS for outgoing connections
SSLCipher no String for SSL cipher - "DHE-RSA-AES256-SHA" or "ADH"
SSLVerifyMode PEER no SSL verification method (Accepted: CLIENT_ONCE, FAIL_IF_NO_PEER_CERT, NONE, PEER)
SSLVersion Auto yes Specify the version of SSL/TLS to be used (Auto, TLS and SSL23 are auto-negotiate) (Accepted: Auto, TLS, SSL23, SSL3, TLS1, TLS1.1, TLS1
.2)
VERBOSE false no Enable detailed status messages
WORKSPACE no Specify the workspace for this module
Auxiliary Actions
This is a list of all auxiliary actions that the admin/mssql/mssql_sql module can do:
msf6 auxiliary(admin/mssql/mssql_sql) > show actions
Auxiliary actions:
Name Description
---- -----------
Evasion Options
Here is the full list of possible evasion options supported by the admin/mssql/mssql_sql auxiliary module in order to evade defenses (e.g. Antivirus, EDR, Firewall, NIDS etc.):
msf6 auxiliary(admin/mssql/mssql_sql) > show evasion
Module evasion options:
Name Current Setting Required Description
---- --------------- -------- -----------
TCP::max_send_size 0 no Maxiumum tcp segment size. (0 = disable)
TCP::send_delay 0 no Delays inserted before every send. (0 = disable)
Go back to menu.
Related Pull Requests
- #8888 Merged Pull Request: spelling/grammar fixes part 1
- #8716 Merged Pull Request: Print_Status -> Print_Good (And OCD bits 'n bobs)
- #8338 Merged Pull Request: Fix msf/core and self.class msftidy warnings
- #6655 Merged Pull Request: use MetasploitModule as a class name
- #6648 Merged Pull Request: Change metasploit class names
- #2525 Merged Pull Request: Change module boilerplate
- #1228 Merged Pull Request: MSFTIDY cleanup #1 - auxiliary
- #507 Merged Pull Request: Add a select command for the various SQL modules
References
- CVE: Not available
- http://www.attackresearch.com
- http://msdn.microsoft.com/en-us/library/cc448435(PROT.10).aspx
See Also
Check also the following modules related to this module:
- auxiliary/admin/mssql/mssql_enum
- auxiliary/admin/mssql/mssql_enum_domain_accounts
- auxiliary/admin/mssql/mssql_enum_domain_accounts_sqli
- auxiliary/admin/mssql/mssql_enum_sql_logins
- auxiliary/admin/mssql/mssql_escalate_dbowner
- auxiliary/admin/mssql/mssql_escalate_dbowner_sqli
- auxiliary/admin/mssql/mssql_escalate_execute_as
- auxiliary/admin/mssql/mssql_escalate_execute_as_sqli
- auxiliary/admin/mssql/mssql_exec
- auxiliary/admin/mssql/mssql_findandsampledata
- auxiliary/admin/mssql/mssql_idf
- auxiliary/admin/mssql/mssql_ntlm_stealer
- auxiliary/admin/mssql/mssql_ntlm_stealer_sqli
- auxiliary/admin/mssql/mssql_sql_file
- auxiliary/scanner/mssql/mssql_hashdump
- auxiliary/scanner/mssql/mssql_login
- auxiliary/scanner/mssql/mssql_ping
- auxiliary/scanner/mssql/mssql_schemadump
- exploit/windows/mssql/mssql_clr_payload
- exploit/windows/mssql/mssql_linkcrawler
- exploit/windows/mssql/mssql_payload
- exploit/windows/mssql/mssql_payload_sqli
- post/windows/gather/credentials/mssql_local_hashdump
- post/windows/manage/mssql_local_auth_bypass
- exploit/windows/mssql/lyris_listmanager_weak_pass
- exploit/windows/mssql/ms02_039_slammer
- exploit/windows/mssql/ms02_056_hello
- exploit/windows/mssql/ms09_004_sp_replwritetovarbin
- exploit/windows/mssql/ms09_004_sp_replwritetovarbin_sqli
- auxiliary/server/capture/mssql
- auxiliary/admin/mysql/mysql_sql
- auxiliary/admin/oracle/oracle_sql
- auxiliary/admin/postgres/postgres_sql
- auxiliary/admin/teradata/teradata_odbc_sql
Authors
- tebo <tebo[at]attackresearch.com>
Version
This page has been produced using Metasploit Framework version 6.1.24-dev. For more modules, visit the Metasploit Module Library.
Go back to menu.