记一次逻辑漏洞的挖掘
2023-2-12 08:31:12 Author: 李白你好(查看原文) 阅读量:18 收藏

前言

某次漏洞挖掘的过程中,碰到一个与以往挖掘的逻辑漏洞有些差别的漏洞,在此记录一下。

正文

漏洞点在忘记密码处。如图。

这里随便找了一个同学的学号进行下一步的操作。
这里正常验证的话,需要学号和身份证的信息,但是我们是没有身份证信息的,但是这里可以简单的抓包然后改包进行下一步。

响应包返回如下

看到这个响应包,相信有经验的师傅们都会会心一笑。这里尝试将响应包的failure改为success.

发现可以成功的带我们来到重置密码的界面。

这里还有一个拦路虎,手机验证码,且不说验证码能不能爆破的问题,仅当我点击发送验证的时候,页面的响应如下

这里看来还验证了上一步学号和身份证的验证结果,发送验证码在服务端看来是非法的。
不死心的我,尝试了将验证码置空,或者填了0000和9999之类的,最后干脆删掉了验证码字段,当然也都没有成功。
最后观察了一下提交密码重置后的响应包,如图。

这里当时看到这个null的时候,突然就灵光一闪。
会不会服务端根本没生成验证码(因为我点击发送验证码的时候显示了非法请求),从而导致验证码的值为null?
马上尝试了一下,发现了新世界!
请求包如下

再看看返回的响应包,成功了!

这和我以往碰到的单纯改响应包下一步验证的绕过稍稍有些不同,稍微根据响应包返回的信息,猜想了一下后端的逻辑,希望能给各位师傅一起分享一下漏洞挖掘的经验(新手上路大佬轻喷)

参考链接

文章来源:先知社区(irrik)

原文链接:https://xz.aliyun.com/t/8109

往期回顾

对某大学管理信息系统的一次渗透测试

Windows提权流程及手法,建议收藏


文章来源: http://mp.weixin.qq.com/s?__biz=MzkwMzMwODg2Mw==&mid=2247496982&idx=1&sn=917f351b001ab429c4c0b89645b1a0ef&chksm=c09a8646f7ed0f50bdfc7d6eb2d2eca29bf426a5340466204166e8fa0d8a5845e710d1608e9e#rd
如有侵权请联系:admin#unsafe.sh