Skip to main content
QUICK REVIEW

[论文解读] DRAMA: Exploiting DRAM Addressing for Cross-CPU Attacks

Peter Pessl, Daniel Gruss|arXiv (Cornell University)|Nov 27, 2015
Security and Verification in Computing参考文献 22被引用 51
一句话总结

本文提出 DRAMA,一种新型跨 CPU 侧通道与隐蔽通道攻击,通过利用未文档化的 DRAM 地址映射,在无共享内存的情况下访问跨处理器的共享 DRAM 行缓冲区。通过物理探测或基于软件的定时分析逆向工程内存映射,DRAMA 实现了最高 2 Mbps 的隐蔽通道,以及一种可定位并以缓存攻击级别精度监控内存访问的侧通道攻击,即使在 DDR4 系统上也适用,展示了在隔离云环境中的实际 Rowhammer 攻击。

ABSTRACT

In cloud computing environments, multiple tenants are often co-located on the same multi-processor system. Thus, preventing information leakage between tenants is crucial. While the hypervisor enforces software isolation, shared hardware, such as the CPU cache or memory bus, can leak sensitive information. For security reasons, shared memory between tenants is typically disabled. Furthermore, tenants often do not share a physical CPU. In this setting, cache attacks do not work and only a slow cross-CPU covert channel over the memory bus is known. In contrast, we demonstrate a high-speed covert channel as well as the first side-channel attack working across processors and without any shared memory. To build these attacks, we use the undocumented DRAM address mappings. We present two methods to reverse engineer the mapping of memory addresses to DRAM channels, ranks, and banks. One uses physical probing of the memory bus, the other runs entirely in software and is fully automated. Using this mapping, we introduce DRAMA attacks, a novel class of attacks that exploit the DRAM row buffer that is shared, even in multi-processor systems. Thus, our attacks work in the most restrictive environments. First, we build a covert channel with a capacity of up to 2 Mbps, which is three to four orders of magnitude faster than memory-bus-based channels. Second, we build a side-channel template attack that can automatically locate and monitor memory accesses. Third, we show how using the DRAM mappings improves existing attacks and in particular enables practical Rowhammer attacks on DDR4.

研究动机与目标

  • 解决在禁用共享内存且虚拟机在不同物理 CPU 上隔离的云环境中缺乏有效跨 CPU 侧通道与隐蔽通道攻击的问题。
  • 逆向工程多处理器系统中物理内存地址到 DRAM 通道、行和 bank 的未文档化映射关系。
  • 利用跨处理器共享的 DRAM 行缓冲区作为新型侧通道原语,实现高精度内存访问监控与隐蔽通信。
  • 通过利用逆向工程的 DRAM 地址映射,演示对 DDR4 内存的实际 Rowhammer 攻击。
  • 表明现有对策如 TRR 和内存访问限制对所提攻击无效。

提出的方法

  • 通过探测内存总线的物理探针,提取内存事务中的定时与访问模式,逆向工程 DRAM 地址映射。
  • 开发一种完全自动化的纯软件方法,通过测量不同地址访问模式下的定时差异,推断 DRAM 映射关系。
  • 利用逆向工程的映射关系,针对多处理器系统中跨 CPU 核心和内存模块持续存在的共享 DRAM 行缓冲区。
  • 通过受控内存访问操纵行缓冲区状态,实现高带宽隐蔽通道,最高可达 2 Mbps 吞吐量。
  • 设计一种侧通道模板攻击,利用 DRAM 行缓冲区行为识别并监控内存访问模式,精度与 Flush+Reload 相当。
  • 通过使用 DRAM 地址映射高效定位易受攻击的行,将现有 Rowhammer 攻击扩展至 DDR4。

实验结果

研究问题

  • RQ1能否通过利用未文档化的 DRAM 地址映射,在无共享内存的情况下构建跨处理器的高速隐蔽通道?
  • RQ2仅使用定时信息且无共享内存,是否可能实现对跨处理器内存访问的精确侧通道监控?
  • RQ3作为跨 CPU 共享组件的 DRAM 行缓冲区,是否可在隔离的多处理器系统中作为侧通道原语被利用?
  • RQ4通过逆向工程的 DRAM 地址映射,是否能实现在启用 TRR 的 DDR4 内存上的实际 Rowhammer 攻击?
  • RQ5现有对策如 TRR 和访问限制在防御此类攻击时存在哪些局限性?

主要发现

  • 实现了最高达 2 Mbps 容量的隐蔽通道,相比现有基于内存总线的隐蔽通道提升了 3 到 4 个数量级。
  • 基于软件的逆向工程方法成功在多个平台(包括消费级 PC、双 CPU 服务器和最新智能手机)上映射了 DRAM 地址。
  • 在支持 TRR 的 DDR4-2133 内存模块上,作者观察到 16 秒内发生位翻转,且每 12 秒发生一次,表明 TRR 并不能完全防止 Rowhammer 攻击。
  • 侧通道攻击的精度与 Flush+Reload 相当,可在无共享内存的情况下实现内存访问的自动检测与监控。
  • 通过使用逆向工程的地址映射,DRAMA 框架即使在启用 TRR 的情况下,也能在 DDR4 上实现实际的 Rowhammer 攻击,精准定位易受攻击的行。
  • 即使攻击者无法访问共享内存或依赖缓存一致性,攻击依然有效,证明 DRAM 行缓冲区是可行的跨 CPU 侧通道。

更好的研究,从现在开始

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

无需绑定信用卡

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