Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)

在开始第25关之前要了解一下waf绕过

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

1、白盒绕过:通过分析源代码,来进行绕过,本关就是采用白盒绕过

2、黑盒绕过:1)架构层面绕过waf

                        2)资源限制角度绕过waf

                        3)协议层面绕过waf(get型选择检测,post型选择忽略)

                        4)规则层面绕过waf(

  *1、sql注释符绕过:

                                        Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第1张图片

                                *2、空白符绕过:

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第2张图片

*3、函数分割符号:

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第3张图片

*4、浮点数词法解释:

*5、利用error-based报错注入进行sql注入)

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第4张图片

 *6、等等很常用

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第5张图片

 接下来我们开始25关,在这里可以有多种方法,一是双写or。二是把or改为||,用or查询语句进行报错注入

一、联合查询

1、常规操作,发现有注入点

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第6张图片

2、接下来查回显位置(我们可以发现对or进行了过滤,这里尝试使用双写绕过)

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第7张图片

 3、双写绕过,可以知道有三列

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第8张图片

4、接下来用联合查询语句,判断回显位(记住用联合查询id值要改为不存在)为3,这时候我们在3处进行注入。

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第9张图片

5、查库,同样的但凡里面出现了or两个字母连接的,就会进行过滤,我们同样用大小写过滤

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第10张图片

 6、查表vTe9YzqF

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第11张图片

 7、查列

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第12张图片

8、爆数据

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第13张图片

二、报错注入

1、因为在开始测试的时候只发现?id=1'的时候发生报错,说明此处存在报错注入,然后我们先用万能密码?id=1' or '1'='1来闭合语句回显正常注意因为要过滤掉or所以用||来表示or

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第14张图片Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第15张图片

 2、开始进行报错注入,用到的是updatexml函数:updatexml(1,concat(0x7e,(  输入的查询语句   ) ),1)

 Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第16张图片

3、查库,因为用group_concat()函数显示不全所以最好用limit来一个个查询

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第17张图片

 4、查表

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第18张图片

 5、查表

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第19张图片

 6、爆数据

Sqli-labs——lesson25(联合查询和报错注入,附各种sql万能密码)_第20张图片

 因为右边没有显示全,所以用函数来查询剩余部分此处???!!!

你可能感兴趣的:(Sqli-labs闯关,大数据)