YoVDO

Transient-Execution Attacks: Understanding Meltdown and Spectre

Offered By: Graz University of Technology via edX

Tags

Cybersecurity Courses C Programming Courses Meltdown Courses Spectre Courses

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 Approach
Udemy
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