《苹果CPU惊现SLAP和FLOP漏洞!揭秘推测执行风险与应对策略》

《苹果CPU惊现SLAP和FLOP漏洞!揭秘推测执行风险与应对策略》

探索苹果CPU的推测执行漏洞,SLAP和FLOP攻击揭示了数据推测攻击的新风险。SLAP利用LAP预测错误,可导致越界数据访问,而FLOP通过LVP预测错误,可能泄露敏感信息。苹果已计划修复,用户需更新系统以保障安全。

Ze
Zen Huifer
January 30, 2025
5 min read

原文地址: https://predictors.fail/

1. SLAP:苹果CPU中的数据推测攻击解析

SLAP:苹果CPU中的数据推测攻击解析

SLAP(数据推测攻击通过负载地址预测在苹果硅上)是一种新型的推测执行攻击,它源于对数据依赖的优化,而非控制流依赖。具体来说,本研究发现,从M2/A15开始,苹果CPU配备了负载地址预测器(LAP),通过根据先前的内存访问模式猜测CPU接下来将从哪里检索数据,从而提高性能。

然而,如果LAP预测错误,它会导致CPU在推测执行中对越界数据进行任意计算,这些数据原本就不应该被访问。基于这一观察,本研究通过针对Safari网络浏览器的端到端攻击,展示了LAP的真实世界安全风险,其中无特权的远程攻击者可以恢复电子邮件内容和浏览行为。

此外,本研究还提出了FLOP(通过错误的负载输出预测打破苹果M3 CPU)攻击,该攻击源于最近苹果CPU对数据依赖结果的预测。在FLOP中,苹果的M3/A17系列及更新的CPU配备了负载值预测器(LVP),通过在CPU核心实际获取值之前,预测内存子系统在下次访问时将返回的数据值,从而提高数据依赖的性能。

如果LVP预测错误,CPU可以在推测执行中对错误数据进行任意计算。这可能导致绕过程序逻辑中对内存安全的检查,从而打开攻击面,泄露存储在内存中的机密信息。本研究通过在Safari和Chrome网络浏览器上执行任意内存读取原语,恢复位置历史、日历事件和信用卡信息,展示了LVP的危险性。

针对SLAP和FLOP攻击,苹果已计划在未来的安全更新中解决这些问题,因此,确保设备运行最新的操作系统并启用自动更新至关重要。此外,对于FLOP攻击,虽然存在可操作的缓解措施,但实施它需要软件供应商的补丁,用户无法自行完成。

2. Apple Silicon LAP预测机制与安全风险

Apple Silicon LAP预测机制与安全风险分析

SLAP(数据推测攻击通过Apple Silicon的加载地址预测)是一种新型的推测执行攻击,它源于优化数据依赖性,而非控制流依赖性。具体来说,研究表明,从M2/A15开始,Apple CPU配备了加载地址预测器(LAP),通过根据先前的内存访问模式猜测CPU将检索数据的下一个内存地址,从而提高性能。

然而,如果LAP预测错误,会导致CPU在推测执行过程中对越界数据进行任意计算,这些数据原本就不应该被访问。基于这一观察,研究人员通过针对Safari网络浏览器的端到端攻击,展示了LAP的实际安全风险。攻击者可以恢复电子邮件内容和浏览行为,这表明了LAP可能带来的严重后果。

FLOP(通过错误的加载输出预测破坏Apple M3 CPU)是另一种由最近Apple CPU预测数据依赖结果导致的推测执行攻击。这里,我们展示了Apple的M3/A17系列及更新的CPU配备了加载值预测器(LVP)。LVP通过猜测CPU核心下一次访问内存子系统将返回的数据值,在值实际可用之前提高数据依赖性的性能。

如果LVP预测错误,CPU可以在推测执行过程中对错误数据进行任意计算,这可能导致绕过程序逻辑中的关键内存安全检查,从而暴露内存中存储的秘密信息。研究人员通过在Safari和Chrome网络浏览器上执行这些攻击,以任意内存读取原语的形式展示了LVP的危险性,并恢复了位置历史、日历事件和信用卡信息。

针对SLAP和FLOP的防御措施包括:确保设备运行最新的操作系统和浏览器版本,定期更新软件和固件,以及启用自动更新功能。此外,用户应避免访问未知或不安全的网站,并谨慎处理敏感信息。通过这些措施,可以有效降低SLAP和FLOP攻击的风险。

3. 数据推测攻击SLAP:对苹果M系列CPU的影响

3. 数据推测攻击SLAP:对苹果M系列CPU的影响

SLAP(数据推测攻击通过负载地址预测在苹果硅上)是一种新型的推测执行攻击,它源于对数据依赖的优化,而非控制流依赖。具体而言,研究人员发现,从M2/A15开始,苹果CPU配备了负载地址预测器(LAP),该预测器通过根据先前的内存访问模式猜测CPU将检索数据的下一个内存地址来提高性能。

