Thèse soutenue

Sécurité par contrôle de flux d'applications asynchrones, distribuées et mobiles
FR  |  
EN
Accès à la thèse
Auteur / Autrice : Felipe Luna del Aguila
Direction : Isabelle Attali
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 2005
Etablissement(s) : Nice

Résumé

FR  |  
EN

L'objectif pour ce travail est de proposer une solution de sécurité pour contrôler des flux d'information, spécifiquement par un mécanisme de contrôle d'accès et de flux. L'objectif vise les applications réparties en utilisant les objets actifs avec des communications asynchrones. Il inclut une politique de sécurité et les mécanismes qui imposeront les règles présentes dans de telles politiques. La confidentialité des données et des flux d'information sécurisés est fournie par une vérification dynamique des communications. Tandis que les flux d'information sont généralement vérifiés statiquement {Mye,BN03,Her,HR_infoFlow,ZZN+,Sab,HVY,CBC}, notre attention est concentrée sur des vérifications dynamiques. Pour la réaliser, le modèle proposé a une politique de contrôle de l'information qui inclut des règles discrétionnaires, et comme ces règles sont dynamiquement exécutables, il est possible de tirer profit des contrôles dynamiques pour effectuer en même temps tous les contrôles obligatoires. Les autres avantages de cette approche font que: les contrôles dynamiques n'exigent pas la modification des compilateurs, ne changent pas le langage de programmation, n'exigent pas des modifications aux codes sources existants, et fournissent une flexibilité au moment d'exécution. Ainsi, les contrôles dynamiques sont bien adaptés pour être inclus dans une couche logiciel de type middleware, qui, d'une façon non-intrusive, fournit et assure des services de sécurité aux applications de niveau supérieur. Le modèle de programmation fondamental {CKV} est basé sur les objets actifs, les communications asynchrones, et les synchronisations de flux de données. Ces notions sont liées au domaine des systèmes répartis mais avec une caractéristique qui le distingue des autres: la présence d'entités mobiles, indépendants et capables d'agir l'un sur l'autre avec d'autres entités également mobiles. Par conséquent, le modèle de sécurité proposé se fonde fortement sur des règles de politique de sécurité avec des conditions obligatoires pour le contrôle des flux d'information. Des niveaux de sécurité sont employés pour étiqueter indépendamment les entités impliquées dans les événements de communication: objets actifs et données transmises. Cet étiquetage "indépendant" est sujet cependant à des règles discrétionnaires. La combinaison des règles obligatoires et discrétionnaires permet de relâcher les contrôles strictes imposés par l'utilisation unique des règles obligatoires. Le modèle final de sécurité suit une approche dont les avantages sont doubles: Une base saine. Le modèle de sécurité est fondé sur un fond théorique fort, le calcul séquentiel asynchrone des processus (ASP) {CHS_POPL04}, lié aux formalismes bien connus {HR_infoFlow,Hen,CBC,CF}. Puis, la sémantique formelle d'ASP est étendue avec de nouvelles prémisses. Ceci fournit une base formelle à notre modèle et, en même temps, permet de vérifier dynamiquement les accès non autorisés. En conclusion, afin de prouver l'exactitude du modèle de sécurité, une propriété intuitive pour la sécurisation de flux de l'information est définie et est assurée par l'application du modèle de contrôle d'accès. Extensibilité et flexibilité. Une application pratique de ce modèle est également visé, par une intégration dans des logiciels du type middleware, comme par exemple ProActive. La granularité de ce modèle de sécurité est défini afin de la rendre efficace (parce qu'il n'y a aucune sécurité à vérifier à l'intérieur d'une activité) et finement réglable: des niveaux de sécurité peuvent être définis sur des activités en raison de l'absence de la mémoire partagée, mais un niveau spécifique peut être indiqué pour les paramètres des requêtes et les activités créées. D'ailleurs, l'implémentation pratique du mécanisme de sécurité permet son utilisation par des appels de bibliothèque de haut niveau sans avoir besoin de changer le langage de programmation ou d'imposer l'existence de compilateurs spéciaux.