Suivi de flux d'information correct pour les systèmes d'exploitation Linux

Laurent Georget 1, 2
2 CIDRE - Confidentialité, Intégrité, Disponibilité et Répartition
CentraleSupélec, Inria Rennes – Bretagne Atlantique , IRISA_D1 - SYSTÈMES LARGE ÉCHELLE
Résumé : Nous cherchons à améliorer l'état de l'art des implémentations de contrôle de flux d'information dans les systèmes Linux. Le contrôle de flux d'information vise à surveiller la façon dont l'information se dissémine dans le système une fois hors de son conteneur d'origine, contrairement au contrôle d'accès qui ne peut permettre d'appliquer des règles que sur la manière dont les conteneurs sont accédés. Plusieurs défis scientifiques et techniques se sont présentés. Premièrement, la base de code Linux est particulièrement grande, avec quinze millions de lignes de code réparties dans trente-mille fichiers. La première contribution de cette thèse a été un plugin pour le compilateur GCC permettant d'extraire et visualiser aisément les graphes de flot de contrôle des fonctions du noyau. Ensuite, le framework des Linux Security Modules qui est utilisé pour implémenter les moniteurs de flux d'information que nous avons étudiés (Laminar [1], KBlare [2] et Weir [3]) a été conçu en premier lieu pour le contrôle d'accès, et non de flux. La question se pose donc de savoir si le framework est implémenté de telle sorte à permettre la capture de tous les flux produits par les appels système. Nous avons créé et implémenté une analyse statique permettant de répondre à ce problème. Cette analyse statique est implémenté en tant que plugin GCC et nous a permis d'améliorer le framework LSM pour capturer tous les flux. Enfin, nous avons constaté que les moniteurs de flux actuels n'étaient pas résistants aux conditions de concurrence entre les flux et ne pouvaient pas traiter certains canaux ouverts tels que les projections de fichiers en mémoire et les segments de mémoire partagée entre processus. Nous avons implémenté Rfblare, un nouvel algorithme de suivi de flux, pour KBlare, dont nous avons prouvé la correction avec Coq. Nous avons ainsi montré que LSM pouvait être utilisé avec succès pour implémenter le contrôle de flux d'information, et que seules les méthodes formelles, permettant la mise en œuvre de méthodologie, d'analyses ou d'outils réutilisables, permettaient de s'attaquer à la complexité et aux rapides évolutions du noyau Linux.
Type de document :
Thèse
Système d'exploitation [cs.OS]. Université Rennes 1, 2017. Français. 〈NNT : 2017REN1S040〉
Liste complète des métadonnées

Littérature citée [106 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/tel-01657148
Contributeur : Abes Star <>
Soumis le : mardi 12 décembre 2017 - 00:45:38
Dernière modification le : mercredi 16 mai 2018 - 11:24:13

Fichier

GEORGET_Laurent.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : tel-01657148, version 2

Citation

Laurent Georget. Suivi de flux d'information correct pour les systèmes d'exploitation Linux. Système d'exploitation [cs.OS]. Université Rennes 1, 2017. Français. 〈NNT : 2017REN1S040〉. 〈tel-01657148v2〉

Partager

Métriques

Consultations de la notice

354

Téléchargements de fichiers

100