前言:
看了大佬的wp才会,这里要猜得出数据库里面的匹配语句是啥才行。
select $_POST[query] || flag from flag
解题:
输入1之后会回显:
输入1’,什么都没显示.
输入1"之后发现。"被过滤了。
fuzz测试之后发现他过滤l很多,但是无论输入什么数字都只会出现第一幅图的界面。就可以猜测出来这里可能返回的是bool值。
背后的逻辑:select $_POST[query] || flag from flag
看了wp后发现:PIPES_AS_CONCAT能将||视为字符串连接符而非运算符(或)。
那么语句:1;set sql_mode=PIPES_AS_CONCAT;select 1
背后运行逻辑:select “1” +flag from flag就能跑出来了。
总结:
这里需要一些熟练度,能反推出内部语句。
用PIPES_AS_CONCAT修改||含义。
[SUCTF 2019]EasySQL--SQL注入--将||视为字符串连接符而非或运算符
最新推荐文章于 2024-03-17 12:15:00 发布