您的位置  > 互联网

谷歌研发新CPU攻击方法影响多个英特尔微处理器

安全漏洞

今天,谷歌的一位高级研究科学家设计了一种新的 CPU 攻击方法,该方法利用影响多个英特尔微处理器系列的漏洞,并允许窃取共享同一台计算机的用户的密码、加密密钥和数据。 私人数据,例如电子邮件、消息或银行信息。

该漏洞编号为 CVE-2022-40982,是一个瞬时执行侧通道问题,影响所有基于 Ice Lake 的英特尔微架构的处理器。

攻击者可以利用此安全漏洞提取受软件防护扩展 (SGX) 保护的敏感信息。 SGX是Intel基于硬件的内存加密技术,它将内存中的代码和数据与系统上的软件分开。

SGX 目前仅在服务器中央处理单元上受支持,并为连操作系统都无法访问的软件提供可信的隔离环境。

收集秘密数据

一位发现该缺陷并向英特尔报告的谷歌研究人员表示,他的崩溃攻击技术利用了“在推测执行期间暴露内部向量寄存器文件的内容”的指令。

它是Intel处理器内存优化的一部分,用于加速对内存中分散数据的访问。 然而,正如今天发表的一篇技术论文中所解释的那样:“该指令似乎使用了在对等 CPU 线程之间共享的临时缓冲区,该缓冲区将数据临时转发到属于不同进程的后续依赖指令,并在同一核心上运行执行。”

开发了两种攻击技术,一种是收集数据采样(GDS),另一种是收集值注入(GVI),它将GDS与2020年公开的负载值注入(LVI)技术相结合。

通过使用 GDS 技术,可以窃取受控虚拟机外部的另一个虚拟机 (VM) 上的 AES 128 位和 256 位加密密钥,每个虚拟机都位于同一 CPU 核心的同级线程上。

研究人员能够在 10 秒内一次窃取 8 个字节,最终成功窃取 AES 轮密钥并将它们组合起来破解加密。 对于 100 个不同的密钥,AES-128 具有 100% 的首次攻击成功率。 针对 AES-256 的首次攻击成功率为 86%。

研究人员指出,失败的尝试意味着恢复整个密钥需要多次运行攻击,因为主密钥的数据在 10 秒内不会频繁出现。

除了加密密钥之外,还提供了一种 GDS 攻击变体,可以窃取静态的任意数据,因为在这两种情况下,CPU 都会将此信息预取到 SIMD 寄存器缓冲区中。

威胁评估和微代码性能影响

指出,该攻击要求攻击者和受害者位于同一物理处理器核心上。 然而,恶意软件等本地程序有可能利用此漏洞窃取敏感信息。

英特尔去年 8 月发现了 /GDS 漏洞,与其合作研究该漏洞,目前正在提供微代码更新以缓解该问题。

有关该漏洞的详细信息被保密了近一年,以便原始设备制造商 (OEM) 和通信服务提供商 (CSP) 有时间测试和验证解决方案并为其客户准备必要的更新。

Intel告诉我们,该问题不影响Alder Lake、Lake和Lake,但会影响以下三个系列处理器:

英特尔修复和响应工程副总裁 Vivek 认为,试图在受控实验室环境之外利用这一点将是一项复杂的工作。

英特尔在一份声明中表示,客户可以查看该公司提供的风险评估指南,并决定通过 Linux 和虚拟机管理器 (VMM) 中的可用机制禁用微代码缓解。

做出此决定可能是因为担心 /GDS 缓解措施可能导致性能问题,也可能是因为该问题不会对环境构成威胁。

英特尔向客户提供了威胁评估和性能分析信息,结论是该问题在某些环境中的影响可能很小。 在频繁执行收集指令的情况下会产生潜在影响,这是高性能计算 (HPC) 环境所特有的。

然而,该芯片制造商表示,由于攻击的条件和这些环境的典型配置,该问题可能不会被视为高性能计算环境中的威胁。

例如,攻击者需要与目标在同一物理核心上运行,并且能够运行不受信任的代码等,这在这些环境中并不常见。

基于软件的缓解措施

消除 /GDS 攻击的风险需要重新设计硬件。 虽然存在基于软件的替代方案,但它们带有警告,并且只能提供问题的临时解决方案。

提出了四种这样的替代方案,其中三种具有明显的缺点:

然而,创建此类工具并不容易,因为它们需要更好地覆盖硬件和支持的指令,考虑到硬件的复杂性和专有障碍,这是一项具有挑战性的任务。

这位研究人员发布了代码,以便其他人可以查看和尝试。 此外,还有计划在美国黑帽安全会议上讨论漏洞和攻击技术。

英特尔已发布 CVE-2022-40982 安全公告,目前严重级别为 6.5。 基于该漏洞,该公司还提供了技术文档,以及有关该漏洞的采访。

安全圈

收集圈内热点,关注网络安全

实时信息触手可及!