当前位置: 首页 > article >正文

逻辑漏洞测试靶场实验

任务一:
突破功能限制漏洞,要求突破查询按钮disabled限制,获取编号:110010的查询内容(弹框中的flag)
任务二:用户信息泄露漏洞,通过回显信息,以暴力破解法方式猜测系统中存在的两个用户名(提示:用户名以u开头),并暴力破解这两个用户对应的密码)
任务三:越权漏洞,通过上一步破解的用户名密码登录,利用越权漏洞获取admin和admin1的个人信息。
任务四:遍历漏洞。一直当前系统中存在一个学号为:20190504035XA01.利用遍历漏洞获取其他学号对应的成绩(不少于5条)
任务五:暴力破解攻击。获取系统中另一个六位数字编号对应弹框的flag内容。

任务一:
Step1:搭建环境

docker-compose build
docker-compose up -d
docker ps

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Step2:输入110010,很明显查询按钮按不了
在这里插入图片描述

Step2:我们去查看一下源码,发现查询按钮部分有一个disabled,我们将disabled改成abled就可以执行了。
enabled = “enabled”
在这里插入图片描述

Step3:用web tools里面的inspector,然后把disabled=“disabled”修改为enabled=“enabled”,发现按键可以按下,即为成功。
在这里插入图片描述

Step4:flag出来了,是
flag{byp4ss1s_ez}

在这里插入图片描述

任务二:
step1:提示了是暴力破解,并且是u开头,我们先试一下u开头的,看回显是什么。(因为u,想到了user,直接试了user)。当我们输入user的时候,回显是密码不正确。说明我们的用户名输入正确了。因为如果输入u,显示的是用户名不正确。
u
user
在这里插入图片描述

在这里插入图片描述

Step2:破出了一个用户名,user,然后我们猜测应该另外一个是user后面加数字也不会差特别多,我直接就试了user1,然后直接试出来了。另外一个用户名就是user1.
user1

在这里插入图片描述

Step3:然后就是破解密码,这个是要求我暴力破解。我先猜123456,第一个用户user不对,猜user1的时候猜出来了(我真会猜emmm)。所以我们得到user1的密码是123456。
123456

在这里插入图片描述

Step4:另外一个自己猜的话没猜出来,所以我们选择用工具来爆破,这里使用的是burpsuite,首先抓包
在这里插入图片描述

Step5:然后send to intruder,然后选择sniper,然后选择payloads,然后导入字典(这里是自己从网上找的一个弱密码字典)
在这里插入图片描述
在这里插入图片描述

Step6:然后开始攻击,查看长度888888的长度是2315和其他的完全不一样长,所以我们找到密码了,user密码888888.
888888

在这里插入图片描述

在这里插入图片描述

任务三:
step1:先抓个包看看有什么参数。发现是post方式传递用户名和密码。然后在cookie里面看到了uid,然后后面带一块参数,然后右边的框解密发现是base64编码,解码是user,我们尝试改成admin
YWRtaW4=
在这里插入图片描述
在这里插入图片描述

step2:修改一些参数
在这里插入图片描述
在这里插入图片描述

Step3:失败了,后来仔细看了返回的包,然后我看到set-cookie一直是user1,就算修改了,还是user1,这让我很奇怪。
在这里插入图片描述
在这里插入图片描述

Step4:然后我去用了edit the cookie,我发现,我改了以后如果我不使用锁定,他会自己把我改的又改回来。所以我用edit the cookie把我改了进行了锁定(把那个user1的地方改成了admin的base64加密和url编码)。然后得到了admin的个人信息。
YWRtaW4=
在这里插入图片描述
在这里插入图片描述

Step5:同理,我们将admin1进行base64编码后再进行url编码。然后得到admin1的个人信息。(这个想法主要是基于,最开始进行抓包然后修改成admin的时候编码啥的都做了,然后发送,应该是要变了的,但是cookie就是不变,然后想起来我有一个直接edit the cookie的插件,然后我怕失败,特意锁定了,然后结果成功了,虽然我也不知道为什么bp会失败)。
YWRtaW4x

在这里插入图片描述

在这里插入图片描述

任务四:
Step1:先查询一条之后,仔细查看这个学号的信息
在这里插入图片描述

Step2:我们选择用burpsuite抓包之后一个一个遍历,send to intruder,然后选择载荷的位置,然后设置载荷的内容,设置为数字,从00到99,一次加1,数字的位数是2位。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Step3:开始攻击之后,得到的结果里面,因为已知01的长度,然后只筛选和01的长度一样的就可以得到有02。目前只得到一条,这时候发现,payload应该在多个地方,我们需要设置多个载荷。
在这里插入图片描述

Step4:在仔细看了一下啊,发现应该是年月日身份证后四位一个大写字母带两位数字,应该是,感觉有点难加说真正。我加了三个攻击载荷,但是感觉爆出来的可能性不高。后面老师说了爆破点,直接设置.(因为用的虚拟机,才4核根本跑不动,直接去数据库看的结果,然后设置的范围)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Step5:最后跑出来的一些长度2345,2344的就是我们要的。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

任务五:
step1:按照任务一一样修改,然后抓个包
在这里插入图片描述

Step2:设置攻击载荷(看了结果设置的直接从后面几位开始了,本人还不会写python脚本)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Step3:开始攻击,明显发现,735142的长度大很多。
在这里插入图片描述

Step4:输入735142,修改还是按照任务一一样修改enabled。然后查询,得到flag。
flag{d1ct_1s_v3ry_1mp0rt4nt}

在这里插入图片描述
在这里插入图片描述


http://www.kler.cn/a/156022.html

相关文章:

  • Java项目实战II基于微信小程序的个人行政复议在线预约系统微信小程序(开发文档+数据库+源码)
  • 【知识科普】SPA单页应用程序介绍
  • aws(学习笔记第十二课) 使用AWS的RDS-MySQL
  • 区块链技术在电子政务中的应用
  • 基于MATLAB+opencv人脸疲劳检测
  • leetcode206. Reverse Linked List
  • vue $nextTick 样式私有化
  • 设计模式--观察者模式(Observer Pattern)
  • 如何熟练使用vim工具?
  • spring boot的redis连接数过多导致redis服务器压力过大的一次问题排查
  • 数据挖掘之时间序列分析
  • 万界星空科技灯具行业MES介绍
  • 【java毕业设计源码】基于SSM框架的在线智能题库管理系统设计与实现
  • TensorRT安装及使用教程(ubuntu系统部署yolov7)
  • 解决浏览器缓存问题
  • 基于算能的国产AI边缘计算盒子8核心A53丨17.6Tops算力
  • 设置随机种子保证网络可复现性
  • 智能优化算法应用:基于黄金正弦算法无线传感器网络(WSN)覆盖优化 - 附代码
  • 有序表常见题型
  • 2023年GopherChina大会-核心PPT资料下载
  • Fiddler抓包工具之fiddler的常用快捷键
  • SpringAMQP入门案例——发送消息
  • Android CardView基础使用
  • 反序列化漏洞详解(三)
  • blender导出相机参数
  • ESP32使用mpu6050以及pid调参