SQLMAP自动注入-request参数-WEB渗透社区-电脑端-X黑手网
X黑手网
点击查看-X黑手网
点击查看-X黑手网

SQLMAP自动注入-request参数

提交数据段 –data

  • get / post 都适用

sqlmap.py -u "http://192.168.0.119/mutillidae/index.php?page=login.php" --data="username=1&password=1&login-php-submit-button=Login" --dbs
#-u后面跟URL
#--data后面跟用户请求的数据

 

变量分隔符:–param-del

  • 一般情况下,网站会用&作为参数的分隔符,这也是SQLMAP默认使用的分隔符,如果有些web application不使用&作为分隔符的话,那么就使用–param-del去告诉sqlmap分隔符是什么。

sqlmap -u "http://1.1.1.1/a.php" --data="q=foo;id=1" --param-del=";" -f

cookie值

  • 大部分网站需要使用cookie值来代表用户的合法性访问,这些网站如果使用sqlmap去扫描的的话,不带cookie值的情况下是扫不到的,使用–cookie后面跟cookie的值,比如我们之前使用的dvwa就是的

 

image

 

./sqlmap.py -u "http://192.168.0.119/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4bef239e9c2df754baddf5dce105d666" --dbs

 

image

 

–user-agent

  • 当你用sqlmap对一个网站进行扫描的时候,可以通过抓包看到,那么他就可以通过过滤的一些手段进行阻断

 

image

 

--user-agent  #手动指定用户agent
--random-agent #使用kali自带字典的形式随意挑选
#kali自带字典:
/usr/share/sqlmap/data/txt/user-agents.txt

 

image

 

  • sqlmap检查user-agent中的注入点:Level>=3

  • APP/IDS/IPS/WAF会过滤异常user-agent报错

 

Host头:–host

  • sqlmap检查host中的注入点:Level=5

 

Referer头:–referer

  • sqlmap检查Referer头中的注入点:Level>=3

 

额外的header:–headers

  • 每个头单独一行(名称区别大小写),可以使用\n进行换行

  •  

 

指定请求方法

–method=POST/GET

 

 

 

基于HTTP协议的身份验证

  • Basic基本身份认证

  • Digest

  • NTLM

–auth-type Basic

 

–auth-cert  /  –auth-file

  • 含有私钥的PEM格式证书文件

  • PEM格式的证书链文件

 

 

HTTP(S)代理

–proxy=”http://127.0.0.1:8087″

–proxy-cred=”name:pass”

–ignore-proxy     #忽略系统代理设置,通常用于扫描本地网络目标

 

 

–delay

  • 每次http(s)请求之间延迟时间,浮点数,单位为秒,默认无延迟

 

–timeout

  • 请求超时时间,浮点数,默认为30秒

 

–retries

  • http(s)连接尝试重试次数,默认3次

 

–randomize

  • 长度,类型与原始值保持一致的前提下,指定每次请求随机取值的参数名(例如对id=1,随机产生123455)

 

–scope

  • 过滤日志内容,通过正则表达式筛选扫描对象

sqlmap -l burp,log --scope="(www)?\.target\.(com|net|org)"
//按照www.target.com|net|org筛选

//或者按照数字筛选
sqlmap -l 2.log --scope="(19)?\.168\.20\.(1|10|100)" --level 3 --dbs

//可以扫描User-agent中的注入点

–safe-url  /  –safe-freq

  • 检测和盲注阶段会产生大量失败请求,服务器端可能因此销毁session

  • 每发送–safe-freq次注入请求后,发送一次正常请求

 

–skip-urlencode

  • 默认Get方法会对传输内容进行编码,某些WEB服务器不遵守RFC标准编码,使用原始字符提交数据;

 

–eval

  • 每次请求前执行指定的python代码

  • 每次请求更改或增加新的参数值(时间依赖,其他参数值依赖)

sqlmap -u "http:1.1.1.1/a.php?id=1&hash=c4ca4238a0b923820dcc590a6f58417b" --eval="import hashlib;hash=hashlib.md5(id).hexdigest()"
请登录后发表评论

    没有回复内容