Transient-Execution Attacks: Understanding Meltdown and Spectre
Offered By: Graz University of Technology via edX
Course Description
Overview
In this course, we build upon the knowledge we built up so far on cache side-channel attacks as well as the side-channel and security mindset. We will then go beyond software-based side-channel attacks and study transient-execution attacks. Transient execution is a mechanism present in modern processors, where the processor performs operations, often speculatively, that it later on has to undo. However, the side effects of these operations remain and leak data (not meta-data!) to the attacker. Similar to the prior courses, we provide you with the experience of discovering these attacks yourself in a group of students, living in a shared appartment. We again dive deeper into the microarchitecture and will now understand out-of-order pipelines and how their behavior introduces leakage. We will then use side channels to exfiltrate data and transmit it to an attacker-controlled application. We will learn about the most prominent of these attacks: Meltdown, Spectre, Foreshadow, and ZombieLoad. You will implement some of these attacks yourself, which requires skills in reading and writing C code. You will learn which attacks are relevant in the concrete native and virtualized environments you are working with, contributing to your risk assessment skills. In a set of small exercises, you will implement some of these attacks and show that you understood out-of-order execution pipelines, transient-execution attacks and potential mitigations against them.
Syllabus
- Episode 1: Haunted by Spectre
Speculative behaviors can leak secrets from other programs.
- Episode 2: Daniel has a Meltdown
Computers sometimes leak secrets before realizing they shouldn't.
- Episode 3: Trust Issues
We investigate trusted execution environments for isolation.
- Episode 4: Foreshadow
We investigate transient-execution attacks on trusted execution environments.
- Episode 5: Noise is just someone else's data
Remaining noise turns out to still be data leakage.
Taught by
Daniel Gruss
Tags
Related Courses
Computer Security: A Hands-on ApproachUdemy A Little Less Speculation, a Little More Action - A Deep Dive into Fuchsia's Mitigations for Specific CPU Side-Channel Attacks
Black Hat via YouTube Wrangling with the Ghost - An Inside Story of Mitigating Speculative Execution Side Channel Vulnerabilities
Black Hat via YouTube Attack Vector Controls for Speculation Mitigations
Linux Plumbers Conference via YouTube Behind the Speculative Curtain - The True Story of Fighting Meltdown and Spectre
Black Hat via YouTube