然而,如果LAP预测错误,它会导致CPU在推测执行中对越界数据进行任意计算,这些数据原本就不应该被访问。基于这一观察,研究人员通过针对Safari网络浏览器的端到端攻击展示了LAP的真实世界安全风险,其中未授权的远程攻击者可以恢复电子邮件内容和浏览行为。

SLAP攻击对苹果M系列CPU构成了严重威胁,尤其是M2/A15及以后的型号。由于LAP的错误预测,攻击者可能能够访问敏感数据,如登录凭证、位置历史和信用卡信息。为了应对这一威胁,苹果公司计划在未来的安全更新中解决这些问题,因此,用户应确保设备运行最新的操作系统版本,并启用自动更新功能。

此外,研究人员还提出了FLOP(通过虚假负载输出预测破坏苹果M3 CPU)攻击,该攻击利用了苹果M3/A17及以后CPU中的负载值预测器(LVP)。FLOP攻击可能导致CPU在推测执行中对错误数据进行计算,从而绕过程序逻辑中的关键检查,并暴露内存中存储的机密信息。

为了保护用户免受SLAP和FLOP攻击,建议用户采取以下措施:

  1. 确保设备运行最新的操作系统版本。
  2. 启用自动更新功能,以及时获取安全补丁。
  3. 避免访问不可信的网站,并保持对网络安全的警惕。

通过采取这些措施,用户可以降低遭受SLAP和FLOP攻击的风险,并保护自己的设备和个人信息。

4. SLAP攻击案例:Safari浏览器中的邮件内容泄露

SLAP攻击案例:Safari浏览器中的邮件内容泄露

SLAP(数据推测攻击通过负载地址预测在Apple Silicon上)是一种新型的推测执行攻击,它源于对数据依赖的优化,而不是控制流依赖。具体来说,SLAP攻击利用了Apple Silicon处理器中的负载地址预测器(LAP),该预测器通过分析之前的内存访问模式来猜测CPU下一次检索数据的内存地址,从而提高性能。

然而,如果LAP预测错误,它会导致CPU在推测执行过程中对超出范围的数据进行任意计算,这些数据原本不应该被访问。基于这一观察,研究人员通过针对Safari浏览器的端到端攻击,展示了LAP的实际安全风险。在这个攻击中,未授权的远程攻击者可以恢复电子邮件内容和浏览行为。

SLAP攻击的原理是,攻击者通过训练LAP,使其预测错误的内存地址,从而在推测执行过程中访问敏感数据。例如,研究人员通过在WebKit(Safari的浏览引擎)中运行的沙盒JavaScript代码训练M3 CPU的LVP,当鼠标光标悬停在攻击者的网页上时,攻击者可以在新窗口中打开Proton Mail的收件箱,但使用相同的过程来渲染收件箱。这会将收件箱内容带入地址空间,使其可通过沙盒逃逸访问。最后,攻击者利用LVP构建任意读取原语,从该地址空间中恢复发送者和主题行。

此外,SLAP攻击还可以通过其他方式实现,例如在LAP错误猜测的内存地址处放置指向字符串字符的指针,然后训练和激活LAP,从而恢复秘密字符串。

SLAP攻击对安全构成了严重威胁,因为它可以泄露敏感数据,如电子邮件内容和浏览行为。为了防御SLAP攻击,用户应确保其设备运行最新的操作系统更新,并启用自动更新功能。同时,软件供应商也应尽快发布补丁来修复相关漏洞。

5. SLAP与FLOP:揭秘苹果CPU推测执行漏洞

SLAP与FLOP:揭秘苹果CPU推测执行漏洞

SLAP(Data Speculation Attacks via Load Address Prediction on Apple Silicon)和FLOP(Breaking the Apple M3 CPU via False Load Output Predictions)是两种针对苹果CPU的推测执行攻击。SLAP攻击源于优化数据依赖,而FLOP攻击则源于预测数据依赖的结果。

SLAP攻击:苹果CPU从M2/A15开始配备了Load Address Predictor(LAP),通过猜测CPU将检索数据的下一个内存地址来提高性能。然而,如果LAP预测错误,CPU将在推测执行中执行任意计算,对超出范围的数据进行操作。研究人员通过在Safari浏览器上进行端到端攻击,展示了LAP的潜在安全风险,攻击者可以恢复电子邮件内容和浏览行为。

FLOP攻击:苹果M3/A17系列及更新的CPU配备了Load Value Predictor(LVP),通过猜测CPU在下次访问内存子系统时将返回的数据值来提高性能。如果LVP预测错误,CPU将在推测执行中执行任意计算,绕过程序逻辑中的关键检查,从而泄露存储在内存中的机密信息。研究人员通过在Safari和Chrome浏览器上执行攻击,展示了LVP的危险性,攻击者可以恢复位置历史、日历事件和信用卡信息。

受影响的苹果设备包括所有2022年及以后发布的Mac笔记本电脑、2023年及以后发布的Mac台式机、所有2021年9月及以后发布的iPad Pro、Air和Mini型号、所有2021年9月及以后发布的iPhone。

为了防御SLAP和FLOP攻击,用户应确保设备运行最新的操作系统和软件更新。苹果公司计划在即将推出的安全更新中解决这些问题。