SQLi LABS Less-26
【摘要】
第26关使用GET请求提交参数,我们可以直接在url地址栏中构造payload
源码中过滤了or,and,/*,#,--,空格,斜线,需要想办法绕过
过滤了注释(#,--),我们可以不用注释,使用单引号闭合,使SQL语法结构成立
过滤了空格,我们可以使用括号()来代替空格
在u...
第26关使用GET请求提交参数,我们可以直接在url地址栏中构造payload
源码中过滤了or,and,/*,#,--,空格,斜线,需要想办法绕过
过滤了注释(#,--),我们可以不用注释,使用单引号闭合,使SQL语法结构成立
过滤了空格,我们可以使用括号()来代替空格
在url地址栏中输入payload 1'anandd'1,正常显示;输入 1'anandd'0时,空显示;说明用户输入的参数可以使SQL恒成立或恒不成立从而影响SQL的执行结果,即存在注入,注入点为单引号字符型注入
源码中的SQL如下
当我们输入1'anandd'1时,后端过滤掉and和空格后拼接的SQL是这样
and后面的'1'会转换为true,使SQL恒成立,可以正常查询处用户数据并显示到页面
当我们输入1'anandd'0时,后端过滤掉and和空格后,拼接的SQL是下面这样
and后面的'0'会转化为false,使SQL恒不成立,SQL查询不到用户的数据,会在页面显示为空
确认了注入点后,我们就可以使用报错注入进行脱库了,由于源码中过滤了空格,需要将payload中的空格替换为括号()
-
1' aandnd(updatexml(1,concat(0x7e,
-
(select(group_concat(schema_name))from(infoorrmation_schema.schemata))
-
),1))aandnd'
文章来源: blog.csdn.net,作者:士别三日wyx,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/wangyuxiang946/article/details/119713408
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)