Semantic Scholar Open Access 2018 282 sitasi

ret2spec: Speculative Execution Using Return Stack Buffers

G. Maisuradze C. Rossow

Abstrak

Speculative execution is an optimization technique that has been part of CPUs for over a decade. It predicts the outcome and target of branch instructions to avoid stalling the execution pipeline. However, until recently, the security implications of speculative code execution have not been studied. In this paper, we investigate a special type of branch predictor that is responsible for predicting return addresses. To the best of our knowledge, we are the first to study return address predictors and their consequences for the security of modern software. In our work, we show how return stack buffers (RSBs), the core unit of return address predictors, can be used to trigger misspeculations. Based on this knowledge, we propose two new attack variants using RSBs that give attackers similar capabilities as the documented Spectre attacks. We show how local attackers can gain arbitrary speculative code execution across processes, e.g., to leak passwords another user enters on a shared system. Our evaluation showed that the recent Spectre countermeasures deployed in operating systems can also cover such RSB-based cross-process attacks. Yet we then demonstrate that attackers can trigger misspeculation in JIT environments in order to leak arbitrary memory content of browser processes. Reading outside the sandboxed memory region with JIT-compiled code is still possible with 80% accuracy on average.

Topik & Kata Kunci

Penulis (2)

G

G. Maisuradze

C

C. Rossow

Format Sitasi

Maisuradze, G., Rossow, C. (2018). ret2spec: Speculative Execution Using Return Stack Buffers. https://doi.org/10.1145/3243734.3243761

Akses Cepat

Lihat di Sumber doi.org/10.1145/3243734.3243761
Informasi Jurnal
Tahun Terbit
2018
Bahasa
en
Total Sitasi
282×
Sumber Database
Semantic Scholar
DOI
10.1145/3243734.3243761
Akses
Open Access ✓