Thèse soutenue

Optimiser l'identification et l'exploitation de vulnérabilités à l'injection de faute sur microcontrôleurs

FR  |  
EN
Auteur / Autrice : Vincent Werner
Direction : Marie-Laure Potet
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 24/01/2022
Etablissement(s) : Université Grenoble Alpes
Ecole(s) doctorale(s) : École doctorale mathématiques, sciences et technologies de l'information, informatique (Grenoble ; 199.-....)
Partenaire(s) de recherche : Laboratoire : Laboratoire Verimag (Grenoble)
Jury : Président / Présidente : Roland Groz
Examinateurs / Examinatrices : Giorgio Di Natale, Erven Rohou, Guillaume Bouffard
Rapporteurs / Rapporteuses : Karine Heydemann, Jean-Max Dutertre

Résumé

FR  |  
EN

L'injection de faute, notamment par lumière focalisée, impulsion électromagnétique, ou perturbation de la tension d'alimentation, est un moyen extrêmement puissant pour compromettre une application embarquée dans un microcontrôleur. En perturbant physiquement l'environnement de ce dernier, il est possible de modifier son comportement pour extraire des informations secrètes, ou pour contourner des mécanismes de sécurité. Si les attaques par injection de faute peuvent théoriquement nuire à la sécurité des systèmes embarqués, la mise en pratique est souvent difficile car la réussite de ces attaques dépend souvent de la capacité à obtenir un effet de faute particulier, or les effets des fautes sur un microcontrôleur ne sont pas connus à l’avance. Dans le but d’évaluer les vulnérabilités à l'injection de faute, les effets des fautes peuvent être simulés par un outil adéquat. Cependant les effets simulés sont souvent hypothétiques et de nombreuses vulnérabilités identifiées par l’outil seront irréalistes en pratique car l’effet supposé n’existe pas.Ainsi, l'objectif de cette thèse est de proposer de nouvelles méthodes, techniques et outils pour réduire l'écart entre simulation et expérimentation, dans le but d'optimiser l'identification et l'exploitation de ces vulnérabilités. Pour cela, nous proposons une méthodologie bout-en-bout, combinant des résultats obtenus expérimentalement et par simulation, dans le but de se concentrer uniquement sur les modèles de faute les plus probables pour améliorer le réalisme des fautes simulées. Cette première approche nous conduira à nous intéresser aux programmes dédiés à la propagation de fautes. Ainsi, nous proposons également plusieurs recommandations pour améliorer la conception de ces derniers, dans le but d'améliorer notre compréhension des fautes sur les microcontrôleurs. Enfin, nous proposons d'utiliser, pour la première fois dans le contexte de l'injection de faute, plusieurs techniques d'optimisation récentes pour optimiser l'identification des meilleurs paramètres d'équipement, afin de faciliter l'exploitation des vulnérabilités à l'injection de faute.