[SUCTF 2019]EasySQL
题目地址:https://buuoj.cn/challenges#[SUCTF%202019]EasySQL
测试一番之后发现
输入1时
输入flag时
输入符号时
由此可以看出,这是应该是有黑白名单之类的东西,之后参考别人的wp
https://blog.csdn.net/qq_42158602/article/details/103930598
https://baynk.blog.csdn.net/article/details/105241226?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-3.not_use_machine_learn_pai&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-3.not_use_machine_learn_pai
知道了这个需要用堆叠注入进行查询。
首先查看数据
1;show databases;
可以看到这里有一个名叫 _ctf_的库。
查看下表名
1;set sql_mode=PIPES_AS_CONCAT;select 1
在oracle 缺省支持 通过 ‘ || ’ 来实现字符串拼接,但在mysql 缺省不支持。需要调整mysql 的sql_mode
模式:pipes_as_concat 来实现oracle 的一些功能
另外一种解法:
学到了原来语句还可以这样玩,果然还是我太菜了