Physical and Advanced Side-Channel Attacks
Offered By: Graz University of Technology via edX
Course Description
Overview
On the hardware side, we will mount power analysis attacks on the cryptographic algorithms RSA and AES. We will see that simple power analysis attacks and differential power analysis attacks are powerful enough to obtain fine-grained information such as cryptographic keys, user input, or secrets of the operating system. This skill set and knowledge will give you the ability to spot these side channels in hardware and software projects. We will then cover countermeasures and mitigation strategies that allow you to develop side-channel-resilient hardware and software and protect your security-critical applications and sensitive information.
On the software side, we will learn about branch prediction an prefetching. We will learn how these mechanisms can be subverted into powerful side-channel attacks. You will need programming skills (C, C++, Python) and we will provide you with the knowledge required beyond these, including basics on hardware design, computer architecture, operating systems, and cryptography.
You will learn which attacks are relevant in the concrete environments you are working with, extending to your risk assessment skills. In a set of small exercises, you will demonstrate that you understood the techniques behind simple power analysis, and differential power analysis, as well as prefetch side channels and branch-prediction side channels.
Syllabus
- Episode 1: A Single Trace
Daniel breaks his student card that lets him enter the student lab. Fortunately, they just learned about physical side-channel attacks and so Daniel comes up with a plan how to get his entry back, with simple power analysis.
- Episode 2: What a Difference a Trace Makes
After deciding that simple power analysis is too simple, we now break into the lab again, but this time with a more realistic attack, namely differential power analysis.
- Episode 3: Mask, Hide and Seek
The flatmates realize that differential power analysis is difficult to mitigate, and learn about what can be done and how effective it is. In the end, they figure out that masking with a higher number of shares is the solution they were looking for.
- Episode 4: Where do we go from here? Jonas realizes that the branch predictor could be an interesting element to mount attacks on the test system. He figures out that the branch predictor exposes side-channel information.
- Episode 5: Prefetch Me If You Can
The flatmates realize that some instructions need to translate virtual addresses to physical ones. As this is a quite long and complicated task, they suspect that there might be some timing side channel in there.
Taught by
Daniel Gruss
Tags
Related Courses
Certified Ethical Hacker (CEH) - Linux Academy's Prep CourseA Cloud Guru Certified Information Systems Security Professional (CISSP)
A Cloud Guru CompTIA Security+ Certification Prep
A Cloud Guru Encryption Fundamentals
A Cloud Guru LPIC-3 Exam 303: Security
A Cloud Guru