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 条
  • [41] Safe Programmable Speculative Parallelism
    Prabhu, Prakash
    Ramalingam, G.
    Vaswani, Kapil
    PLDI '10: PROCEEDINGS OF THE 2010 ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION, 2010, : 50 - 61
  • [42] Improving MapReduce Performance with Partial Speculative Execution
    Wang, Yaoguang
    Lu, Weiming
    Lou, Renjie
    Wei, Baogang
    JOURNAL OF GRID COMPUTING, 2015, 13 (04) : 587 - 604
  • [43] iGPU: Exception Support and Speculative Execution on GPUs
    Menon, Jaikrishnan
    de Kruijf, Marc
    Sankaralingam, Karthikeyan
    2012 39TH ANNUAL INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE (ISCA), 2012, : 72 - 83
  • [44] Resource Optimization for Speculative Execution in a MapReduce Cluster
    Xu, Huanle
    Lau, Wing Cheong
    2013 21ST IEEE INTERNATIONAL CONFERENCE ON NETWORK PROTOCOLS (ICNP), 2013,
  • [45] On Understanding the Energy Impact of Speculative Execution in Hadoop
    Tien-Dat Phan
    Ibrahim, Shadi
    Antoniu, Gabriel
    Bouge, Luc
    2015 IEEE INTERNATIONAL CONFERENCE ON DATA SCIENCE AND DATA INTENSIVE SYSTEMS, 2015, : 396 - 403
  • [46] Spice: Speculative Parallel Iteration Chunk Execution
    Raman, Easwaran
    Vachharajani, Neil
    Rangan, Ram
    August, David I.
    CGO 2008: SIXTH INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, PROCEEDINGS, 2008, : 175 - 184
  • [47] Improving MapReduce Performance with Partial Speculative Execution
    Yaoguang Wang
    Weiming Lu
    Renjie Lou
    Baogang Wei
    Journal of Grid Computing, 2015, 13 : 587 - 604
  • [48] An Optimized Strategy for Speculative Execution in a Heterogeneous environment
    Liu, Qi
    Cai, Weidong
    Fu, Zhangjie
    Shen, Jian
    Linge, Nigel
    2015 9TH INTERNATIONAL CONFERENCE ON FUTURE GENERATION COMMUNICATION AND NETWORKING (FGCN), 2015, : 9 - 12
  • [49] Shared Write Buffer to Support Speculative Execution
    Ye, John
    Dai, Hongjun
    Li, Songyuan
    Chen, Tianzhou
    2015 IEEE 17TH INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS, 2015 IEEE 7TH INTERNATIONAL SYMPOSIUM ON CYBERSPACE SAFETY AND SECURITY, AND 2015 IEEE 12TH INTERNATIONAL CONFERENCE ON EMBEDDED SOFTWARE AND SYSTEMS (ICESS), 2015, : 1494 - 1499
  • [50] Processor verification with precise exceptions and speculative execution
    Sawada, J
    Hunt, WA
    COMPUTER AIDED VERIFICATION, 1998, 1427 : 135 - 146