Reflected XSS in Amazon India
2019-09-16 10:02:49 Author: xz.aliyun.com(查看原文) 阅读量:191 收藏

本文是翻译文章,原文链接为:https://zerottl.com/posts/xss-in-amazon-india/

这是一份描述我在datavault.amazon.com上的XSS的文章。一个URL的值被渲染显示在页面上,没有经过任何清洗导致了XSS漏洞。这是一年前向Amazon报道的,此漏洞之后已经得到修复。

我使用amass对amazon.in的域名进行了子域名手机。Aquatone用于对子域名列表中的每个站点进行页面截屏。经过与页面截屏进行对照,我对datavault.amazon.in站点进行深入挖掘。

当我登陆的amazon.in后,下图是我访问datavault.amazon.in的截图。

除了我注册amazon.in的邮箱外,我看不到任何有用的信息。但是一旦我查看了页面源代码后有一些好玩的javascript文件被发现了。

在javascript文件中,文件installnationCommons.js有一些有趣的函数。即downloadAffordabilityDocument()和downloadDocument()。

  • 函数:downloadAffordabilityDocument()

  • 函数:downloadDocument()

我从函数中抽取了两个URL,如下:

https[:]//datavault.amazon.in/affordabilityDownloadReport?DocumentName=<DOCUMENT_NAME>

https[:]//datavault.amazon.in/data/DownloadReport?DocumentName=<DOCUMENT_NAME>&RequestType=<REQUEST_TYPE>

现在你可以看到RequestType这个参数反显到了页面上。我们现在可以测试一下HTML注入。

HTML注入测试

Payload :

URL :

https://datavault.amazon.in/data/DownloadReport?DocumentName=123&RequestType=<b>BOLD</b>cd

输出:

你可以看到用户输入没有被清洗并直接反显在了HTML代码中。<b>BOLD</b>被直接嵌入在了页面当中。我可以在页面中任意注入HTML代码了,是时候使用<script>标签了。

XSS测试

Payload :

<script>alert('XSS');</script>

URL :

https://datavault.amazon.in/data/DownloadReport?DocumentName=123&RequestType=<script>alert('XSS');</script>

攻击利用和影响

这个反射型XSS是通过构造一个带有特殊payload的URL并将它发送给用户。一旦用户点击,用户就可以被导向到恶意站点或者被通过HTML注入要求输入他们的密码信息。

amazon.in上的Cookies附上了HttpOnly属性和Secure属性所以是不可能被窃取的。

报告

  • 于2018年3月1日向亚马逊安全部报告。
  • 24小时内亚马逊安全的响应。
  • 已于2018年3月12日收到“已修复”的邮件。

文章来源: http://xz.aliyun.com/t/6326
如有侵权请联系:admin#unsafe.sh