Instructor: Dean Tullsen
tullsen at ucsd dot edu
The goal of this seminar is to explore, through the reading, analysis, and discussion of research papers, the interactions between control flow, control flow prediction, speculative execution, and cybersecurity.
Class meets Th 5:00-6:20 in CSE 4258
The papers to read will be posted here (so those not registered for the class will also be able to find them). There will be no canvas or piazza pages.
This class is intended to be taken for one unit. If for some reason you really need 2 units, come talk to me early in the course.
Expectations: (1) Please volunteer to present. Anyone registered for the class will present at least once (2) Please make sure you read the papers before class -- presentations will be oriented toward facilitating discussion about what you read, not necessarily presenting the material for someone who has not read the paper(s). (3) Come prepared to discuss and interact with the presentations.
Format: Most weeks we'll have a primary paper and a secondary paper. The expectation is that everyone will read the primary paper (and the presenter will present it accordingly, focusing on fostering discussion). The secondary paper is not required to be read (except by the presenter), and thus will be presented in more traditional "presentation" style.
Schedule:
Jump Over ASLR https://www.cs.ucr.edu/~nael/pubs/micro16.pdf
Speculative buffer overflows https://arxiv.org/abs/1807.03757
Branch history injection https://www.usenix.org/conference/usenixsecurity22/presentation/barberis
Ret2Spec https://arxiv.org/abs/1807.10364
Sok: hardware defenses against speculative execution attacks https://arxiv.org/pdf/2301.03724
Spectre Returns! Speculation Attacks using the Return Stack Buffer