根据披露要求,本文将目标统称为www.redacted.com。
首先白帽小哥通过执行垂直和水平子域枚举找到了唯一的子域,关于垂直和水平子域枚举的具体方法,可以参看下面这篇文章:
https://sidxparab.gitbook.io/subdomain-enumeration-guide/types/horizontal-enumeration
唯一的子域是 accounts.example-website-test02.redacted.com ,当试图访问该子域时它会重定向至主域 www.redacted.com/login ,于是白帽小哥决定使用FFUF进行目录Fuzz:
在 Fuzzing 中得到一个名为 launcher 的站点之后,该站点有一个 JS 文件,该 JS 文件中,白帽小哥发现一处 LinkPsn 的端点,于是对其进行了递归模糊测试,顺利得到一个名为 Conflict 的端点,并且页面中包含了一个“继续”按钮,于是对其进行了参数模糊测试,发现在点击“继续”按钮后的 successRedirect 参数存在XSS攻击漏洞。
白帽小哥立即报告了该漏洞,漏洞报告被迅速确认并分类,但工作人员将漏洞严重性更改为低危并提供 500 美元的赏金奖励,因为他们在低危漏洞的奖金是 500 美元,而在中危漏洞的奖金则是 2000 美元。
这是一个反射型XSS,这意味着从中获得一些东西的唯一方法是通过网络钓鱼或类似的方式,出于该原因,我们决定降低这个漏洞的的严重性。
于是白帽小哥决定在朋友的帮助下创建多个示例来展示该漏洞的影响程度。
攻击者可以通过多种方式诱使受害用户发出他们控制的请求,以传递反射型 XSS 攻击,这些包括将链接放置在攻击者控制的网站上,或放置在允许生成内容的另一个网站上,或是通过在电子邮件、推文或其他消息中发送链接,攻击可能直接针对已知用户,也可能是针对应用程序的任何用户。
下面是该反射型 XSS 影响的不同示例,使用该反射 XSS 我们可以做更多事:
Payload: