EdX

Transient-Execution Attacks: Understanding Meltdown and Spectre (edX)

Transient-Execution Attacks: Understanding Meltdown and Spectre (edX)

Beyond software-based side-channel attacks there is a new class of attacks called transient-execution attacks. These attacks go beyond leaking meta-data and directly retrieve secret data but they use side channels as an data exfiltration mechanism to transmit the secret data to an attacker-controlled application. We will look at the most prominent of these attacks: Meltdown, Spectre, Foreshadow, and ZombieLoad. You will implement some of these attacks yourself and learn how to mitigate them.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

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.
This course is part of the Side Channel Security – Transient Execution and Fault Attacks Professional Certificate.

What you'll learn

  • Understand the difference between side-channel attacks and transient-execution attacks
  • Build up the ability to recognize which software may be exposed to transient-execution vulnerabilities
  • Understand the immense security risks posed by transient-execution attacks and how these attacks can be mitigated

Prerequisites:
Knowledge and skills from the prerequisite course Side Channel Security S3: Cache Side-Channel Attacks and Mitigations. Knowledge and skills from Side Channel Security S4: Physical and Advanced Side-Channel Attacks are strongly recommended.
We expect C and C++ programming skills on a similar level as in the prerequisite course. You may have obtained these as part of a university program such as computer science or a high school degree with a focus on computer science.

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.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

CS50's Introduction to Computer Science (edX) EdX
HarvardX,Harvard University

CS50's Introduction to Computer Science (edX)

An introduction to the intellectual enterprises of computer science and the art of programming. This is CS50, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by David J. Malan, CS50 teaches students how to think algorithmically and solve problems efficiently.

Self Paced
Self-Paced
Web Security Fundamentals (edX) EdX
KU Leuven University

Web Security Fundamentals (edX)

Essential knowledge for every web developer, discover important principles of modern web security, and learn about current security best practices. Web applications are inherently insecure, as aptly illustrated by a pile of recent events. Insecurity is however not fundamental to the web platform. As a matter of fact, the modern web offers a variety of powerful security features that help stop a hacker. Unfortunately, not many developers have the knowledge and skills to leverage these security features to their full potential.

No sessions available
5-12 Weeks
E-Payment (edX) EdX
University of Hong Kong,HKUx

E-Payment (edX)

Master the technologies behind e-payment systems and learn about their security mechanisms. Electronic payments have become an integral part of our daily lives. This in-depth course is designed to give students a thorough grasp of various e-payment systems, their underlying technology, and the security measures and regulations that ensure their safe and efficient use.

Self Paced
Self-Paced
Network Security - Protocols (edX) EdX
New York University,NYUx

Network Security - Protocols (edX)

Learn more fundamentals of network security, including cryptographic algorithms used in networking protocols, TLS/SSL, IPSec Layer 2 Security and Wireless Security. Students are provided with a broad understanding of cryptography, from its classical applications dating from the Roman empire to modern cryptography, including the public key cryptography and hashing techniques today.

Future dates to be announced
5-12 Weeks