Thesis defence

Thesis defence of Valentin MARTINOLI (AMfoRS team): Secure Processors with respect to Micro Architectural Attacks

on the 23 March 2023
23/03/2023 - 10:00
Valentin MARTINOLI - AMfoRS team

Composition of the jury

Régis LEVEUGLE - Thesis director – Full professor – Grenoble Institute of Technology (Grenoble INP) – TIMA Laboratory (France)
Guy GOGNIAT - Rapporteur – Full professor - Université Bretagne Sud (France)
Jean-Max DUTERTRE - Rapporteur - Full professor - Ecole Nationale Supérieure des Mines de Saint-Etienne (France)
Lorena ANGHEL - Examinateur - Full professor - Grenoble Institute of Technology (Grenoble INP) (France)
Sébastien PILLEMENT - Examinateur - Full professor - Université de Nantes (France)

Processeurs Sécurisés et Attaques de Micro Architecture
Mots clés : RISC-V, attaques micro-architecturales, processeur sécurisé, attaques par canal caché,CVA6
Afin d’augmenter la puissance de calcul des processeurs au-delà des progrès des technologies, des mécanismes architecturaux d’optimisation ont été ajoutés depuis de nombreuses années. Cependant, ces mécanismes reposent le plus souvent sur des ressources matérielles partagées qui peuvent donner lieu à des fuites d'information. L’exploitation de ces fuites permet à un attaquant d'obtenir des informations sensibles en provenance d’autres applications. Ces attaques dites micro architecturales emploient des moyens logiciels pour provoquer l’utilisation de mécanismes matériels de très bas niveau. Les informations recherchées sont alors collectées par le biais d’attaques par canaux cachés. Cette thèse vise à répliquer et à se défendre contre certaines de ces attaques sur le cœur RISC-V CVA6. Une analyse approfondie de la micro architecture de ce processeur a mené à la découverte de chemins d’attaque potentiels. Les deux attaques réalisées exploitent ces chemins afin de retrouver des informations sensibles en provenance d’un algorithme cryptographique. La première a été analysée grâce à des outils de simulation, permettant de comprendre dans le détail le fonctionnement de l’attaque et ses implications sur la micro architecture. Une première version vise l'exploitation directe d'une implantation "bare-metal" et une seconde version ajoute un "pseudo-ordonnancement" permettant d'analyser l'effet de bruits induits par d'autres processus pendant l'attaque. La seconde réalisation vise une cible plus réaliste où le cœur est instancié sur une carte FPGA avec un système d’exploitation Linux afin de prouver le réalisme de la menace micro architecturale et d’évaluer les possibilités de défense au niveau logiciel. Ces travaux montrent aussi que répliquer sur un nouveau processeur une attaque dont le principe est connu reste complexe et demande un investissement notable en durée d'analyse, même si ce processeur est libre de droits et disponible au niveau du code source. L’implémentation de ces attaques a mené à l’élaboration de protections telles la remise à zéro des ressources ciblées par les attaques. Finalement, une modification micro architecturale est proposée pour contourner les ressources présentant des fuites lors de la manipulation de données sensibles. Pour ce faire, des instructions supplémentaires sont ajoutées et employées par le programmeur lors de l’utilisation de données critiques dans son code.
 
Secure Processors with respect to Micro Architectural Attacks
Keywords : microarchitectural attacks, RISC-V, secure processor, covert-channel attacks,CVA6
To achieve ever-higher performances, architectural optimization mechanisms have been embedded in high-end CPUs for years. However, these mechanisms rely on shared hardware resources that might yield information leakage. An attacker can leverage these leakages to gather sensitive information belonging to other unrelated applications. These so-called micro architectural attacks rely on software components to trigger very low-level hardware mechanisms. The leaked information can then be recovered through covert-channel attacks. This thesis aims at replicating and mitigating some of these attacks on the CVA6 RISC-V core. An in-depth analysis of the CVA6 micro architecture led to the discovery of potential attack paths. The two implemented attacks leverage these attack paths to extract sensitive information from a cryptographic algorithm. The first one has been analyzed with simulation tools, enabling a deeper understanding of the attack’s behavior and its implications on the micro architecture. A first version consisted in a direct baremetal implementation and a second one added a pseudo scheduling enabling an analysis of the impact of perturbations induced by other applications on the attack. The second attack that was implemented targeted a more realistic victim. The core has been instantiated on an FPGA board running a Linux OS. The goal was to show the realism of the micro architectural threat and evaluate the possibilities of mitigation at the software level. This work also demonstrates the difficulty and time investment that are required to replicate a known attack on a new processor, even when it is open-source and its description is fully available, since such a replication still requires a lengthy analysis period. The replication of these attacks led to the elaboration of protections such as flushing the resources targeted by the attack. Ultimately, a micro architectural modification has been proposed. It enables the processor to bypass leaky micro architectural resources when handling out security-critical information. To this end, two instructions are added for the programmer to use when handling sensitive data.

Location

TIMA Laboratory - Room T312
Mis à jour le 13 January 2023