Analyse de vulnérabilités de systèmes avioniques embarqués : classification et expérimentation

Autor: Dessiatnikoff, Anthony
Jazyk: francouzština
Rok vydání: 2014
Předmět:
Druh dokumentu: Text
Popis: L’évolution actuelle des systèmes embarqués à bord des systèmes complexes (avions,satellites, navires, automobiles, etc.) les rend de plus en plus vulnérables à des attaques,en raison de : (1) la complexité croissante des applications ; (2) l’ouverture des systèmes vers des réseaux et systèmes qui ne sont pas totalement contrôlés ; (3) l’utilisation de composants sur étagère qui ne sont pas développés selon les méthodes exigées pour les systèmes embarqués critiques ; (4) le partage de ressources informatiques entre applications, qui va de pair avec l’accroissement de puissance des processeurs. Pour faire face aux risques de malveillances ciblant les systèmes embarqués, il est nécessaire d’appliquer ou d’adapter les méthodes et techniques de sécurité qui ont fait leurs preuves dans d’autres contextes : Méthodes formelles de spécification, développement et vérification ;Mécanismes et outils de sécurité (pare-feux, VPNs, etc.) ; Analyse de vulnérabilités et contre-mesures. C’est sur ce dernier point que portent nos travaux de thèse.En effet, cet aspect de la sécurité a peu fait l’objet de recherche, contrairement aux méthodes formelles. Cependant, il n’existe pas actuellement de modèle formel capable de couvrir à la fois des niveaux d’abstraction suffisamment élevés pour permettre d’exprimer les propriétés de sécurité désirées, et les détails d’implémentation où se situent la plupart des vulnérabilités susceptibles d’être exploitées par des attaquants : fonctions des noyaux d’OS dédiées à la protection des espaces d’adressage, à la gestion des interruptions et au changement de contextes, etc. ; implémentation matérielle des mécanismes de protection et d’autres fonctions ancillaires. C’est sur ces vulnérabilités de bas niveau que se focalise notre étude.Nos contributions sont résumées par la suite. Nous avons proposé une classification des attaques possibles sur un système temps-réel. En nous basant sur cette classification,nous avons effectué une analyse de vulnérabilité sur un système réaliste : une plateforme avionique expérimentale fournie par Airbus. Il s’agit d’un noyau temps-réel critique ordonnancé avec plusieurs autres applications, le tout exécuté sur une plateforme Freescale QorIQ P4080. C’est à travers une application dite « malveillante », présente parmi l’en-semble des applications, que nous essayons de modifier le comportement des autres applications ou du système global pour détecter des vulnérabilités. Cette méthode d’analyse de vulnérabilités a permis de détecter plusieurs problèmes concernant les accès mémoire,la communication entre applications, la gestion du temps et la gestion des erreurs qui pouvaient conduire à la défaillance du système global. Enfin, nous avons proposé des contre-mesures spécifiques à certaines attaques et des contre-mesures génériques pour le noyau temps-réel qui permet d’empêcher une application d’obtenir des accès privilégiés ou encore de perturber le comportement du système.
Security is becoming a major concern for embedded computing systems in variouscritical industrial sectors (aerospace, satellites, automotive, etc.). Indeed, recent trendsin the development and operation of such systems, have made them more and morevulnerable to potential attacks, for the following reasons : 1) increasing complexity of theapplications ; 2) openness to applications and networks that are note completely undercontrol ; 3) Use Commercial-Off-The-Shelf (COTS) hardware and software components ;4) Resource sharing among different applications, driven by the increase of processorscapabilities.To improve the security of such systems, it is necessary to apply or adapt methodsand techniques that have proven their efficiency in other contexts : Formal methods forspecification, development and verification ; Security mechanisms and tools (firewalls,VPNs, etc.) ; Vulnerability assessment and countermeasure provision.The research carried out in this thesis adresses the latter technique. This aspect ofsecurity analysis cannot be easily covered by current formal methods, since no exist-ing model is able to cover both high-level abstractions, where security properties canbe defined, and low-level implementation details, where most vulnerabilities that couldbe exploited by attackers lie : OS kernel implementation of address space protection,interrupt management, context switching, etc. ; hardware implementation of protectionmechanisms and other ancillary functions. Very few research projects are addressing thisaspect of security, which is the main objective of this thesis. In particular, our researchfocuses on low-level vulnerabilities, but contrarily with common practice, we aim todiscover and analyze them during the development process.Our contributions are summarized as follows. We elaborated a classification of low-level vulnerabilities for different implementations of real-time embedded systems. Basedon this classification, we carried out a vulnerability analysis study on a realistic system :An experimental avionic platform provided by Airbus. It consists of a critical real-timekernel scheduling the execution of different applications on a freescale QorIQ P4080platform. The identification and analysis of vulnerabilities is carried out based on a“malicious” application hosted on the platform that attempts to corrupt the behavior ofthe other applications or the global system considering different types of low level attacks.Such experiments allowed us to identify some problems related to the management ofmemory accesses, the communication between applications, time management and errorhandling that could lead to the global system failure.We have also proposed genericcounter measures to protect the real-time kernel against specific attacks, and to preventa given application from escalating its privileges or trying to compromise the systembehavior
Databáze: Networked Digital Library of Theses & Dissertations