Webhacking.kr old-18
Challenge
Make the query return the admin row while bypassing the space filter.
绕过空格过滤,让查询返回 admin 记录。
1 | https://webhacking.kr/challenge/web-32/ |
Analysis
题目的查询形态把 no 输入置于括号中,题面注释给出 admin
的 no 为 2。0 让
id='guest' 条件为假,OR no LIKE 2 选中
admin;LIKE 在这里承担比较作用,避开被过滤的
=。%09 解码为 Tab,可替代被过滤的空格;payload
先闭合输入外层括号,再用 -- 注释掉查询末尾的剩余字符。
Solution
下面构造请求,不发送请求:
1 | from urllib.parse import urlencode |
URL 解码后的 no 值为
0)\tor\tno\tlike\t2\t--\t,其中没有普通空格,也没有
=;末尾注释会吞掉服务端拼接的其余内容。