Speculative Data-Oblivious Execution: Mobilizing Safe Prediction For Safe and Efficient Speculative Execution

被引:26
|
作者
Yu, Jiyong [1 ]
Mantri, Namrata [1 ]
Torrellas, Josep [1 ]
Morrison, Adam [2 ]
Fletcher, Christopher W. [1 ]
机构
[1] Univ Illinois, Champaign, IL 61820 USA
[2] Tel Aviv Univ, Tel Aviv, Israel
关键词
Security; Speculative execution attacks; Hardware; Information flow;
D O I
10.1109/ISCA45697.2020.00064
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Speculative execution attacks are an enormous security threat. In these attacks, malicious speculative execution reads and exfiltrates potentially arbitrary program data through microarchitectural covert channels. Correspondingly, prior work has shown how to comprehensively block such attacks by delaying the execution of covert channel-creating instructions until their operands are a function of non-speculative data. This paper's premise is that it is safe to execute these potentially dangerous instructions early, improving performance, as long as their execution does not require operand-dependent hardware resource usage, i.e., is data oblivious. While secure, this idea can easily reduce, not improve, performance. Intuitively, data obliviousness implies doing the worst case work all the time. Our key idea to get net speedup is that it is safe to predict what will be, and to subsequently perform, the work needed to satisfy the common case, as long as the prediction itself does not leak privacy. We call the complete scheme-predicting the form of data-oblivious execution-Speculative Data-Oblivious Execution (SDO). We build SDO on top of a recent comprehensive and state-of-the-art protection called STT. Extending security arguments from STT, we show how the predictions do not reveal private information, enabling safe and efficient speculative execution. We evaluate the combined scheme, STT+SDO, on a set of SPEC17 workloads and find that it improves the performance of stand-alone STT by an average 36.3% to 55.1%, depending on the microarchitecture and attack model-and without changing STT's security guarantees.
引用
收藏
页码:707 / 720
页数:14
相关论文
共 50 条
  • [1] SVP: Safe and Efficient Speculative Execution Mechanism through Value Prediction
    Wang, Kaixuan
    Qin, Xinyu
    Yang, Zhuoyuan
    He, Weiliang
    Liu, Yifan
    Han, Jun
    [J]. PROCEEDINGS OF THE GREAT LAKES SYMPOSIUM ON VLSI 2023, GLSVLSI 2023, 2023, : 433 - 437
  • [2] Statically safe speculative execution for real-time systems
    Younis, MF
    Marlowe, TJ
    Stoyen, AD
    Tsai, G
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1999, 25 (05) : 701 - 721
  • [3] Value Prediction and Speculative Execution on GPU
    Liu, Shaoshan
    Eisenbeis, Christine
    Gaudiot, Jean-Luc
    [J]. INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING, 2011, 39 (05) : 533 - 552
  • [4] Value Prediction and Speculative Execution on GPU
    Shaoshan Liu
    Christine Eisenbeis
    Jean-Luc Gaudiot
    [J]. International Journal of Parallel Programming, 2011, 39 : 533 - 552
  • [5] Efficient Invisible Speculative Execution through Selective Delay and Value Prediction
    Sakalis, Christos
    Kaxiras, Stefanos
    Ros, Alberto
    Jimborean, Alexandra
    Sjalander, Magnus
    [J]. PROCEEDINGS OF THE 2019 46TH INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE (ISCA '19), 2019, : 723 - 735
  • [6] A theory of nested speculative execution
    Tapus, Cristian
    Hickey, Jason
    [J]. COORDINATION MODELS AND LANGUAGES, PROCEEDINGS, 2007, 4467 : 151 - +
  • [7] Execution-based prediction using speculative slices
    Zilles, C
    Sohi, G
    [J]. 28TH ANNUAL INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE, PROCEEDINGS, 2001, : 2 - 13
  • [8] Execute on Clear (EoC): Enhancing Security for Unsafe Speculative Instructions by Precise Identification and Safe Execution
    Meng, Xiaoni
    Yang, Qiusong
    Ci, Yiwei
    Zhao, Pei
    Zhao, Shan
    Li, Mingshu
    [J]. 2023 IEEE 41ST INTERNATIONAL CONFERENCE ON COMPUTER DESIGN, ICCD, 2023, : 587 - 595
  • [9] Optimization for Speculative Execution in Big Data Processing Clusters
    Xu, Huanle
    Lau, Wing Cheong
    [J]. IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2017, 28 (02) : 530 - 545
  • [10] Isolating Speculative Data to Prevent Transient Execution Attacks
    Barber, Kristin
    Bacha, Anys
    Zhou, Li
    Zhang, Yinqian
    Teodorescu, Radu
    [J]. IEEE COMPUTER ARCHITECTURE LETTERS, 2019, 18 (02) : 178 - 181