声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。 |
本文适合“新手”观看,老鸟请自动绕行~
背景介绍:
今天的故事来自于一位名叫 Fauzi Bariq Mahya 的白帽子,他是一名安全狂热分子,从2021年初开始正式进入漏洞赏金领域,今天的故事是他获得第一笔漏洞赏金的过程。
不安全的直接对象引用(IDOR)是应用程序使用用户提供的输入直接访问对象时出现的一种访问控制漏洞,IDOR自OWASP 2007开始出现于TOP排行榜。此类漏洞常与水平越权有关,有时也会导致垂直越权。
安全起见,目标网站统一使用redacted.com进行替代。
漏洞复现过程:
首先在redacted.com网站上使用2个不同的帐户进行注册,帐户A=攻击者(Attacker),帐户B=受害者(Victim)。
1、使用攻击者帐户访问:
https://redacted.com/websites/10-21xxxxx/alerts/configuration
2、在删除数据之前,打开Burp Suite代理
3、开启Burp Suite抓包后,点击“删除数据”按钮:
4、Burp Suite查看该请求:
5、上图中的JSON数据中,alertDefinitionIds参数中的4478250是攻击者(Attacker)的帐户ID,而通过受害者(Victim)的访问,可以发现它的ID是4478118:
https://redacted.com/websites/13-2292xxx/alerts/configuration/edit/4478118?group=page_alerts&type=page_type_change
而在该请求中,攻击者可以通过修改alertDefinitionIds参数进行水平越权,从而删除掉受害者(Victim)的数据。
6、这个漏洞可以使白帽小哥成功获得$200的赏金奖励。
那么问题来了,能否利用攻击者批量删除其它用户的数据,从而增加该漏洞的影响范围呢?
1、毫无疑问,自然是使用Burp Suite中的Intruder功能
2、将上方存在漏洞的请求提交给Intruder,然后在4478118处进行标记,如下图所示:
3、在Payload处,选择Numbers,然后选择一个数字范围,如下:
上图所示,我们遍历的id范围数是183个。
4、OK,一切就绪,点击“Start Attack”按钮,就可以批量删除其它用户的数据了:
漏洞时间线:
2021.11.27 — 报告漏洞
2021.11.30 — 漏洞分级分类
2021.12.3 — 漏洞修复及赏金发放$1350
这篇文章是这位白帽小哥的第一篇文章,有兴趣的同学也可以去他的推特看看,推特上搜“orangjowo”就能找到他,通过点击下方“阅读原文”即可跳转至文章原链接查看。
====正文结束====
原文始发于微信公众号(骨哥说事):如何在1小时内从IDOR获得1350美元的赏金奖励