Libra: Architectural Support For Principled, Secure And Efficient Balanced Execution On High-End Processors


연구 분야: Cryptography



학회: CCS '24: Proceedings of the 2024 on ACM SIGSAC Conference on Computer and Communications Security


초록

Control-flow leakage (CFL) attacks enable an attacker to expose control-flow decisions of a victim program via side-channel observations. Linearization (i.e. elimination) of secret-dependent control flow is the main countermeasure against these attacks, yet it comes at a non-negligible cost. Conversely, balancing secret-dependent branches often incurs a smaller overhead, but is notoriously insecure on high-end processors. Hence, linearization has been widely believed to be the only effective countermeasure against CFL attacks. In this paper, we challenge this belief and investigate an unexplored alternative: how to securely balance secret-dependent branches on higher-end processors? We propose Libra, a generic and principled hardware-software codesign to efficiently address CFL on high-end processors. We perform a systematic classification of hardware primitives leaking control flow from the literature, and provide guidelines to handle them with our design. Importantly, Libra enables secure control-flow balancing without the need to disable performance-critical hardware such as the instruction cache and the prefetcher. We formalize the semantics of Libra and propose a code transformation algorithm for securing programs, which we prove correct and secure. Finally, we implement and evaluate Libra on an out-of-order RISC-V processor, showing performance overhead on par with insecure balanced code, and outperforming state-of-the-art linearized code by 19.3%.


Author Profile
Hans Winderix

DistriNet KU Leuven Leuven Belgium

Belgium
Author Profile
Marton Bognar

DistriNet KU Leuven Leuven Belgium

Belgium
Author Profile
Lesly Ann Daniel

DistriNet KU Leuven Leuven Belgium

Belgium

📄 논문 정보

발행 연도 2024년
인용수 0
출판 국가 Belgium
사이트 ACM
좋아요 수 0

연관 논문 목록 (70건)