Evaluation de la sécurité physique des SoC
Auteur / Autrice : | Thomas Trouchkine |
Direction : | Jessy Clédière, Guillaume Bouffard |
Type : | Thèse de doctorat |
Discipline(s) : | Nanoélectronique et nanotechnologie |
Date : | Soutenance le 24/03/2021 |
Etablissement(s) : | Université Grenoble Alpes |
Ecole(s) doctorale(s) : | École doctorale électronique, électrotechnique, automatique, traitement du signal (Grenoble ; 199.-....) |
Partenaire(s) de recherche : | Laboratoire : Laboratoire d'électronique et de technologie de l'information (Grenoble ; 1967-....) |
Jury : | Président / Présidente : Marie-Laure Potet |
Examinateurs / Examinatrices : Clémentine Maurice, Jean-Max Dutertre, Patrick Robert Schaumont, Lilian Bossuet | |
Rapporteurs / Rapporteuses : Karine Heydemann, Philippe Maurine |
Mots clés
Mots clés contrôlés
Résumé
De nos jours, nos appareils mobiles sont utilisés pour réaliser desopérations sensibles telles que du paiement, de l’identification ou lagestion de services santé. Historiquement, ces opérations sont réal-isées par des appareils conçus et évalués pour résister à diverses at-taques: les éléments sécurisés. En revanche, les appareils mobiles sontconçus pour fournir la meilleure performance possible et ne subissentaucune évaluation de sécurité. Cet état de fait interroge sur la résis-tance de ces appareils face aux attaques classiques contre lesquellesse protègent les éléments sécurisés.Parmi ces attaques, nous nous proposons, dans cette thèse, d’étudierles attaques par perturbations. Ces attaques consiste à modifier lesconditions d’exécution du circuit ciblé afin d’induire des erreurs dansson fonctionnement. Ces erreurs volontaires, communément appeléesfautes, permettent de créer des failles dans la cible pouvant allerjusqu’à la cryptanalyse d’un algorithme de chiffrement ou l’authentifi-cation d’un utilisateur non autorisé.Bien que ces méthodes d’attaques soient connues et étudiées surles éléments sécurisés, les appareils modernes reposent sur des pro-cesseurs modernes présentant des différences par rapport aux pro-cesseur des éléments sécurisés. Cela peut être le nombre de modulequ’ils embarquent, leur finesse de gravure ou des optimisations.L’impact de ces différences sur la sécurité des processeur n’a pasété étudié en prenant en compte la possibilité d’induire des fautes.C’est ce que nous réalisons dans cette thèse. Nous définissons uneméthode permettant de caractériser les effets de perturbations surun processeur moderne que nous appliquons sur trois processeursreprésentatifs des appareils existants: le BCM2837, le BCM2711b0 etl’Intel Core i3-6100T. Nous avons également utilisés deux moyensde perturbation classiques: l’injection d’onde électromagnétique etl’utilisation d’un laser. L’étude de ces cibles, en variant les moyensd’injections de faute, nous a permis de déterminer qu’elles réagissenttoutes de manière similaire aux différentes perturbations malgré leurdifférente architecture. L’effet le plus marquant étant la modificationdes instructions exécutées.Ce type de faute est très fort car il permet de modifier une par-tie du programme exécuté pendant son exécution. Vérifier le pro-gramme avant de l’exécuter ne protège en rien face à ce type defautes, par exemple. C’est pourquoi nous avons également étudié larésistance des mécanismes de sécurité présents dans ces cibles faceà ce type de faute. Nous avons notamment réussi à cryptanalyserl’implémentation de l’algorithme de chiffrement AES de la biblio-thèque OpenSSL, très utilisé dans les systèmes utilisant Linux. Nous avons également étudié la résistance du mécanisme d’authentificationdes utilisateurs d’un système Linux en regardant le programme sudo .Cette étude nous a, en particulier, révélé que la communauté manqued’outils efficace pour analyser ce type de programmes face aux fautes.En effet, les programmes s’exécutant dans un environnement Linuxbénéficient de nombreux mécanismes liés au noyau Linux qui rendentl’exécution d’un programme difficile à étudier.