We may earn an affiliate commission when you visit our partners.
Course image
Daniel Gruss

In this course, we build upon basic knowledge of software-based timing and cache attacks as well as the side-channel mindset. Same as in the prior courses, we do not just enumerate side-channel effects but we provide you with the experience of discovering side channels yourself in a group of students, living in a shared appartment. We dive deeper into the microarchitecture and get an in-depth understanding of virtual memory and caches in the course. We will learn about different cache side channels, such as Flush+Flush, Evict+Reload, and Prime+Probe. This requires some skills in reading and writing code, mainly 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 demonstrate that you understood the virtual memory, caches, and are able to find and exploit cache side channels in small software programs.

What's inside

Learning objective

- spot and exploit side channels in cache hierarchies of concrete systems- use different software-based cache side channels to extract secret information- understand the security risks posed by cache side channels and which cache side channels can be mitigated in practice

Syllabus

- Episode 1: Down the Rabbit Hole
The flatmates figure out how virtual addresses and caches work and they start realizing which timing differences might be hidden in there.
Read more
- Episode 2: Gone with the Flush
The flatmates discover the Flush+Flush and Evict+Reload attacks and learn a lot about how cache replacement works.
- Episode 3: Optimus Prime+Probe
The flatmates discover the Prime+Probe attack. They realize that it works in cases where Flush+Reload does not work and believe it is something completely new.
- Episode 4: Jonas and the Template of Doom
The flatmates realize that they can scan binaries for cache activity and automatically build cache side-channel attacks with that, forming the concept of Cache Template Attacks. In the end, upon Jonas' suggestion, they retrieve the Template of Doom; but they also attack AES for instance.
- Episode 5: Drama with Manuel
Manuel hurt his leg and cannot move. The timing differences he introduces in the flat activity inspire the discovery of DRAM Addressing (DRAMA) side channels.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Taught by Daniel Gruss, who is innovative in his approach to security risks in computer science
Develops key skills for anyone working with virtual environments
Explores topics highly relevant to industry
Offers hands-on labs and interactive materials
Advises students to take other courses first as prerequisites
Requires learners to come in with extensive background knowledge first

Save this course

Save Cache Side-Channel Attacks and Mitigations to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Cache Side-Channel Attacks and Mitigations with these activities:
Review Compilers: Principles, Techniques and Tools
Review key concepts and fundamentals from compilers.
Show steps
  • Read the first 3 chapters of the book
  • Take notes on the main concepts discussed
Participate in discussion groups on cache side channels
Engage with peers to exchange knowledge and perspectives on cache side channels.
Show steps
  • Join a discussion group on cache side channels
  • Participate in discussions by asking questions and sharing insights
  • Summarize the key takeaways from the discussions
Solve practice problems on cache coherence
Practice applying the concepts of cache coherence to real-world scenarios.
Show steps
  • Solve 5 practice problems on cache coherence
  • Explain your solutions in detail
Five other activities
Expand to see all activities and additional details
Show all eight activities
Create a presentation on cache side-channel attacks
Deepen understanding of cache side-channel attacks by explaining them to others.
Show steps
  • Research different types of cache side-channel attacks
  • Create a presentation that explains the attacks and their implications
  • Present the presentation to a group of peers
Volunteer as a mentor to students learning about cache side channels
Share knowledge and expertise in cache side channels while supporting other students.
Show steps
  • Join a mentoring program or platform
  • Connect with students who need guidance in cache side channels
  • Provide support and guidance to the students
Follow tutorials on advanced cache side-channel attacks
Gain in-depth knowledge of advanced cache side-channel attacks and their countermeasures.
Show steps
  • Follow a tutorial on a specific advanced cache side-channel attack
  • Implement the attack in a simulated environment
  • Analyze the results and discuss the implications
Implement a cache side-channel attack mitigation technique in a real-world application
Gain practical experience in mitigating cache side-channel attacks.
Show steps
  • Identify a real-world application that is vulnerable to cache side-channel attacks
  • Research and select an appropriate mitigation technique
  • Implement the mitigation technique in the application
  • Evaluate the effectiveness of the mitigation technique
Contribute to an open-source cache side-channel attack detection tool
Gain hands-on experience in detecting cache side-channel attacks.
Show steps
  • Identify an open-source cache side-channel attack detection tool
  • Make a significant contribution to the tool by adding a new feature or improving an existing one
  • Document your changes and submit a pull request

Career center

