SQLMap是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞,日前支持的数据库是MS-SQL,,MYSQL,ORACLE和POSTGRESQL。SQLMAP采用四种独特的SQL注入技术,分别是盲推理SQL注入,UNION查询SQL注入,堆查询和基于时间的SQL盲注入。其广泛的功能和选项包括数据库指纹,枚举,数据库提取,访问目标文件系统,并在获取完全操作权限时实行任意命令。
本文介绍的是在kali linux下的使用方法,windows下的指令调用方式与linux类似。
kali linux自带SQLMap,使用时在终端内敲入“sqlmap+参数”即可使用。
0x00
测试环境:Metasploit靶机,dvwa有漏洞的web应用
0x01
启动VirtualBOX打开Metasploit并查看靶机ip地址
登录dvwa,为方便演示,将dvwa的安全等级设置为“LOW”,点击“SQL Injection”,在输入框内随意提交一段字符串如admin,得到的url地址为:
http://192.168.0.106/dvwa/vulnerabilities/sqli/?id=admin&Submit=Submit#
url中出现了“id=***”的部分,猜测可能存在注入点,可用SQLMap进行检测,由于dvwa需要登录,所以参数中应使用“--cookie=”加入cookie信息,cookie可用火狐浏览器的插件“Live HTTP Headers”获取,加上cookie的命令如下:
sqlmap -u "http://192.168.0.106/dvwa/vulnerabilities/sqli/?id=admin&Submit=Submit#" --cookie="Cookie: security=low; PHPSESSID=d39b69bc7649eac2e116b404f3e2a628
Live HTTP Headers界面: