Automatic Detection of Speculative Execution Combinations

被引:14
作者
Fabian, Xaver [1 ]
Guarnieri, Marco [2 ]
Patrignani, Marco [3 ]
机构
[1] Cispa Helmholtz Ctr Informat Secur, Saarbrucken, Germany
[2] IMDEA Software Inst, Madrid, Spain
[3] Univ Trento, Trento, Italy
来源
PROCEEDINGS OF THE 2022 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, CCS 2022 | 2022年
关键词
Spectre; Speculative Execution; Speculative information flows; Speculative non-interference; Combinations of speculative semantics;
D O I
10.1145/3548606.3560555
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Modern processors employ different speculation mechanisms to speculate over different kinds of instructions. Attackers can exploit these mechanisms simultaneously in order to trigger leaks of speculatively-accessed data. Thus, sound reasoning about such speculative leaks requires accounting for all potential speculation mechanisms. Unfortunately, existing formal models only support reasoning about fixed, hard-coded speculation mechanisms, with no simple support to extend said reasoning to new mechanisms. In this paper, we develop a framework for reasoning about composed speculative semantics that capture speculation due to different mechanisms and implement it as part of the Spectector verification tool. We implement novel semantics for speculating over store and return instructions and combine them with the semantics for speculating over branch instructions. Our framework yields speculative semantics for speculating over any combination of these instructions that are secure by construction, i.e., we obtain these security guarantees for free. The implementation of our novel semantics in Spectector let us verify programs that are vulnerable to Spectre v1, Spectre v4, and Spectre v5 vulnerabilities as well as new snippets that are only vulnerable to their compositions.
引用
收藏
页码:965 / 978
页数:14
相关论文
共 41 条
[1]  
Almeida Jose Bacelar, 2017, P 24 ACM SIGSAC C CO
[2]  
[Anonymous], 2021, RESULT CASE 13
[3]  
[Anonymous], 2019, SAFESIDE
[4]  
Barberis Enrico, 2022, P 31 USENIX SEC S US
[5]  
Barthe Gilles, 2004, P 17 IEEE COMP SEC F
[6]  
Barthe Gilles, 2021, P 42 IEEE S SEC PRIV
[7]  
Bhattacharyya Atri, 2019, P 26 ACM SIGSAC C CO
[8]  
Canella C, 2019, PROCEEDINGS OF THE 28TH USENIX SECURITY SYMPOSIUM, P249
[9]  
Cauligi Sunjay, 2022, P 43 IEEE S SEC PRIV
[10]  
Cauligi Sunjay, 2020, P 41 ACM SIGPLAN C P