中文

海森堡防御:主动防御 SGX 飞地免受基于页表的侧信道攻击

密码学与安全 2017-12-25 v1

摘要

受保护模块架构(PMA)被提出以提供强隔离保证,即便在受损系统之上也是如此。不幸的是,英特尔 SGX——唯一公开可用的高端 PMA——已被证明仅提供有限的隔离。控制不可信页表的攻击者可通过观察飞地的页访问模式来获知飞地秘密。在真实环境中强化现有受保护模块架构以抵御侧信道攻击是一项极其困难的任务,因为系统软件(虚拟机监视器、操作系统等)需要对底层硬件保持完全控制。大多数最先进的方案提出一种被动防御,监测攻击迹象。这类方法遗憾的是无法检测最新攻击,存在误报,并且在检测到攻击时对飞地开发者造成极大负担。我们提出 Heisenberg,一种主动防御,提供针对基于页表的侧信道的完整保护。我们保证任何攻击要么被阻止,要么在任意敏感信息泄露之前被自动检测。因此,Heisenberg 总能安全地恢复飞地执行——即便攻击者仍存在于系统中。我们给出两种实现。Heisenberg-HW 依赖非常有限的硬件特性来防御基于页表的攻击。我们以 x86/SGX 平台为例,但同样的方法也可应用于将受保护模块架构移植到其他平台时。Heisenberg-SW 避免这些硬件修改并可立即应用。遗憾的是,其对英特尔事务同步扩展(TSX)的依赖在真实条件下可能导致显著性能开销。

关键词

引用

@article{arxiv.1712.08519,
  title  = {The Heisenberg Defense: Proactively Defending SGX Enclaves against Page-Table-Based Side-Channel Attacks},
  author = {Raoul Strackx and Frank Piessens},
  journal= {arXiv preprint arXiv:1712.08519},
  year   = {2017}
}