成绩单 CTF_快来查查成绩吧

dreamhua 2020-04-19

一、工具

1.实验平台:http://123.206.87.240:8002/chengjidan/

2.工具包:Burp Suite和sqlmap:链接:https://pan.baidu.com/s/1qC6FxXwXtt4ReZF3QyGNYg
提取码:yjew

二、分析

1.进去后是一个查询界面,当风别输入1,2,3时会出现不同人的成绩单;

2.首先我想到了SQL注入,在查询框中,填入“and 1=1”页面出错,所以应该不是数字型注入。

3.尝试是不是字符型注入:

当在输入框中输入“1‘ and 1=1#”时显示正常,当输入"1‘ and 1=2#"时又出现错误,所以这里应该是字符型SQL注入。(对字符型漏洞和数字型漏洞不太理解的可以借鉴:https://blog.csdn.net/weixin_43919144/article/details/105552701)

成绩单 CTF_快来查查成绩吧

成绩单 CTF_快来查查成绩吧

 三、SQL注入

方法一:直接注入

1.测试当前查询显示几个字段,利用联合查询语句查找可显 字段:

成绩单 CTF_快来查查成绩吧

2.查询当前数据库名称:

成绩单 CTF_快来查查成绩吧

 3.获取数据库中的表名:id=-1‘ union select 1,2,3,group_concat(table_name) from information_schema.tables where table_schema=database()#

成绩单 CTF_快来查查成绩吧

4.获取表中的字段:

成绩单 CTF_快来查查成绩吧

5.最后一步根据字段名获取flag:id=-1‘ union select 1,2,3,skctf_flag from fl4g,sc#

成绩单 CTF_快来查查成绩吧

 方法二:使用sqlmap工具

1.运行BP抓包,将其保存为txt文档

成绩单 CTF_快来查查成绩吧

 2.使用sqlmap查询数据库: -r:文件类型; -p指定参数; --dbs 查询数据库

成绩单 CTF_快来查查成绩吧

 是否继续,选择yes,继续查询数据库名:

成绩单 CTF_快来查查成绩吧

 3.查询数据库表名:

成绩单 CTF_快来查查成绩吧

 4.获取表中的字段:

成绩单 CTF_快来查查成绩吧

 5.获取字段里面的值:

成绩单 CTF_快来查查成绩吧

 拿到了flag!!

相关推荐