实验要求

漏洞环境:逻辑漏洞靶场环境——logic
要求提交实验报告
1.突破功能限制漏洞。要求突破查询按钮disable限制,获取编号:110010的查询内容(弹框中的flag)。
2.用户信息泄漏漏洞。通过回显信息,以暴力破解方式猜测系统中存在的两个用户名(提示:用户名以 “u” 开头),并暴力破解这两个用户对应的密码。
3.越权漏洞。通过上一步破解的用户名密码登录,利用越权漏洞获取admin与admin1的个人信息。
4.遍历漏洞。已知当前系统中存在的一个学号为:20190504035XA01。利用遍历漏洞获取其他学号对应的成绩(不少于5条)。
5.暴力破解攻击。获取系统中另一个六位数字编号对应的弹框flag内容。

靶场搭建

进入靶场文件目录下输入docker-compose up -d启动靶场,访问http://192.168.37.128:8993即可

漏洞复现

突破功能限制漏洞

查询按钮是灰色的,无法被点击

按F12进入查看器,定位到按钮的前端功能实现,将disable="disable"删除后点击查询

弹窗获得FLAG:flag{byp4ss1s_ez}

用户信息泄漏漏洞

随便输入用户名和密码,提示用户名不正确

burpsuite开启代理

将请求包发送给intruder,对用户名进行爆破,得到用户名如下

#爆破出的用户名
user
user1
admin
admin1

将爆出的用户名装载进有效负载集,爆破密码

#爆破出的用户名及密码
user 888888
user1 123456

使用爆破出的用户名及密码成功登录

越权漏洞

burpsuite开启代理,使用user1账号登录,发现第一个数据包cookie中有uid=dXNlcjE%3D字段

dXNlcjE%3D使用url解码,再使用base64解码,得到uid=user1,可知uid和账户名有编码对应关系

欲获取admin与admin1的个人信息,先将用户名base64编码

将第二个数据包中的uid值更换成admin的base64编码,发送数据包,成功获取admin个人信息

将第二个数据包中的uid值更换成admin1的base64编码,发送数据包,成功获取admin1个人信息

遍历漏洞

已知当前系统中存在的一个学号为:20190504035XA01,开启burpsuite代理,使用此学号查询

根据此学号的格式,推理学号前八位20190504是入学年月日(不变),那么只需要遍历XA之前的三位数字和最后两位数字即可

将数据包传给intruder模块,使用集束炸弹模式,设置有效载荷

将有效载荷选项设置成暴力,如下图

点击开始攻击,等待一段时间,得到爆破结果

#整合出的编号
20190504035XA01
20190504035XA02
20190504036XA03
20190504036XA04
20190504037XA05
20190504037XA06
20190504038XA07
20190504038XA08

查询结果

暴力破解攻击

如之前突破功能限制,开启burpsuite代理,按F12将disable="disable"删除,输入6位数编号查询,抓取数据包

将数据包发送到intruder模块,设置如下图

将有效载荷类型改成暴力,配置如下图,点击开始攻击

等待一段时间后,得到爆破结果735142

查询编号得到弹框FLAG内容flag{d1ct_1s_v3ry_1mp0rt4nt}