2018/07/31 by Giorgi Maisuradze, Christian Rossow · 2 citations
Chemistry · Computer Science · Engineering · #Buffer overflow #Call stack #Code (set theory) #Cover (algebra) #Exploit #Innovative Microfluidic and Catalytic Techniques Innovation #Mass Spectrometry Techniques and Applications #Multi-core processor #Password #Security and Verification in Computing #Source code #Symbolic execution #cs.CR
paper · pdf · doi:10.1145/3243734.3243761
Updating to the cam-ready version and adding reference to the original paper
openalex created_date 2018/08/03 · arxiv created 2018/08/20 · arxiv updated 2018/08/21 · openalex publication_date 2018/10/15 · openalex updated_date 2026/08/05
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.