Maîtrise des correctifs de sécurité pour les logiciels des systèmes
Transcription
Maîtrise des correctifs de sécurité pour les logiciels des systèmes
Maîtrise des correctifs de sécurité pour les logiciels des systèmes navals Chaire de cyberdéfense des systèmes navals École Navale – Télécom Bretagne – Thales – DCNS 27 mai 2015 Résumé Tous les logiciels contiennent des failles, régulièrement ces failles sont découvertes et des correctifs apportés. Cependant l’application de ces correctifs n’est pas toujours possible immédiatement. Le logiciel est alors vulnérable jusqu’à l’application du correctif et, en général, des personnes malveillantes essayent de s’en servir pour pénétrer dans le système contrôlé par le logiciel. Un système naval est un système complexe qui contient une quantité importante de logiciels pour contrôler des équipements qui sont parfois extrêmements sensibles. Protéger un tel système d’une attaque logicielle est donc central pour permettre au navire de réaliser pleinement sa mission. Cependant selon les conditions opérationnelles, il n’est pas toujours nécessaire ou possible d’appliquer les correctifs. Le but de la thèse est de proposer des modèles, méthodes et outils pour permettre de gérer les correctifs de sécurité concernant un système naval et ainsi de maîtriser mieux la sécurité logicielle du navire. La thèse devra cartographier les outils logiciels et systèmes d’exploitation support au sein des différentes typologies de navires du domaine maritime et civil (logiciels de positionnement dynamiques, cartographie, visualisation, transmission d’information etc.) afin de générer une analyse des risques par catégorie et fonction. La thèse aura lieu à Brest. Présentation détaillée Contexte Un système naval moderne est un système composé de très nombreux équipements pour remplir ses missions. Le fonctionnement de ces équipements repose sur un grand nombre de logiciels provenant de nombreux producteurs et répondant à différentes fonctions de navigation et de transmission d’information. La sécurité d’un tel système repose donc sur la sécurité de chacun de ses éléments logiciels donc les différents niveaux de complexité doivent être pris en compte. La gestion des correctifs de sécurité ou patch management est une composante essentielle dans la maîtrise du niveau de sécurité d’un système d’information. En effet, de nombreuses attaques sont réalisées à partir de vulnérabilités connues pour lesquelles il existe des méthodologies d’exploitation publiques et souvent des outils d’exploitation automatisant l’attaque. La plupart de ces failles sont corrigées par des correctifs de sécurité. Ainsi, par exemple, l’avis de sécurité Microsoft MS08-067 présente une vulnérabilité dans le service Serveur qui pourraitpermettre l’exécution de code, souvent malicieux, à distance. Il existe d’ailleurs un module Metasploit (logiciel de test d’intrusion) permettant l’exploitation automatique de cette vulnérabilité. Le correctif pour cette vulnérabilité a été publié en 2008, cependant, certains systèmes ne sont pas encore corrigés à ce jour pour des raisons d’adhérence technologique, de régression fonctionnelle ou de par l’absence d’une politique de gestion des correctifs. Deux types de composants logiciels sont aujourd’hui intégrés dans les systèmes d’information de la défense et plus particulièrement dans le cadre des systèmes navals : — Les logiciels destinés au grand public (tels les systèmes d’exploitation Windows) ou d’autres composants logiciels dit COTS (comme des librairies) massivement utilisés et pour lesquels des alertes de sécurité sont souvent remontées. — Les logiciels développés spécifiquement pour le contexte d’emploi marine dans le système considéré pour lesquels aucun avis public de vulnérabilité n’est publié. Les problématiques sont différentes selon le type du composant logiciel et son contexte d’emploi. Par exemple, pour des logiciels COTS, une attention particulière doit être apportée à l’intégrité lors du téléchargement d’un correctif alors que lors du développement d’un correctif spécifique au système, le problème des effets de bord non-maitrisés peut être très impactant. L’objectif de la thèse est de permettre de maîtriser la sécurité des logiciels d’un système naval en réduisant la surface d’exposition aux attaques. Dans un premier temps la recherche devra catégoriser les différents niveaux de composant logiciels et les fonctions associées et ce, selon les différentes catégories de navires identifiées. Dans un deuxième temps, il s’agira de proposer des méthodes et des outils pour, dans des délais courts, mettre en œuvre des procédures de remédiation maîtrisées pour des vulnérabilités le nécessitant. Vu le caractère critique de tel système, il est clair que cette application de correctifs ne doit pas introduire d’effet de bord et la décision de leur application repose sur la définition d’un seuil de criticité tenant compte des contraintes ou spécificités de chaque système ainsi que des missions du système naval. Problématiques La gestion d’une vulnérabilité s’articule autour d’une connaissance du milieu et de deux actions principales : — La connaissance du milieu impose d’appréhender les différents niveaux de services et de logiciels disponibles au sein de différentes catégories de navire, d’appréhender les fonctions de ces systèmes et les acteurs impliqués à différents niveaux de granularité. — La détection qui doit permettre d’établir une alerte d’application de mise à jour de sécurité. Cette détection devra tenir compte de nombreuses informations disponibles comme la publication de vulnérabilité, des messages d’alerte provenant d’organisme comme le CERT, de message de la part des producteurs de composants logiciels, de détection d’attaque sur le système lui-même ou sur des systèmes similaires (par exemple sur un autre navire de même type). . .La quantité d’alertes sera sans doute grande car la surface d’attaque d’un système naval est très étendue. De plus, ces alertes seront plus ou moins critiques dans le contexte d’un système naval (une alerte de prise de contrôle à distance pour un système non connecté à un réseau peut être considérée car non essentielle). Il est donc nécessaire de définir un seuil de criticité à partir duquel la vulnérabilité doit être traitée en urgence et ce quel que soit le contexte. — La réaction à mettre en œuvre lors d’une alerte. En effet, l’installation d’un correctif de sécurité n’est pas la seule procédure de remédiation possible. Il peut être possible de mettre en œuvre des mesures de contournement permettant de limiter l’impact potentiel d’une vulnérabilité ou rendant l’exploitation de celle-ci difficile voire impossible. La choix de la réaction doit prendre en compte l’état opérationnel du système naval au moment de l’alerte. Ainsi, le traitement peut être différent si le navire est en mission, à quai mais en alerte, en révision. . .Enfin ce traitement peut être temporaire et donner lieu à des traitements complémentaires dans le futur. Par exemple, pendant la mission, on met en place une solution de contournement, puis une fois la mission terminée, un correctif de sécurité est appliqué. L’objectif de cette étude est donc de définir les méthodes d’évaluation de seuil critique en se basant sur les impacts métiers potentiels et l’exploitabilité de la vulnérabilité détectée. Pour cela, il conviendra d’analyser les données disponibles sur les vulnérabilités logicielles, de rencontrer des ingénieurs en charge de cette tâche, et de les confronter au domaine naval. Dans un second temps, il sera également nécessaire de définir une méthode manuelle, semiautomatisée ou automatisée de sélection de la procédure de remédiation à mettre en œuvre en tenant compte : — des adhérences technologiques ; — des typologies et missions des navires ; — du contexte système – à quai ou en mer – et des capacités en découlant ; — du contexte de menace, lié au contexte système ; — des modes dégradés admissibles pour maintenir les fonctions opérationnelles critiques. Lié au contexte système et au contexte de menace, les modes dégradés permettent de définir les pertes suite à une attaque ou les effets de bord acceptables. Enfin, il s’agit de proposer un processus complet de suivi de la gestion des correctifs pour un système naval, de la détection de la vulnérabilité à l’application de la réaction qui aura été choisie toujours en fonction des contextes navires identifiés. En résumé, les problématiques scientifiques concernées par la thèse sont : — la modélisation des notions de (logiciels pour) systèmes navals, de faille de sécurité, de correctif et d’alerte ; — la catégorisation de ces systèmes en fonction de différentes configurations navales et fonctionnelles ; — l’utilisation de sources d’information multiples pour nourrir ces modèles ; — l’utilisation de ces modèles pour classifier les alertes ; — la proposition de procédure (automatique, humaine, hybride) en fonction du contexte ; — le suivi des applications des procédures pour évaluer l’état d’un système continuellement. Approche méthodologique et technique envisagée Les travaux aborderont au moins les points suivant : — Élaboration d’une alerte : définition de la criticité d’une vulnérabilité — Selon le contexte système – navire et mission – définition du contexte de menace en modélisant les relations entre une menace et le logiciel vulnérable puis entre le logiciel et l’impact métier au travers de critères dimensionnant ; — Mise en œuvre d’un algorithme permettant de définir le contexte du SI considéré et de contextualiser la vulnérabilité ; — Mise en œuvre d’une procédure de remédiation adaptée — Définition des solutions palliatives possibles selon le contexte de navire, de mission et de menace définis préalablement dont le dossier d’architecture d’un système permettant la mise en œuvre des solutions. L’intégrité du système et des correctifs proposés doit être étudiée. — Réaliser un algorithme de sélection de procédure selon le contexte technique et fonctionnel système. — Réalisation d’un démonstrateur de la chaine alerte – traitement, en prenant en compte différents contextes dont les systèmes ICS (Industrial Control System). Une partie des travaux comprendra des études empiriques sur les correctifs de sécurité mais aussi une analyse fine et exhaustive des pratiques actuelles des professionnels aussi bien dans le domaine que dans des domaines voisins. Profil du candidat Le candidat doit avoir une solide formation en informatique de façon à bien comprendre les problématiques de gestion d’un ensemble de logiciels. Il doit également maîtriser le domaine de la sécurité et avoir une volonté de développer sa recherche dans un contexte maritime et naval. Le sujet contiendra d’important travaux de modélisation et de proposition de méthode. Le candidat doit donc maîtriser la modélisation de systèmes logiciels complexes (UML / SySML, . . .), la modélisation de processus (BPMN par exemple) et la modélisation de politique de sécurité. Une compréhension de la notion de système d’information mais aussi de système de systèmes permettrait de faciliter le travail. Cadre de la thèse Cette thèse aura lieu dans le cadre de la chaire de cyberdéfense des systèmes navals École Navale – Télécom Bretagne – Thales – DCNS. Elle implique des interactions fortes avec les industriels participant à la chaire et donc des interactions fréquentes avec eux. La thèse sera réalisée à Brest à la fois dans les locaux de la chaire à l’École Navale et dans les locaux de Télécom Bretagne. La direction de la thèse sera assurée par Fabien Dagnat, enseignant chercheur à Télécom Bretagne, Caroline Fontaine, chercheur à Télécom Bretagne, Floriane Alixe, ingénieur à Thales et Christophe Grenier, ingénieur à DCNS.