苹果M和A系列CPU新型侧信道攻击:FLOP和SLAP
主要观点
乔治亚理工学院和波鸿鲁尔大学的研究人员发现并演示了两种针对苹果M和A系列CPU的新型侧信道攻击,分别命名为FLOP和SLAP。这些攻击在用户使用Chrome和Safari浏览器访问热门网站时,可能导致敏感信息泄露。
关键信息
- FLOP(通过错误加载输出预测破坏苹果M3 CPU)和SLAP(通过加载地址预测在苹果芯片上进行数据推测攻击)两种攻击可影响2021年及之后的Mac、iPhone和iPad设备。
- SLAP影响使用M2/A15及更新CPU并配备加载地址预测器(LAP)的设备,而FLOP影响使用M3/A17及更新CPU并配备加载值预测器(LVP)的设备。
- 这些攻击打破了浏览器内置的隔离保护机制,使得一个网页可以读取另一个网页的内容,可能导致敏感数据泄露。
- 由于这两种攻击基于微架构,因此不会留下任何痕迹。
重要细节
攻击原理
- 加载地址预测器(LAP):根据先前的访问模式猜测CPU接下来要访问的内存地址。如果预测的地址被缓存,CPU会从预测地址而不是程序原本意图的地址进行推测性加载。
- 加载值预测器(LVP):在数据值实际可用之前,猜测下一次内存访问将返回的数据值。如果值是常量,CPU可以打开一个推测窗口,而不是等待RAW依赖解决后的结果。
- 当LAP或LVP的预测错误时,CPU可能在推测执行过程中对越界(SLAP)或错误(FLOP)的数据进行任意计算,从而导致数据泄露。
攻击演示
- SLAP:研究人员在Safari上演示了端到端攻击,未授权攻击者可以恢复电子邮件内容和浏览历史。
- FLOP:研究人员展示了攻击者如何通过任意读取原语从Safari和Chrome中恢复位置历史、日历事件和信用卡信息。
漏洞披露与修复
- 研究人员已向苹果公司披露了这些漏洞,但苹果尚未公布修复时间表。
- 尽管存在可行的缓解措施,但需要苹果在其操作系统中包含补丁。
浏览器差异
- FLOP影响Chrome和Safari,而SLAP仅影响Safari。这是因为Safari未在“相同浏览上下文组”内实施隔离,而Firefox和Chrome则已实现。
技术背景
- 加载值预测器的有效性与ARM架构的固定长度指令密切相关,这使得无法在指令本身中存储数据。
- 研究人员认为,随着摩尔定律的衰退,更多奇特的微架构优化可能导致LAPs不仅限于苹果。
相关背景
- 侧信道漏洞是一大类漏洞,利用算法的实现方式,通过时间信息、功耗、电磁泄漏等方式泄露敏感数据。
- 近年来,包括Spectre和Meltdown在内的多个重大侧信道漏洞引发了广泛关注。
结论
FLOP和SLAP攻击揭示了苹果M和A系列CPU在微架构优化中的潜在安全风险。尽管目前尚未确认其他CPU是否受影响,但随着微架构优化的复杂性增加,类似漏洞可能会在其他处理器中出现。苹果需要尽快发布修复补丁,以确保用户数据的安全。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。