劫持亚马逊S3bucket
2021-03-01 15:37:27 Author: wiki.ioin.in(查看原文) 阅读量:329 收藏

火线Zone

翻译|劫持亚马逊S3bucket

原文地址

https://blog.securelayer7.net/hands-on-aws-s3-bucket-account-takeover-vulnerability/

劫持AWS bucket

    正如我们在AWS渗透测试系列的第一部分中看到的AWS S3 Bucket渗透测试的基础知识,在第二部分中,我们解释了什么是Amazon S3Bucket以及可用于不同目的的第二部分。在这一部分中,我们将看到攻击者如何接管AWS S3 Bucket。

    在执行任何目标应用程序的侦察和信息收集时,如果在网页上找到显示404 Not Found的页面。在浏览器中观察该页面上显示的错误。

    上面的错误显示了其中已托管应用程序所有数据的S3 BucketName:infosec-startup.com。如果开发人员从AWS控制台中删除了整个数据和S3Bucket[即此处(infosec-startup.com)],但ROUTE53中的CNAME记录仍在等待删除,在这种情况下,攻击者可以声称通过劫持这个BucketName来劫持这个Bucket。这可能导致攻击者利用S3 Bucket帐户接管漏洞。

    接管AWS S3 Bucket,攻击者需要知道以下信息:

    1.无人认领的S3 BucketName:

    2.该Bucket的区域:

    ●要声明S3Bucket,攻击者必须知道受害者使用哪个区域来创建此Bucket。

    ●要查找Bucket的区域,可以使用CNAME查找服务。

    ●访问

    https://mxtoolbox.com/CNAMELookup.aspx并在此处输入您的Bucket名称。

    准备接管S3Bucket!!

    1.登录到您的AWS管理控制台,然后单击S3

    2. 点击 Get started

    3.输入我们之前找到的Bucket名称和区域名称,然后单击下一步

    4.继续单击下一步选项按钮,最后单击完成。

    bucket将被创建,如下图所示。

    5. 选中bucket

    6.上传任意文件. 

    这里我们上传 index.html

    7.选择index.html文件,然后单击“操作”,然后从下拉列表中单击“公开”。

    8.单击Properties –> Static website hosting –> Use this bucket to host a website and enter the index document name,即index.html,然后完成。

    9.访问该域名.

    现在我们已经成功接管了AWS S3Bucket!

    结论:

    在此博客中,我们了解到,一旦发现在任何错误页面中都暴露了一个S3Bucket,那么我们如何才能声明该Bucket并将任何恶意内容上传到该bucket,而这些内容将直接显示在相应的目标网站上 应用。在下一部分中,我们将更多地了解与AWS及其动手利用相关的其他漏洞。

    译者按:

    相比AWS bucket,国内使用的阿里云的bucket更为普遍,并且存在同样的问题。

    比如我们在火器资产里搜索

    然后我们去阿里云注册这些Bucket,并开放匿名读取功能。就可以成功劫持这些Bucket。如果还有其他网站引用了这些Bucket的资源,比如引用了js文件,那么攻击者可以上传恶意js文件,去盗取用户信息等。

END

(注:在火线提交有效漏洞的实名白帽子可加入火器内测群和知识星球“火线Zone”知识社群,符合要求请联系火小表妹【微信:hxanquan】申请加入。)

扫码解锁更多挖洞姿势

球分享

球点赞

球在看


文章来源: https://wiki.ioin.in/url/lE4R
如有侵权请联系:admin#unsafe.sh