[论文解读] TeleHammer : A Stealthy Cross-Boundary Rowhammer Technique
本文提出 TeleHammer,一种新型行翻转攻击,通过利用硬件特性跨内存边界对受害者行进行翻转,从而绕过仅依赖软件的防御机制——具体而言,通过利用页表转换机制,在受保护的内核级页表项(PTE)中诱导位翻转。与传统的 PeriHammer 攻击不同,TeleHammer 在无需直接访问翻转行的情况下,可在用户-内核边界间隐蔽执行,从而在加固系统上实现权限提升。
Rowhammer exploits frequently access specific DRAM rows (i.e., hammer rows) to induce bit flips in their adjacent rows (i.e., victim rows), thus allowing an attacker to gain the privilege escalation or steal the private data. A key requirement of all such attacks is that an attacker must have access to at least part of a hammer row adjacent to sensitive victim rows. We refer to these rowhammer attacks as PeriHammer. The state-of-the-art software-only defences against PeriHammer attacks is to make such hammer rows inaccessible to the attacker. In this paper, we question the necessity of the above requirement and propose a new class of rowhammer attacks, termed as TeleHammer. It is a paradigm shift in rowhammer attacks since it crosses memory boundary to stealthily rowhammer an inaccessible row by virtue of freeloading inherent features of modern hardware and/or software. We propose a generic model to rigorously formalize the necessary conditions to initiate TeleHammer and PeriHammer, respectively. Compared to PeriHammer, TeleHammer can defeat the advanced software-only defenses, stealthy in hiding itself and hard to mitigate. To demonstrate the practicality of TeleHammer and its advantages, we have created a TeleHammer's instance, called PThammer, which leverages the address-translation feature of modern processors. We observe that a memory access can induce a fetch of a Level-1 page-table entry (PTE) from memory and thus cause hammering the PTE once. To achieve a high hammer-frequency, we flush relevant TLB and cache effectively and efficiently. To this end, PThammer can cross user-kernel boundary to rowhammer rows occupied by Level-1 PTEs and induce bit flips in adjacent victim rows that also host Level-1 PTEs. We have exploited PThammer to defeat advanced software-only defenses in bare-metal systems.
研究动机与目标
- 挑战‘行翻转攻击需要直接访问翻转行’这一假设。
- 解决仅依赖软件的防御机制所存在的局限性,即假设翻转行与攻击者隔离。
- 设计并实现一类新型行翻转攻击——TeleHammer,利用现有硬件机制在内存边界间运作。
- 证明可通过利用现代处理器中的地址转换特性,使高级仅依赖软件的防御机制失效。
提出的方法
- 通过通用模型形式化定义 TeleHammer 和 PeriHammer 攻击的条件,以区分其操作边界。
- 利用现代处理器中的地址转换机制,触发内存访问以获取一级页表项(PTE),从而在相邻的 PTE 行上诱导行翻转效应。
- 刷新 TLB 和缓存,以提高翻转频率并确保在受害者行上稳定诱导位翻转。
- 将内核内存中的一级 PTE 作为受害者行,这些 PTE 通常受用户空间访问保护。
- 利用内存访问的固有“免费加载”行为及页表遍历机制,在无需直接访问翻转行的情况下启动行翻转。
- 实现 PThammer 作为概念验证实例,证明在裸机系统上可实现跨用户-内核边界的行翻转攻击。
实验结果
研究问题
- RQ1能否通过利用硬件地址转换特性,在无需直接访问翻转行的情况下执行行翻转攻击?
- RQ2如何利用跨内存边界的硬件诱导行翻转效应,绕过现有的仅依赖软件的防御机制?
- RQ3在现代系统中,隐蔽的跨边界行翻转攻击成功所需的必要条件是什么?
- RQ4通过缓存和 TLB 管理,位翻转的频率和可靠性可提升到何种程度?
- RQ5能否通过间接行翻转技术针对内核保护的内存区域(如一级 PTE)进行攻击?
主要发现
- TeleHammer 通过利用页表查找期间触发的内存访问模式,成功在攻击者无法直接访问的受害者行上诱导出位翻转。
- PThammer 原型证明,仅使用标准处理器功能即可实现跨用户-内核边界的行翻转攻击,无需硬件修改。
- 通过刷新 TLB 和缓存,PThammer 实现了足够高的翻转频率,足以可靠地在相邻的 PTE 行上诱导位翻转。
- 该攻击成功绕过了假设翻转行与用户空间隔离的高级仅依赖软件的防御机制。
- 该方法利用现有的、免费的硬件机制实现隐蔽性,从而绕过传统缓解策略。
- 结果证实,即使传统攻击向量被阻断,现代系统仍易受行翻转攻击的影响。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。