Skip to main content
QUICK REVIEW

[论文解读] CacheZoom: How SGX Amplifies The Power of Cache Attacks

Daniel Moghimi, Gorka Irazoqui|arXiv (Cornell University)|Mar 20, 2017
Security and Verification in Computing参考文献 9被引用 27
一句话总结

CacheZoom 是一种新颖的侧信道攻击,利用 Intel SGX 对硬件隔离的依赖,通过 L1 缓存的 Prime+Probe 攻击,对可信执行环境中的内存访问实现高分辨率的缓存监控。通过利用操作系统的任务调度控制和频繁的任务切换,该攻击仅需 10 次测量即可恢复 T 表实现中的 AES 密钥,表明即使使用了如预取等防护措施,SGX 仍无法抵御细粒度的缓存侧信道攻击。

ABSTRACT

In modern computing environments, hardware resources are commonly shared, and parallel computation is widely used. Parallel tasks can cause privacy and security problems if proper isolation is not enforced. Intel proposed SGX to create a trusted execution environment within the processor. SGX relies on the hardware, and claims runtime protection even if the OS and other software components are malicious. However, SGX disregards side-channel attacks. We introduce a powerful cache side-channel attack that provides system adversaries a high resolution channel. Our attack tool named CacheZoom is able to virtually track all memory accesses of SGX enclaves with high spatial and temporal precision. As proof of concept, we demonstrate AES key recovery attacks on commonly used implementations including those that were believed to be resistant in previous scenarios. Our results show that SGX cannot protect critical data sensitive computations, and efficient AES key recovery is possible in a practical environment. In contrast to previous works which require hundreds of measurements, this is the first cache side-channel attack on a real system that can recover AES keys with a minimal number of measurements. We can successfully recover AES keys from T-Table based implementations with as few as ten measurements.

研究动机与目标

  • 调查尽管采用硬件隔离,Intel SGX 是否仍易受缓存侧信道攻击影响。
  • 开发一种实用的侧信道攻击,实现在监控可信执行环境内存访问时的高时间与空间分辨率。
  • 评估常见防护措施(如预取和 S 盒优化)对 SGX 可信环境中基于缓存的密钥恢复攻击的防护效果。
  • 证明即使经过优化的 AES 实现,此前被认为具有抗性,仍在此前 SGX 的威胁模型下存在漏洞。
  • 展示 SGX 环境中操作系统的访问权限与任务调度机制,可被用于实现前所未有的侧信道泄露收集精度。

提出的方法

  • CacheZoom 使用修改后的操作系统调度器,在精确的时间间隔中断受害可信执行环境,从而实现对内存访问监控的高分辨率时间控制。
  • 它在 L1 缓存上实施 Prime+Probe 攻击,以检测可信执行环境中发生的每一次内存访问,利用攻击者与受害者可被调度到同一核心的特性。
  • 该攻击利用操作系统对任务调度和未加密二进制代码的访问能力,精确关联缓存访问模式与加密操作。
  • 通过分析缓存命中与未命中的时间与频率,CacheZoom 重建了 AES 加密例程中 S 盒查找的序列。
  • 该工具采用一种考虑乱序执行与重排序缓冲区(ROB)效应的泄露模型,对因未完全退休导致的重复访问观测进行调整。
  • 它结合统计分析与对 AES 算法结构的了解,从观测到的缓存访问模式中推断出密钥字节。

实验结果

研究问题

  • RQ1侧信道攻击是否能在 Intel SGX 可信执行环境中实现高时间与空间分辨率的内存访问监控?
  • RQ2常见防护措施(如预取和小内存占用实现)在多大程度上能有效防止 SGX 环境中基于缓存的密钥恢复攻击?
  • RQ3是否可能在真实 SGX 环境中,使用少于 100 次测量,从 T 表和 S 盒实现中恢复 AES 密钥?
  • RQ4乱序执行与 ROB 行为如何影响 SGX 环境中缓存侧信道泄露模型的可靠性与准确性?
  • RQ5是否可以利用操作系统的控制权与任务切换机制,提升对 SGX 可信执行环境的缓存侧信道攻击精度?

主要发现

  • CacheZoom 仅需 10 次测量即可成功从基于 T 表的实现中恢复 AES 密钥,远少于以往攻击所需的次数。
  • 即使此前被认为具有抗性的 S 盒实现 AES,也可通过数百次观测被攻破,实现完整密钥恢复。
  • 预取作为一种旨在防止缓存侧信道攻击的防护措施,反而对攻击者有利,因为它使轮次边界在缓存追踪中更易区分。
  • 即使可信执行环境使用小内存占用或优化访问模式,该攻击仍具有效性,因为操作系统仍可调度攻击者以监控每一次访问。
  • 研究发现,通过数千次观测可恢复 12 个密钥字节,其余字节可通过暴力破解或倒数第二轮泄露信息恢复。
  • 识别出一系列易受 CacheZoom 攻击的密码学库,包括 OpenSSL、WolfCrypt、NSS、Nettle、Libtomcrypt、Libgcrypt 和 MbedTLS,这些库均包含易受攻击的 T 表或 S 盒实现。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。