图片
导语:学术研究人员开发出一种新的推测性侧信道攻击,名为iLeakage,可在所有最新的Apple设备上运行,并从Safari浏览器中提取敏感信息。
图片
iLeakage攻击绕过了所有浏览器供应商实施的标准侧信道保护措施,是一种无定时器的Spectre攻击。来自乔治亚理工学院、密歇根大学和鲁尔大学的学术团队开发了iLeakage,他们通过实现一种基于竞争条件的无定时器和架构不可知方法,绕过了Safari的侧信道防护措施。
他们通过击败苹果在其浏览器中实施的侧信道保护措施,如低分辨率定时器、压缩35位寻址和值污染,实现了这一点。同时,他们还绕过了Safari的站点隔离策略,该策略根据有效顶级域名(eTLD)加一个子域将网站分隔到不同的地址空间中。
研究人员使用了一种新技术,利用JavaScript的window.open API,使攻击者页面与任意受害者页面共享相同的地址空间。通过使用推测类型混淆来绕过苹果的压缩35位寻址和值污染对策,研究人员可以从目标页面泄漏敏感数据,如密码和电子邮件。
攻击的概念验证代码是使用JavaScript和WebAssembly编写的,这两种编程语言用于提供动态Web内容。
iLeakage攻击依赖于对Apple Silicon芯片(M1、M2)中的推测执行的利用,CPU的预测执行会在尚不知道是否需要执行的情况下执行最有可能需要的任务。这种机制在所有现代CPU中都存在,可以显著提高性能;然而,设计缺陷可能导致数据泄漏,正如近六年前披露的Meltdown和Spectre攻击所证明的那样。
研究人员发表了一篇技术论文,详细介绍了该攻击以及绕过苹果缓解措施所使用的各种方法。
然而,研究人员强调,该攻击难以实施,并需要对基于浏览器的侧信道攻击和Safari实现有深入的了解。
苹果于2022年9月12日私下向苹果报告了iLeakage漏洞,并为macOS开发了以下缓解措施:
打开终端并运行“defaults write com.apple.Safari IncludeInternalDebugMenu 1”以启用 Safari 的隐藏调试菜单。
打开 Safari 并前往新可见的“调试”菜单。
选择“WebKit 内部功能”
滚动并激活“打开跨站点窗口时交换进程”