Désassemblage par canaux auxiliaires sur processeurs complexes : De la caractérisation microarchitecturale aux modèles probabilistes
(Document en Anglais)
- Thèse soumise à l'embargo de l'auteur jusqu'au 01/09/2025 (accès réservé aux membres de l'enseignement supérieur français) Accéder au(x) document(s) : Ce document est protégé en vertu du Code de la Propriété Intellectuelle.
- Auteur
- Maillard Julien
- Date de soutenance
- 13-12-2024
- Directeur(s) de thèse
- Clavier Christophe
- Président du jury
- Potet Marie-Laure
- Rapporteurs
- Goubin Louis - Bossuet Lilian
- Membres du jury
- Le Bouder Hélène - Linge Yanis - Hiscock Thomas - Lecomte Maxime
- Laboratoire
- XLIM - UMR CNRS 7252
- Ecole doctorale
- École doctorale Sciences et Ingénierie (Limoges ; 2022-)
- Etablissement de soutenance
- Limoges
- Discipline
- Informatique
- Classification
- Informatique, information, généralités
- Mots-clés libres
- Attaque par canaux auxiliaires, Désassemblage par canaux auxiliaires, Attaques de microarchitecture, Propagation de croyances, System-on-chip
- Mots-clés
- Systèmes informatiques -- Mesures de sûreté - Évaluation,
- Cryptographie - Mesures de sûreté - Évaluation,
- Cryptographie post-quantique - Simulation, Méthodes de,
- Protection de l'information (informatique)
Le désassemblage par canaux auxiliaires (SCBD) est une famille d’attaques par canaux auxiliaires (SCA) dont le but est de retrouver de l’information à propos du code exécuté par un processeur via l’observation de canaux physiques comme la consommation électrique ou le rayonnement électromagnétique. Alors que les SCA classiques ciblent majoritairement des clés cryptographiques, le SCBD vise à récupérer du code assembleur difficile à extraire par d’autres moyens. Un exemple typique est le bootloader, qui est le premier programme exécuté au démarrage d’un dispositif électronique. La découverte d’une vulnérabilité dans un bootloader peut mener à la compromission totale du dispositif qui l’exécute. Le SCBD a été montré faisable sur de petits microcontrôleurs possédant une microarchitecture simple et un jeu d’instructions réduit. Cependant, l’essor des System-on-Chips (SoCs) complexes dans les smartphones, l’automobile ou l’avionique, rend nécessaire l’évaluation du risque posé par le SCBD sur ces plateformes. Par conséquent, dans cette thèse, nous nous intéressons à la faisabilité du SCBD sur les SoCs. Dans un premier temps, nous investiguons l’impact de la complexité microarchitecturale des SoCs sur les techniques de SCBD existantes. Nous montrons que ces dernières ont des difficultés à fournir des prédictions fiables sur des phénomènes de petite échelle, laissant une grande quantité d’incertitude à l’attaquant. Néanmoins, les phénomènes manipulant plus de ressources, comme les accès à la mémoire DRAM, peuvent être plus facilement distingués. Cette observation nous conduit à proposer trois nouvelles attaques hybrides, à l’intersection entre les attaques physiques et les attaques de microarchitecture. Dans un second temps, nous traitons l’incertitude inhérente au SCBD sur SoC en développant un outil générique et flexible. Cet outil permet de réaliser des attaques à base de modèles probabilistes (SASCA). Il se base sur un algorithme de propagation de croyances (BP) qui opère sur un modèle de graphe appelé factor graph. Cet outil nous permet d’opérer à des attaques sur les fonctions de hachage SHA-2 et SHA-3, ce qui, dans certains cas d’usage, mène à un moyen détourné de réaliser du SCBD. Enfin, nous introduisons un modèle probabiliste de désassemblage par canaux auxiliaires (SASCBD), qui permet d’agréger les prédictions imparfaites issues d’un SCBD classique. En plus d’exploiter efficacement la structure du jeu d’instruction, ce modèle permet d’incorporer de la connaissance bien plus riche, comme par exemple les propriétés du code assembleur à l’échelle d’un programme entier.
- Type de contenu
- Text
- Format
Pour citer cette thèse
Maillard Julien, Désassemblage par canaux auxiliaires sur processeurs complexes : De la caractérisation microarchitecturale aux modèles probabilistes, thèse de doctorat, Limoges, Université de Limoges, 2024. Disponible sur https://aurore.unilim.fr/ori-oai-search/notice/view/2024LIMO0104