Skip to main content

Introduction to Software Side Channels and Mitigations

Side channels exist in the real world, but they also exist in computers and can be exploited directly from software. This is a substantial computer security problem today, that we need to learn about to be able to stop attacks. In this course, you will learn and practice basic software-based side channels and understand the thought process to utilize a side channel. You will then learn how to mitigate or avoid side channels in software.

...
Introduction to Software Side Channels and Mitigations

There is one session available:

108 already enrolled!
After a course session ends, it will be archivedOpens in a new tab.
Starts Dec 5

Introduction to Software Side Channels and Mitigations

Side channels exist in the real world, but they also exist in computers and can be exploited directly from software. This is a substantial computer security problem today, that we need to learn about to be able to stop attacks. In this course, you will learn and practice basic software-based side channels and understand the thought process to utilize a side channel. You will then learn how to mitigate or avoid side channels in software.

Introduction to Software Side Channels and Mitigations
10 weeks
2–3 hours per week
Self-paced
Progress at your own speed
Free
Optional upgrade available

There is one session available:

After a course session ends, it will be archivedOpens in a new tab.
Starts Dec 5

About this course

Skip About this course

Same as the prerequisite course, we do not just enumerate side-channel effects and how to exploit them. We provide you with the experience of learning about side channels, in a group of students, living in a shared appartment. Together with them you will figure out that what software side channels are, why they are relevant for cybersecurity, in particular in our modern digital lifes, where all our secrets are stored on computers that can be subverted using side channels.

In this course, we get one step closer to hugely impactful attacks like Meltdown and Spectre, which internally use side channels. We will learn about different simple software-based side channels and how they can be exploited. We will cover the basics, requiring some programming skills. We again focus on the security or side-channel mindset, as a crucial take-away for you, that you will be able to apply on a day-to-day basis in your studies, your job, and your personal life. You will extend your view on side channels and be able to assess risks in technical contexts in detail. In a set of small exercises, you will demonstrate that you understood the basics, and are able to find and exploit side channels in small software programs.

Course created with support from

Daniel Gruss

At a glance

  • Institution: TUGrazX
  • Subject: Computer Science
  • Level: Introductory
  • Prerequisites:

    Knowledge and skills from the prerequisite course Side Channel Security S1: Side Channel and Computer Security Mindset.

    We expect basic programming skills that you may have obtained as part of a university program such as computer science or a high school degree with a focus on computer science.

What you'll learn

Skip What you'll learn

- Spot and exploit side-channel leakage in simple software programs
- Use different software-based side channels to extract secret information
- Connect these security risks with methods to mitigate and close side channels

- Episode 1: Raiders of the Lost Account

Manuel loses access to his online account. In a search to recover it, the flat mates discover how to get from small variations in the execution to a side-channel attack on the PIN entry.

- Episode 2: Memory

Claudio runs a course grading server. Our flat mates set out to find a flaw in it and discover a new means of attacking software, by flushing and reloading memory (the so-called Flush+Reload attack).

- Episode 3: Not on my Watch

Lukas and Andreas miss a deadline and use Flush+Reload to still get a signature on their assignments even though the deadline has passed.

- Episode 4: Justice Leak

Claudio's course grading server corrupts an assignment, leading to an unfair zero points for some flat mates. They try to get justice and their points back, by using Flush+Reload again.

- Episode 5: Flush+Reload: Endgame

With all these attacks, and specific mitigations against them, the flatmates discuss possible generic mitigations against Flush+Reload.

About the instructors

Who can take this course?

Unfortunately, learners residing in one or more of the following countries or regions will not be able to register for this course: Iran, Cuba and the Crimea region of Ukraine. While edX has sought licenses from the U.S. Office of Foreign Assets Control (OFAC) to offer our courses to learners in these countries and regions, the licenses we have received are not broad enough to allow us to offer this course in all locations. edX truly regrets that U.S. sanctions prevent us from offering all of our courses to everyone, no matter where they live.

Interested in this course for your business or team?

Train your employees in the most in-demand topics, with edX For Business.