除select外查询数据的另一种姿势
1.24
1.[GYCTF2020]Blacklist
- buuctf上的题目
1.解题过程
输入1会返回一个数组,加上单引号就报错了,说明存在注入
以前做过类似的估计是堆叠注入,尝试一下
注入成功
正想查看flag但是发现select被过滤了,正常之前做的题也过滤了很多
HANDLER ... OPEN语句打开一个表,使其可以使用后续HANDLER ... READ语句访问,该表对象未被其他会话共享,并且在会话调用HANDLER ... CLOSE或会话终止之前不会关闭
构造最终payload
0';handler FlagHere open;handler FlagHere read first;
获得flag
2.总结
因为做过类似的,所以前面做的比较快
后面这题有两种做法,第一种方法找到输入1时返回的数组,将flag的数组替换那个数组,但是这种做法容错率比较低,一旦payload出错可能会导致原本的flag消失而且payload较长
而第二种方法只是使用了其他能查看数据的命令,相当与linux禁用了cat但是可以使用more或less等命令绕过,且第二种命令出现错误也没事重新输入即可,字符也比较短








浙公网安备 33010602011771号