Skip to main content
QUICK REVIEW

[论文解读] SgxPectre Attacks: Leaking Enclave Secrets via Speculative Execution.

Guoxing Chen, Sanchuan Chen|arXiv (Cornell University)|Feb 25, 2018
Security and Verification in Computing参考文献 61被引用 85
一句话总结

该论文提出SgxPectre攻击,利用CPU中的推测执行漏洞,从Intel SGX飞地泄露秘密。通过外部程序操控分支预测,攻击者可诱导推测执行,改变控制流,导致可观察的缓存状态变化,从而泄露飞地内存或寄存器内容,破坏SGX在常见运行时环境下的机密性保证。

ABSTRACT

This paper presents SgxPectre Attacks that exploit the recently disclosed CPU bugs to subvert the confidentiality of SGX enclaves. Particularly, we show that when branch prediction of the enclave code can be influenced by programs outside the enclave, the control flow of the enclave program can be temporarily altered to execute instructions that lead to observable cache-state changes. An adversary observing such changes can learn secrets inside the enclave memory or its internal registers, thus completely defeating the confidentiality guarantee offered by SGX. To demonstrate the practicality of our SgxPectre Attacks, we have systematically explored the possible attack vectors of branch target injection, approaches to win the race condition during enclave's speculative execution, and techniques to automatically search for code patterns required for launching the attacks. Our study suggests that any enclave program could be vulnerable to SgxPectre Attacks since the desired code patterns are available in most SGX runtimes (e.g., Intel SGX SDK, Rust-SGX, and Graphene-SGX).

研究动机与目标

  • 调查推测执行漏洞是否可被利用以破坏Intel SGX飞地的机密性保证。
  • 识别外部程序影响飞地分支预测并触发推测执行的实际攻击向量。
  • 开发在飞地环境中赢得推测执行期间竞争条件的技术。
  • 自动发现SGX运行时中可被利用的代码模式,以实现通过缓存侧信道泄露秘密。
  • 评估现有SGX运行时的漏洞面,包括Intel SGX SDK、Rust-SGX和Graphene-SGX。

提出的方法

  • 利用分支目标注入技术操纵分支预测器,将推测执行重定向至SGX飞地内部。
  • 设计竞争条件技术,以可靠地观察推测执行期间的缓存状态变化。
  • 自动搜索SGX运行时中可被利用的代码模式,使推测执行能通过缓存侧信道泄露秘密。
  • 使用外部程序控制分支预测器,诱导推测执行路径访问敏感数据。
  • 通过侧信道分析监控缓存状态变化,从飞地内存或寄存器中提取秘密。
  • 在多个SGX运行时上验证攻击可行性,以评估其广泛影响。

实验结果

研究问题

  • RQ1尽管SGX具有隔离保证,推测执行漏洞是否仍可被利用以从飞地中泄露秘密?
  • RQ2SGX运行时中的哪些特定代码模式会导致推测执行引发可观测的侧信道泄露?
  • RQ3外部程序如何影响飞地分支预测,以触发具有可控结果的推测执行?
  • RQ4可采用哪些技术赢得推测执行与实际执行之间的竞争条件,以可靠地观察缓存变化?
  • RQ5现有SGX运行时在多大程度上易受此类推测侧信道攻击的影响?

主要发现

  • 由于常见SGX运行时中存在可被利用的代码模式,任何飞地程序都可能受到SgxPectre攻击的影响。
  • Intel SGX SDK、Rust-SGX和Graphene-SGX均包含可导致推测执行引发缓存侧信道泄露的代码模式。
  • 来自外部程序的分支目标注入可成功在推测执行期间操纵飞地控制流。
  • 推测执行引发的缓存状态变化是可观测的,可被用于从飞地内存和寄存器中提取秘密。
  • 该攻击具有实用性,无需硬件修改或超出标准用户级执行的特权访问。
  • 本研究证实,推测执行侧信道可完全破坏SGX飞地的机密性保证。

更好的研究,从现在开始

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

无需绑定信用卡

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