前言:
本篇文章接上一篇文章后续,这里涉及到burp不会安装使用可以百度或者参考前文
1、数字型注入
我们访问
http://wangehacker.cn/pikachu-master/index.php
靶场
这里我们转到左侧sql注入的栏目
这里我们先使用第二个数字型注入
这里我们选择一个值,点击查询之后,我们可以发现传递过来一个查询的内容,这里很显然是post传递(可以看地址栏有没有传递值判断),那么我们可以尝试使用burp抓包来查看一下数据,是否可以注入。
选择完参数我们点击查询,拦截到数据包,我们选择一种比较直接的方式,将拦截的包保存出来,可以右击直接保存,不会的可以复制出来放到txt文件中。
我们通过传参来猜测数字3后面可能存在注入点,我们在txt文件中的3后面加上*号表示我们需要在这里尝试注入。
然后我们txt文件放到root目录下,使用Windows的朋友自行放置。
使用命令:
sqlmap -r "/root/post1.txt" --batch --dbs
这里同样可以爆出库,后面步骤我们按照基本使用过程的流程走就好了,后面我就直接说走流程,意思就是按照基本使用过程走就行。
2、字符型注入
对于这种类型我们首先输入一下内容,传递看看是什么类型
我们随便输入一个参数,查看网址栏发现是get传参,那就很简单了,我们直接将这个地址复制下来,使用命令开始。
sqlmap -u "http://wangehacker.cn/pikachu-master/vul/sqli/sqli_str.php?name=li*&submit=%E6%9F%A5%E8%AF%A2" --batch --dbs
其实就是在我们传递的参数后面加一个*号,标志这里尝试注入
3、搜索注入
我们还是输入参数观察
我想这里不需要我多说什么了,这里和上一个的操作可以说一模一样,直接标记*号扔进去注入就好,也是属于get传参。
下面的xx型注入的方式同理,这里就不介绍了。
4、instert/update注入
这里我们观察一下是什么结构
这里明显有一个注册,什么叫注册,那就是往数据库写入,那么我们就需要点击注册,然后进去之后我们继续观察
我们利用反斜杠来测试,提交之后发现报错,带入数据库中,那么就简单了,这个就和第一种一样了,我们使用burp拦截提交注册信息的数据包,拦截之后保存下来在用户名那一段后面加上*号,然后传到sqlmap中跑就ok
5、delete注入
我们进入这个板块发现是一个留言板,一般来说这里是xss的,但是我们这里需要sql注入,我们留言之后发现是可以删除的,那么我们抓包来看看。
我们这里看到有一个id传参,那么我们还是利用之前的方式,通过保存为txt文件然后在id后面添加*号重复上面的步骤即可
6、http header注入
这里我们先用admin,密码123456登录进去
这里可以看到我们自己的信息,我们用burp抓包拦截,刷新这个页面
我们在自己的信息后面添加字符,因为我们的信息被记录,所以可能带入数据库,这里我们发送包。
带入我们就可以尝试一下利用user-agent注入,命令如下:
python sqlmap.py -u "http://wangehacker.cn/pikachu-master/vul/sqli/sqli_header/sqli_header.php" --user-agent="xxxx*" --level 4 --batch --dbs --threads 10 --technique E
这里是我用Windows测试的,10线程,指定E报错注入,那么我们就能得到结果了。
7、盲注
针对这个,我们也是可以看到这里使用get传参,那么总体方式还是一样的,只不过我们这里稍微改变一下检测方式,我们使用盲注。命令:
python sqlmap.py -u "http://wangehacker.cn/pikachu-master/vul/sqli/sqli_blind_b.php?name=34234&submit=%E6%9F%A5%E8%AF%A2" --batch --dbs --technique EBST --threads 10
我们这里使用B是布尔盲注,E是报错注入,U是联合查询,S堆叠注入,T时间注入,这里我们多加几个,但是最后是用得到盲注方式所以很慢,这里就不等结果了。
8、宽字节注入
宽字节注入的原理基本就是中文的编码来插入到数据库中,我们在可注入点后面加上%df,防御的代码默认会加上\来注释掉2我们本来想注入的东西,但是这里的就会变成%df\这样就会形成一个中文字符,导致最终形成一个空格,然后完成注入,那么我们具体要怎么做,这里我们同样是将数据包给拦截保存下来,这里不重复这个过程
我们需要在拿出得到包上面传递的参数后面加上
%df%27*
这样我们就可以按照之前的命令将数据包放到sqlmap中开跑
sqlmap.py -r "./post1.txt" --batch --threads 10 --dbs
这里我们就可以成功拿下这个宽字节注入点。
这里我们基本上就是属于测试完毕,各种类型的注入都有所介绍,大家可以自行练习,新手朋友过几遍我想就会比较熟练的使用了。
关注公众号:白安全组
网址:www.wangehacker.cn
扫描二维码关注我们吧!