CE39 - Sécurité Globale, Cybersécurité

Attaques sur la micro-architecture des systèmes ubiquitaires – MIAOUS

MIAOUS

Attaques microarchitecturales sur les systèmes du quotidien

Enjeux et objectifs

Le matériel est souvent représenté comme une couche abstraite qui se comporte de manière correcte, exécutant des instructions et produisant un résultat. Cependant, le matériel peut ouvrir la voie à des vulnérabilités au niveau logiciel en créant des effets de bords sur les calculs effectués.<br /><br />Le projet MIAOUS s'intéresse à la sécurité des systèmes d'information et à la protection de la vie privée, et plus précisément dans l'interaction entre le logiciel et le matériel. Nous nous intéressons en particulier aux fuites d’informations par canaux auxiliaires qui ne requièrent aucun accès matériel et qui sont dues à la micro-architecture des processeurs, ainsi qu'à la construction de nouvelles contre-mesures.<br /><br />L'objectif principal de ce projet est de proposer un framework générique pour fournir une meilleure compréhension de la surface d'attaque des attaques sur la micro-architecture, à la fois au niveau du matériel que du logiciel, et les outils pour réduire cette surface d'attaque.

Ce projet est principalement basé sur la recherche empirique, car nous avons l'intention de développer des attaques et des contre-mesures sur du matériel réel. Nous utiliserons des procédures génériques et systématiques pour nous assurer que cette recherche est largement applicable aux di?érentes générations de matériel - ainsi qu'aux générations futures - et que la surface d'attaque a été explorée en profondeur. Nous utiliserons des outils et des méthodes mathématiques tels que les statistiques et l'apprentissage automatique, le cas échéant.

Nous avons exploré la rétro-ingénierie des composants microarchitecturaux suivants :
- Prédicteurs de branchement des CPUs Intel. S'il n'a pas été possible d'obtenir un modèle complet du prédicteur, les expérimentations sur des processeurs récents ont montré qu'il était possible d'obtenir une meilleure approximation du modèle que celle prise en compte dans la littérature des attaques par canaux auxiliaires. Nous avons utilisé des compteurs de performance.

Nous nous sommes également concentrés sur les attaques de synchronisation dans les navigateurs, et nous avons notamment étudié l'impact des changements apportés aux timers JavaScript. Nous avons découvert que, bien que l'isolation récemment fournie par les navigateurs soit capable de contrecarrer certaines classes d'attaques (par exemple, certaines attaques d'exécution spéculative), les navigateurs sont en réalité plus vulnérables aux attaques par timing basées sur la contention matérielle aujourd'hui qu'il y a quelques années.
- Prédicteur de voie du cache L1 des CPUs AMD. En utilisant une attaque par timing, nous avons pu effectuer la rétro-ingénierie de ce prédicteur sur les microarchitectures allant de 2011 à 2019. En utilisant cette connaissance, nous avons pu élaborer deux nouvelles primitives d’attaques par canaux auxiliaires sur le L1 qui permettent ensuite de créer un canal caché, de réduire l'entropie de l'ASLR en espace utilisateur et en espace noyau, et d'attaquer des implémentations cryptographiques vulnérables.
- Intel CPU interconnect. Nous avons effectué une série de mesures fines afin d'effectuer une rétro-ingénierie de l'interconnect. En prenant en compte le rôle de ce composant ainsi que du protocole de cohérence de cache dans les attaques sur le cache, nous avons amélioré l'attaque Flush+Flush, la rendant pratiquement exempte d'erreurs et aussi rapide que Flush+Reload.

Nous continuons d'explorer l'impact des attaques microarchitecturales sur les navigateurs web.

SoK: In Search of Lost Time: A Review of JavaScript’s Timers in Browsers
Thomas Rokicki, Clémentine Maurice, Pierre Laperdrix.
6th IEEE European Symposium on Security and Privacy (EuroS&P'21)

Calibration Done Right: Noiseless Flush+Flush Attacks
Guillaume Didier, Clémentine Maurice.
18th Conference on Detection of Intrusions and Malware & Vulnerability Assessment (DIMVA'21)

Nethammer: Inducing Rowhammer Faults through Network Requests
Moritz Lipp, Misiker Tadesse Aga, Michael Schwarz, Daniel Gruss, Clémentine Maurice, Lukas Raab, Lukas Lamster.
Workshop on the Security of Software/Hardware Interfaces (SILM'20, co-located with EuroS&P 2020)

Take A Way: Exploring the Security Implications of AMD's Cache Way Predictors
Moritz Lipp, Vedad Hadžic, Michael Schwarz, Arthur Perais, Clémentine Maurice, Daniel Gruss.
15th ACM ASIA Conference on Computer and Communications Security (ASIACCS'20)

Branch Prediction Attack on Blinded Scalar Multiplication
Sarani Bhattacharya, Clémentine Maurice, Shivam Bhasin, Debdeep Mukhopadhyay
IEEE Transactions on Computers, vol. 69, no. 5, pp. 633-648, 1 May 2020

Le matériel est souvent représenté comme une couche abstraite qui se comporte de manière correcte, exécutant des instructions et produisant un résultat. Cependant, le matériel peut ouvrir la voie à des vulnérabilités au niveau logiciel en créant des effets de bords sur les calculs effectués.

Le projet MIAOUS s'intéresse à la sécurité des systèmes d'information et à la protection de la vie privée, et plus précisément dans l'interaction entre le logiciel et le matériel. Nous nous intéressons en particulier aux fuites d’informations par canaux auxiliaires qui ne requièrent aucun accès matériel et qui sont dues à la micro-architecture des processeurs, ainsi qu'à la construction de nouvelles contre-mesures.

L'objectif principal de ce projet est de proposer un framework générique pour fournir une meilleure compréhension de la surface d'attaque des attaques sur la micro-architecture, à la fois au niveau du matériel que du logiciel, et les outils pour réduire cette surface d'attaque.

Coordination du projet

Clémentine MAURICE (Institut de Recherche en Informatique et Systèmes Aléatoires)

L'auteur de ce résumé est le coordinateur du projet, qui est responsable du contenu de ce résumé. L'ANR décline par conséquent toute responsabilité quant à son contenu.

Partenaire

IRISA Institut de Recherche en Informatique et Systèmes Aléatoires
Graz University of Technology / IAIK

Aide de l'ANR 252 860 euros
Début et durée du projet scientifique : septembre 2019 - 48 Mois

Liens utiles

Explorez notre base de projets financés

 

 

L’ANR met à disposition ses jeux de données sur les projets, cliquez ici pour en savoir plus.

Inscrivez-vous à notre newsletter
pour recevoir nos actualités
S'inscrire à notre newsletter