Etude de mécanismes de restauration autonomes pour les systèmes embarqués
Auteur / Autrice : | Zoé Lagache |
Direction : | Oum-El-Kheir Aktouf |
Type : | Projet de thèse |
Discipline(s) : | Informatique |
Date : | Inscription en doctorat le 18/09/2023 |
Etablissement(s) : | Université Grenoble Alpes |
Ecole(s) doctorale(s) : | École doctorale Mathématiques, sciences et technologies de l'information, informatique (Grenoble ; 1995-....) |
Partenaire(s) de recherche : | Laboratoire : Laboratoire de conception et d'intégration des systèmes |
Mots clés
Mots clés libres
Résumé
Le déploiement à grande échelle d'objets communicants dans tous les domaines, y compris les plus critiques, est accompagné de risques avérés en matière de cybersécurité. Cela d'améliorer la résilience des objets connectés en anticipant les futures menaces, en améliorant leur résistance aux attaques et en garantissant leur réparation après une attaque. Ces fonctions sont considérées par le NIST comme prioritaires pour obtenir un système sécurisé. Si les mécanismes de protection ou de détection de menaces sont actuellement bien couverts, la réparation après attaque est encore peu présente dans la littérature scientifique. L'objectif de cette thèse est d'identifier des solutions permettant de restaurer les fonctions ou tâches critiques d'un dispositif embarqué après la détection d'un événement non désiré. De nombreux travaux de recherche se sont focalisés sur la définition de solutions de restauration dans le domaine de la sûreté, l'application de ces techniques au domaine de la sécurité est plus récente, et encore peu de travaux adressent l'applicabilité de ces méthodes à ce domaine. Si les principes de restauration peuvent être identiques dans les domaines de la sûreté et de la sécurité, dans le cas d'action malveillante, il est en plus nécessaire de rendre le système de restauration robuste contre des tentatives de corruption par l'attaquant. En effet, celui-ci peut faire évoluer son attaque afin de leurrer le système de restauration ou bien même corrompre la restauration elle-même. Une des hypothèses de départ pris dans cette thèse est que le système possède déjà un ou plusieurs modules de détection d'événements anormaux. À partir de cet état anormal, la solution doit permettre la restauration du logiciel après avoir vérifié l'intégrité du bloc logiciel défaillant grâce à une sauvegarde du contexte à intervalles réguliers. Dans le cadre de cette thèse, l'étude portera uniquement sur les processeurs intégrant un OS de type Linux embarqué. Cette thèse doit permettre de lever un certain nombre de verrous concernant l'applicabilité de la restauration des systèmes dans le domaine sécuritaire : Il est nécessaire en premier lieu d'apporter des garanties quant à la confiance que l'on peut avoir dans le système de restauration. On s'intéressera ainsi à la sécurisation intrinsèque des mécanismes de restauration : - La sauvegarde de contexte et sa restauration sont les fonctions les plus critiques du système et ne doivent pas être la cible de l'attaque ou être utilisée pour mener une attaque. La connaissance des mécanismes ne doit pas permettre à un attaquant de modifier le comportement de son système afin de contourner la protection. - L'impact des mécanismes de sécurité d'isolation matérielle sur les solutions développées devra être considéré. Des méthodes de validation pourront aussi être mises en place dès la conception : - Des outils de type FMEA permettent d'automatiser la détection de fautes dans le flux de contrôle, d'identifier les points d'intérêt et de préparer la phase de validation de la solution. Des modèles et outils de fautes existent également dans le contexte de la sécurité et pourront être utilisés dans le cadre de notre analyse. - Les stratégies fail-safe et fail-secure décrivent le comportement d'un système en cas de panne. En fonction du ou des scénarios d'usage, il sera nécessaire d'assurer que les fonctions les plus critiques ne soient pas impactées par la solution mise en place. Pour faciliter l'acceptation de ces méthodes, leur impact au niveau système doit être minimal : - Passage à l'échelle : dans un premier temps, on étudiera des systèmes autonomes puis on étudiera l'applicabilité de l'approche dans des systèmes distribués. - Optimisation de la solution : une telle solution n'est viable que si elle possède un overhead en temps et mémoire et un coût faibles. Les tests de performances sur cible réelle ou émulée devront permettre de vérifier les optimisations réalisées.