点击上方蓝字“Ots安全”一起玩耍
介绍
在这篇文章中,我将分享我在 iCloud 中发现的一个漏洞,该漏洞可能允许攻击者在另一个 iCloud 帐户中执行恶意代码。我们将看到如何利用攻击以及攻击者可以在受害者的帐户中做什么。
苹果和 iCloud
在德ç烬2020年,我遇到了一组研究人员谁砍死苹果3个月的惊人的鸣叫。在推文中分享的博客文章中,解释了 Apple 域中的 55 个漏洞。我花了很长时间阅读很棒的内容,然后我决定也尝试破解 Apple。
我的策略是专注于一个目标:iCloud。我一周的时间有限,因此我决定探索 iCloud 以了解功能、子域之间的交互并确定一些可能的使用方法。
XSS 漏洞
被利用的漏洞是在 iCloud Drive 中创建文件或文件夹过程中的跨站脚本。
简而言之,跨站脚本(又名 XSS)是一种安全漏洞,允许攻击者在受害者的浏览器上执行恶意代码。有不同的方法可以做到这一点,在BugCrowd 的这篇博文中,您可以找到有关此类攻击的很好的解释。
系统上下文
在 iCloud Drive 中,我们可以上传我们的文件并将它们整理到文件夹中。
这些文件夹和文件可以与其他 iCloud 用户使用他们的电子邮件共享,或者我们可以简单地将文件/文件夹公开并将其链接共享给任何有兴趣访问它的 iCloud 用户。
在这里,共享功能在攻击环境中很重要,因为它允许攻击者以这种方式与受害者共享 XSS。
XSS…
每个文件夹或文件都有一个图标,我们可以在其中查看详细信息和编辑名称
当小窗口打开时,连同其他信息,一个 HTML span 标签被注入到 DOM 中。
由于服务器配置错误,攻击者将能够在目录名称中包含 HTML 标签,并将其加载到DOM 中。
拥有在 DOM 中插入新元素的能力,攻击者将能够在页面上执行 javascript:
概念证明
在 iCloud Drive,他们有一个严格的CSP,当时不允许我使用脚本标签或从 *.icloud.com 和 *.apple.com 请求域,但我能够使用事件处理程序来执行 javascript来自 XSS。
一开始,我花了一些时间思考 XSS 可以做什么,我找到了 XSS 以及分享它的方式。我决定就此打住,并在其他人之前立即与 Apple 分享。
几天后,我向 Apple 发送了另一份报告以附加到票证中。
在最终的 POC 中,攻击者与受害者共享一个文件夹,文件夹名称为:
请编辑目录名称
<img src onerror="(function hacking(){//BAD JS STUFF}())"/>
在 Javascript 函数中,我添加了一个代码来执行一些对 iCloud API 的请求,以检索所有文件/文件夹 ID 并将它们移动到攻击者共享的文件夹中,从而允许攻击者访问所有受害者的文件。
最后,受害者的所有文件都会被 XSS 自动移动到该文件夹中,这就是本文开头对图像的解释。
需要考虑的要点
在这种情况下,只有当受害者接受共享文件夹并决定打开小窗口时,XSS 才会被攻击者完全利用。如果小窗口没有打开,XSS 将不会被执行。
除此之外,当攻击者共享恶意文件夹时,受害者可以编辑名称并删除 XSS,但完成后,更改仅发生在受害者一侧。基于此,攻击者将能够与许多受害者共享同一个恶意文件夹,并可以访问所有打开小窗口的受害者的文件。
最后但并非最不重要的是,一旦攻击者能够看到共享文件夹中的受害者文件,攻击者就能够停止共享文件夹,窃取受害者的所有文件
最后,XSS 会将受害者的所有文件/文件夹移动到共享文件夹中,攻击者可以通过执行数据窃取方法来移除对受害者的访问权限。
原文始发于微信公众号(Ots安全):【渗透测试】我如何通过入侵 iCloud 获得 9000 美元
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论