记一次某中学系统越权漏洞

一、确定测试站点

资产的收集依旧是按照弱口令与注册进站的思路进行寻找(具体思路可参考上篇文章,含有完整的收集思路与个人信息搜集方法)。最后确定了该站点,密码依旧存在弱口令:

在这里插入图片描述
于是利用默认密码成功登录该站点:
该站的小洞还是挺多的,这里只挑选部分记录

二、水平越权

进入之后,我首先来到个人信息模块,尝试是否可以越权,毕竟这里有个人信息,如果能越权就是中危。
在这里插入图片描述

从历史包中找到该接口的数据包:
在这里插入图片描述

通过分析,该接口是通过id鉴权的,我们观察这个id并不是常见的数字,常用的遍历方法无法成功越权到别人的信息,所以该参数是有一定规律的。
这时,我的思路是寻找其他接口,是否有未授权接口查到所有人的id,或者泄露了别人的id,这样再利用个人信息的接口,就可以越权了。
于是我测试了该站的一些功能,最后公告、通知一栏获得了发布人的id和userid:
在这里插入图片描述

三、垂直越权

由于我搜集到的是某位老师的账号,所以其中有对学生进行管理的后台,如下:
在这里插入图片描述

这里我利用该信息成功弱口令登录了某位学生的账号,这样我们就有了一高一低两个权限的账号,可以进行垂直越权的测试。

测试垂直越权一般就是用低权限的账号去访问高权限的功能接口,若成功则成功垂直越权;或者使用高权限的账号,但是cookie要换成低权限的cookie,如果仍然可以成功访问高权限账号的功能接口,则也可以算垂直越权,如果直接不用cookie都能访问那就是未授权访问了,大家可以利用该思路进行测试。

这里,我首先登录低权限账号,获得了数据包中的cookie,将之替换到了高权限账户中,成功访问了学生管理后台的接口,正当我以为成功垂直越权时,我又将cookie删了,依然成功返回了内容,如下所示

在这里插入图片描述

这时我注意到了JWT,也就是数据包中的Authorization字段,我把它也删了,返回包直接出错了,也就是该系统是通过JWT进行鉴权的,而不是cookie。

所以,我用低权限的JWT替换了高权限账号的JWT,成功返回了学生管理接口的数据,包括该班级所有学生的信息:
在这里插入图片描述

高权限的JWT访问该接口:
在这里插入图片描述
高低权限的JWT均可访问展示学生信息的接口,证明确实存在垂直越权。

  • 16
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

炫彩@之星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值