Verification of serialising instructions for security against transient execution attacks

被引:2
作者
Ponugoti, Kushal K. [1 ,2 ]
Srinivasan, Sudarshan K. [1 ]
Mathure, Nimish [1 ]
机构
[1] North Dakota State Univ, Elect & Comp Engn, Fargo, ND USA
[2] North Dakota State Univ, Elect & Comp Engn, 1844 10th St N,Apt 119, Fargo, ND 58105 USA
基金
美国国家科学基金会;
关键词
computer architecture; electronic design automation; formal verification; integrated circuit design; logic design; microcomputers; microprocessor chips;
D O I
10.1049/cdt2.12058
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Transient execution attacks such as Spectre and Meltdown exploit speculative execution in modern microprocessors to leak information via cache side-channels. Software solutions to defend against many transient execution attacks employ the lfence serialising instruction, which does not allow instructions that come after the lfence to execute out-of-order with respect to instructions that come before the lfence. However, errors and Trojans in the hardware implementation of lfence can be exploited to compromise the software mitigations that use lfence. The aforementioned security gap has not been identified and addressed previously. The authors provide a formal method solution that addresses the verification of lfence hardware implementation. The authors also show how hardware Trojans can be designed to circumvent lfence and demonstrate that their verification approach will flag such Trojans as well. The authors have demonstrated the efficacy of our approach using RSD, which is an open source RISC-V based superscalar out-of-order processor.
引用
收藏
页码:127 / 140
页数:14
相关论文
共 27 条
  • [1] Barrett C., 2010, P 8 INT WORKSH SAT M, VVolume 13, P14
  • [2] Efficient Information-Flow Verification Under Speculative Execution
    Bloem, Roderick
    Jacobs, Swen
    Vizel, Yakir
    [J]. AUTOMATED TECHNOLOGY FOR VERIFICATION AND ANALYSIS (ATVA 2019), 2019, 11781 : 499 - 514
  • [3] Burch J. R., 1994, Computer Aided Verification. 6th International Conference, CAV '94. Proceedings, P68
  • [4] Constant-Time Foundations for the New Spectre Era
    Cauligi, Sunjay
    Disselkoen, Craig
    Gleissenthall, Klaus, V
    Tullsen, Dean
    Stefan, Deian
    Rezk, Tamara
    Barthe, Gilles
    [J]. PROCEEDINGS OF THE 41ST ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '20), 2020, : 913 - 926
  • [5] A Formal Approach to Secure Speculation
    Cheang, Kevin
    Rasmussen, Cameron
    Seshia, Sanjit
    Subramanyan, Pramod
    [J]. 2019 IEEE 32ND COMPUTER SECURITY FOUNDATIONS SYMPOSIUM (CSF 2019), 2019, : 288 - 303
  • [6] Z3: An efficient SMT solver
    de Moura, Leonardo
    Bjorner, Nikolaj
    [J]. TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, 2008, 4963 : 337 - 340
  • [7] A Formal Approach for Detecting Vulnerabilities to Transient Execution Attacks in Out-of-Order Processors
    Fadiheh, Mohammad Rahmani
    Mueller, Johannes
    Brinkmann, Raik
    Mitra, Subhasish
    Stoffel, Dominik
    Kunz, Wolfgang
    [J]. PROCEEDINGS OF THE 2020 57TH ACM/EDAC/IEEE DESIGN AUTOMATION CONFERENCE (DAC), 2020,
  • [8] InSpectre: Breaking and Fixing Microarchitectural Vulnerabilities by Formal Analysis
    Guanciale, Roberto
    Balliu, Musard
    Dam, Mads
    [J]. CCS '20: PROCEEDINGS OF THE 2020 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2020, : 1853 - 1869
  • [9] SPECTECTOR: Principled Detection of Speculative Information Flows
    Guarnieri, Marco
    Kopf, Boris
    Morales, Jose F.
    Reineke, Jan
    Sanchez, Andres
    [J]. 2020 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP 2020), 2020, : 1 - 19
  • [10] Hennessy J., 1982, MICRO 15. Proceedings of the 15th Annual Workshop on Microprogramming, P17