Skip to main content

Securing Software against Physical Attacks

Periodic Reporting for period 4 - SOPHIA (Securing Software against Physical Attacks)

Período documentado: 2021-03-01 hasta 2021-12-31

Today, more and more products contain electronic components that are connected to the Internet. They form the so-called Internet of Things. While this leads to unprecedented opportunities to increase productivity and convenience, this also leads to unprecedented threats. Information security is a central challenge for our society. It is crucial not only for the data that is processed in our computers but due to the IoT, information security also affects the physical world. When considering applications like autonomous driving, it even affects our physical safety.

Information security for our computing systems is provided at different levels. However, it can also be compromised at different levels of abstraction. In particular, it can also be compromised due to physical properties of a device. For example, the power consumption of a device might reveal information about the data that is processed inside a device. Also, the timing behavior of a program might leak information. An attacker may also manipulate a security mechanism of a device by shortly changing the supply voltage of a device while this security mechanism is active in a device. All these examples constitute so-called side channels. In these attacks, a physical property of a device is exploited in order to overcome a security mechanism.

The main goal of the project SOPHIA has been to research the theoretical foundations of side channel attacks and novel side channel techniques in order to find efficient and effective countermeasures that allow the execution of software without leaking information via side channels.
In SOPHA, different kinds of side channels and classical attacks have been studied in order to develop efficient and effective protection measures for all kinds of computing devices.

A central result of the project has been the discovery of two vulnerabilities in current processors that have been published as Meltdown and Spectre. The publication of these attacks in January 2018 has created significant media attention as these attacks affected billions of devices worldwide. We have studied the root cause for these attacks in depth, which has led to the finding of further critical attack vectors and to concrete proposals on how to mitigate this class of attacks. This work has led to close interaction with semiconductor industry and the findings of the project have significantly impacted the design of the next generation of processors.

Related to this, we have also studied different timing attacks that exploit the timing behavior to reveal secret information. We have in particular working on attacks exploiting the timing behavior of caches in modern processors and have researched corresponding countermeasures.

Another class of attacks that we have studied in depth in the project are power analysis attacks, which reveal secret information to an attacker that measures the power consumption of a device. We have found a wide range of novel protection measures and we have introduced a formal verification method, which allows proving that a device is resistant against this type of attacks. Tools and example implementations of secure designs have been released open source and have been picked up by several industry partners.

We have also studied protection measures against an attacker that aims at introducing faults in computations by physically manipulating the device. We have found several novel attack paths and researched countermeasures for protecting hardware as well as software execution. Also these results have created a lot of follow-up activities with industry.

Finally, we have looked into different approaches of isolating software components on processors. We have studied cryptographic isolation schemes as well as schemes that combine hardware and software efficiently to ensure that malicious software components cannot attack others.
Overall, this project has led to many results that significantly changed that state-of-the art. The most fundamental ones are:

* the exploitation of speculation in processors to overcome isolation mechanisms in processors
* the exploitation of ineffective faults to reveal cryptographic keys
* the modeling of hardware glitches in order to prove the security of hardware implementations
* the formal verification of countermeasures against fault induction