AEPIC Leak,一种泄露 Intel SGX 密钥并影响第 10、11 和 12 代的攻击

最近 有关的信息已发布 对英特尔处理器的新攻击,称为 «AEPIC 泄漏» (已在 CVE-2022-21233 下编目),这种新的攻击 导致敏感数据泄露 孤立的飞地 英特尔SGX (软件保护扩展)。

与 Spectre 类攻击不同,AEPIC Leak 中的泄漏 在不使用第三方恢复方法的情况下发生, 因为有关敏感数据的信息是通过获取反映在 MMIO(内存映射 I/O)内存页中的寄存器的内容来直接传输的。

在一般情况下, 攻击允许确定在第二级和最后一级缓存之间传输的数据,包括寄存器的内容和内存读取操作的结果,这些都是之前在同一个 CPU 内核上处理的。

I/O 地址扫描 基于 Sunny Cove 微架构的 Intel CPU 显示分配的记录内存中高级可编程中断本地控制器 (APIC) 他们不是
正确初始化。 因此,对这些寄存器的架构读取会从微架构返回陈旧数据,因此无法通过这些寄存器读取在 L2 和最后一级缓存之间传输的数据。

作为地址空间 I/O 只能由特权用户访问, ÆPIC Leak 针对英特尔的 TEE、SGX. ÆPIC 可以从运行在同一物理内核上的 SGX 飞地泄漏数据。 虽然 ÆPIC Leak 会在虚拟化环境中构成巨大威胁,但管理程序通常会让它们不会将本地 APIC 日志暴露给虚拟机,从而消除了基于云的场景中的威胁。

与之前针对 SGX 的瞬态执行攻击类似,ÆPIC Leak 在与兄弟超进程上的 enclave 并行执行时最有效。 但是,ÆPIC 泄漏不需要超线程,如果超线程不可用或禁用,也可能泄漏 enclave 数据。

我们介绍了两种过滤使用中数据的新技术,即 enclave 寄存器值和静态数据,即存储在 enclave 内存中的数据。 通过缓存行冻结,我们引入了一种技术,可以在不覆盖过时数据的情况下对缓存层次结构施加目标压力……
这些高速缓存行似乎仍然穿过高速缓存层次结构,但它们不会覆盖过时的数据。 为此,我们在安全状态区(SSA)中记录缓存行值的泄漏。

第二种技术,Enclave Shaking,利用操作系统安全交换 enclave 页面的能力。 通过交替交换 enclave 页面,缓存页面强制数据通过缓存层次结构,允许 ÆPIC 过滤值,甚至无需继续 enclave 执行。 我们结合利用 ÆPIC Leak
Cache Line Freezing 和 Enclave Shaking 从英特尔 IPP 库和英特尔 SGX 中提取 AES-NI 密钥和 RSA 密钥。 我们的攻击以 334,8 B/s 和 92,2% 的命中率泄漏 enclave 内存。

考虑到 攻击需要访问 APIC MMIO 的物理页面,即需要管理员权限, 该方法仅限于攻击管理员无法直接访问的 SGX 飞地.

研究人员开发了一套工具,可以在几秒钟内确定存储在 SGX 中的 AES-NI 和 RSA 密钥,以及英特尔 SGX 认证密钥和伪随机数生成器参数。 攻击代码发布在 GitHub 上。

英特尔宣布正在准备以更新的形式进行修复 添加对缓冲区刷新的支持并添加额外措施来保护飞地数据的微代码。

英特尔 SGX 的新版本 SDK 也已准备好进行更改,以防止数据泄露。 鼓励操作系统和管理程序开发人员使用 x2APIC 模式而不是传统 xAPIC 模式,后者使用 MSR 寄存器而不是 MMIO 来访问 APIC 寄存器。

该问题影响英特尔第 10 代、第 11 代和第 12 代 CPU(包括新的 Ice Lake 和 Alder Lake 系列),并且是由允许访问留在 CPU 上的未初始化数据的架构缺陷引起的。APIC(高级可编程中断控制器)记录来自以前的操作。

最后,如果你是 有兴趣了解更多关于它的信息, 您可以在中查看详细信息 以下链接。


成为第一个发表评论

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。