SEV-Step:面向 AMD-SEV 的单步执行框架
密码学与安全
2023-07-28 v1
摘要
可信执行环境(TEE)日益普及与可用,对学术界的微架构攻击研究产生了显著影响,因为其强攻击者模型既增强了现有攻击向量,也引入了一些新向量。尽管许多工作聚焦于 Intel SGX,其他 TEE(如 AMD SEV)近来也开始受到更多关注。攻击 SGX 飞地的一种常用技术是单步执行,即利用系统的 APIC 定时器在每条指令后中断飞地。单步执行将后续微架构攻击的时间分辨率提升至最大。推动这一复杂攻击技术扩散的关键因素是 SGX-Step 框架,它提供了稳定的单步执行参考实现与相对简便的设置。本文中,我们证明 SEV 虚拟机同样可被可靠地单步执行。为针对 SEV 的进一步微架构攻击研究奠定基础,我们引入了可复用的 SEV-Step 框架。除可靠单步执行外,SEV-Step 还提供对常见攻击原语(如针对 SEV 的页错误追踪与缓存攻击)的便捷访问。所有功能均可在用户空间交互使用。我们通过针对 SEV 开展端到端缓存攻击来演示 SEV-Step 的能力,该攻击泄露了 LUKS2 加密磁盘的卷密钥。最后,我们首次表明 SEV 易受 Nemesis 式攻击,此类攻击可从 SEV 保护的虚拟机中提取关于单步执行指令的类型与操作数的信息。
引用
@article{arxiv.2307.14757,
title = {SEV-Step: A Single-Stepping Framework for AMD-SEV},
author = {Luca Wilke and Jan Wichelmann and Anja Rabich and Thomas Eisenbarth},
journal= {arXiv preprint arXiv:2307.14757},
year = {2023}
}