Environnement pour l'analyse de sécurité d'objets communicants
Auteur / Autrice : | Florian Lugou |
Direction : | Ludovic Apvrille, Aurélien Francillon |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 08/02/2018 |
Etablissement(s) : | Université Côte d'Azur (ComUE) |
Ecole(s) doctorale(s) : | École doctorale Sciences et technologies de l'information et de la communication (Nice ; 1992-....) |
Partenaire(s) de recherche : | établissement de préparation : Université de Nice (1965-2019) |
Autre partenaire : Télécom Paris (Palaiseau, Essonne ; 1878-....) | |
Laboratoire : System on Chip (LabSoC) | |
Jury : | Président / Présidente : Vincent Nicomette |
Examinateurs / Examinatrices : Vincent Nicomette, Jean-Michel Bruel, Stéphanie Delaune, Paolo Camurati, Jair Gonzales | |
Rapporteur / Rapporteuse : Jean-Michel Bruel, Stéphanie Delaune |
Résumé
Alors que les systèmes embarqués sont de plus en plus nombreux, complexes, connectés et chargés de tâches critiques, la question de comment intégrer l'analyse précise de sécurité à la conception de systèmes embarqués doit trouver une réponse. Dans cette thèse, nous étudions comment les méthodes de vérification formelle automatiques peuvent aider les concepteurs de systèmes embarqués à évaluer l'impact des modifications logicielles et matérielles sur la sécurité des systèmes. Une des spécificités des systèmes embarqués est qu'ils sont décrits sous la forme de composants logiciels et matériels interagissant. Vérifier formellement de tels systèmes demande de prendre tous ces composants en compte. Nous proposons un exemple d'un tel système (basé sur Intel SGX) qui permet d'établir un canal sécurisé entre un périphérique et une application. Il est possible d'en vérifier un modèle de haut-niveau ou une implémentation bas-niveau. Ces deux niveaux diffèrent dans le degré d'intrication entre matériel et logiciel. Dans le premier cas, nous proposons une approche orientée modèle, à la fois au niveau partitionnement et conception logicielle, permettant une description à haut niveau d'abstraction du matériel et du logiciel et permettant une transformation de ces modèles en une spécification formelle sur laquelle une analyse de sécurité peut être effectuée avec l'outil ProVerif. Dans le second cas, nous considérons une implémentation logicielle et un modèle matériel plus concret pour effectuer des analyses de sécurité plus précises toujours avec ProVerif.