Learners who complete Cache Side-Channel Attacks and Mitigations will develop knowledge and skills that may be useful to these careers:
Security Researcher
Security Researchers identify and exploit vulnerabilities in computer systems and networks. They also develop countermeasures to protect against these vulnerabilities. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and exploit these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks.
Information Security Analyst
Information Security Analysts plan and implement security measures to protect an organization's computer systems and networks. They also monitor and analyze security systems and respond to security incidents. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and defend against these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks. It also discusses how to spot and exploit side channels in cache hierarchies and how to use cache side-channel attacks to extract secret information.
Vulnerability Researcher
Vulnerability Researchers identify and exploit vulnerabilities in software and hardware. They also work with vendors to develop and release patches for these vulnerabilities. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and exploit these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks.
Computer Forensics Analyst
Computer Forensics Analysts investigate computer systems and networks to collect and analyze evidence of cyber crimes. They also work with law enforcement to prosecute cyber criminals. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and analyze cache side-channel attacks. This course also helps you to understand virtual memory and caches. It also covers side-channel effects but provides you with the experience of discovering side channels yourself in a group of students.
Cybersecurity Engineer
Cybersecurity Engineers design, implement, and maintain security systems to protect organizations from cyber attacks. They also monitor and analyze security systems and respond to security incidents. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and defend against these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks.
Penetration Tester
Penetration Testers use their skills to identify and exploit vulnerabilities in computer systems and networks in order to help organizations improve their security. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and exploit these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks.
Ethical Hacker
Ethical Hackers use their skills to identify and exploit vulnerabilities in computer systems and networks in order to help organizations improve their security. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and exploit these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks.
Cryptographer
Cryptographers design and implement cryptographic algorithms and protocols to protect information from unauthorized access. They also work with security engineers to implement these algorithms and protocols in real-world systems. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and design cryptographic algorithms and protocols that are more resistant to these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks.
Cybersecurity Architect
Cybersecurity Architects design and implement security architectures for organizations. They work with security engineers to ensure that these architectures are effective and meet the organization's security requirements. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and design security architectures that are more resistant to these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks.
Security Consultant
Security Consultants help organizations to improve their security posture. They provide advice on security best practices and help organizations to implement security controls. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and defend against these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks.
Privacy Engineer
Privacy Engineers design and implement systems and processes to protect user privacy. They also work with legal and compliance teams to ensure that organizations comply with privacy regulations. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and design systems and processes that are more resistant to these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks.
Malware Analyst
Malware Analysts analyze malware to understand how it works and how to detect and remove it. They also work with law enforcement to investigate and prosecute cyber crimes. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and analyze malware. This course covers various cache side-channel attacks and how to exploit side channels in cache hierarchies.
Software Engineer
Software Engineers create and maintain software applications. They write code, design software architecture, and test and debug software systems. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to write more robust and secure software. This course covers techniques that can be used to discover various cache side channels. It also discusses techniques that can be used to mitigate these side channels in practice.
Chief Information Security Officer (CISO)
The CISO is responsible for the overall security of an organization's information systems and networks. They work with senior management to develop and implement security policies and procedures. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand and manage the security risks associated with these attacks. This course covers various cache side-channel attacks as well as techniques for mitigating these attacks.
Computer Hardware Engineer
Computer Hardware Engineers design, develop, and test computer hardware systems. They also work with software engineers to ensure that hardware and software work together properly. This course provides you with the skills in cache side-channel attacks and mitigations that can help you to better understand cache memory and how to design hardware that is more resistant to these attacks. This course covers microarchitecture, virtual memory, and caches. It also covers side-channel effects but provides you with the experience of discovering side channels yourself in a group of students.

Reading list

We've selected nine books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Cache Side-Channel Attacks and Mitigations.
Practical guide to web application security testing, with a focus on identifying and exploiting security vulnerabilities. It covers a wide range of topics, including web application security basics, common web application vulnerabilities, and advanced security testing techniques.
Collection of practical recipes for securing web applications. It covers a wide range of topics, including web application security basics, common web application vulnerabilities, and advanced security testing techniques.
Provides a comprehensive overview of computer architecture, with a focus on quantitative analysis. It covers a wide range of topics, including computer organization, instruction set architecture, and performance evaluation.
Provides a comprehensive overview of computer organization and design, with a focus on the hardware/software interface. It covers a wide range of topics, including computer architecture, instruction set architecture, and operating systems.
Provides a comprehensive overview of operating system concepts, with a focus on the underlying principles of operating systems. It covers a wide range of topics, including process management, memory management, and file systems.
Provides a comprehensive overview of computer security, with a focus on the principles and practices of secure computing. It covers a wide range of topics, including cryptography, network security, and system security.
Provides a comprehensive overview of applied cryptography, with a focus on the protocols, algorithms, and source code in C. It covers a wide range of topics, including symmetric-key cryptography, public-key cryptography, and hash functions.
Provides a comprehensive overview of secure coding standards, with a focus on the CERT C Secure Coding Standard. It covers a wide range of topics, including secure coding principles, common coding vulnerabilities, and secure coding techniques.
Provides a comprehensive overview of reverse engineering, with a focus on the practical aspects of reversing software. It covers a wide range of topics, including reverse engineering basics, common reverse engineering techniques, and advanced reverse engineering techniques.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Cache Side-Channel Attacks and Mitigations.
Transient-Execution Attacks: Understanding Meltdown and...
Most relevant
Physical and Advanced Side-Channel Attacks
Most relevant
Introduction to Software Side Channels and Mitigations
Most relevant
Between Physical and Sofware: Fault Attacks, Side...
Most relevant
Side-Channel Security: Developing a Side-Channel Mindset
Most relevant
Connecting and Deploying Amazon ElastiCache
Most relevant
Administering Omni-channel Features in Salesforce Service...
Marketing Channel Functions
OS Analysis with Wazuh 4
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser