AS « Sécurité des Logiciels Embarqués » Axe 3 : Modèles pour la Disponibilité et la Survivabilité Frédéric Cuppens Directeur de recherches.

Slides:



Advertisements
Présentations similaires
Yassine Lakhnech Prof. UJF Verimag
Advertisements

Les Systèmes d’Information Financière Atelier conjoint ACBF / Banque Mondiale / AFRITAC de l’Ouest Gérer l’application dans le temps, sur les plans fonctionnel,
© Copyright 2007 Arumtec. All rights reserved. Présentation Etude déligibilité
2002 Exploratoire ASTRÉE : Analyse Statique de logiciels Temps-RÉel Embarqués 1)Le problème considéré est de démontrer statiquement (à la compilation)
Réflexivité et réseaux d’ information
Projet FIACRE 1 ACI Sécurité InformatiqueToulouse, novembre 2004 FIACRE Fiabilité des Assemblages de Composants Répartis Modèles et outils pour lanalyse.
Spécification et qualité du logiciel
Sommaire Introduction Les politiques de sécurité
Gestion de l'information
Systèmes à base de connaissances
D2 : Sécurité de l'information et des systèmes d'information
Régine Laleau Centre d'Étude et de Recherche en Informatique du CNAM
Algèbre relationnelle
Les bases de données temps-réel
La politique de Sécurité
JC Avril 2005 Intégration des propriétés non fonctionnelles dans les composants de communication Eveline KABORE Antoine Beugnard.
"Recherche de scénarios redoutés à partir d'un modèle réseau de Petri"
INTRODUCTION.
Système de gestion de bases de données. Modélisation des traitements
Alain Le Guennec Jean-Marc Jézéquel Action Triskell
                                        République Algérienne Démocratique et Populaire Ministère de l’Enseignement Supérieur et de la Recherche Scientifique.
La revue de projet.
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Des RRA à la diagnosticabilité
DE LA RECHERCHE AU PLAIDOYER
le profil UML en temps réel MARTE
Programmation logique Logique des prédicats du premier ordre
Introduction à la conception de Bases de Données Relationnelles
LL et modalités Conception inférentialiste des modalités (sans mondes possibles) Considérer les régimes dinférence propres aux connecteurs de base de LL.
RDF(S)
Techniques de test Boulanger Jean-Louis.
OIL & UPML DREVET - HUMBERT Introduction OIL : un langage de description dontologies UPML : un langage de description de systèmes à base.
IGL301 - Spécification et vérification des exgiences 1 Chapitre 1 Introduction (ref : Bray chapitre 1)
Rappels de logique des prédicats du 1er ordre
Présentation du mémoire
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Notions de Base Hiver 2002 Petko Valtchev.
Méthodes formelles pour la conception de systèmes répartis par Luigi Logrippo et tous ses collaborateurs et étudiants École d`ingénierie et technologie.
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Initiation aux bases de données et à la programmation événementielle
Introduction Evolution technologique –Puissance des machines –Réseau rapides (ADSL : 30 euros/mois) –Manipulation digitale de l'audio et de la vidéo Applications.
Programmation non procédurale Le projet ECOLE 2000
ANALYSE METHODE & OUTILS
La sécurité dans les réseaux mobiles Ad hoc
La réplication dans les réseaux mobiles ad hoc
INTRODUCTION.
Modèle Conceptuel de Traitement
Supports de formation au SQ Unifié
Hatainville Les Moitiers d’Allonne – Tel : Website : stratic.online.com La démarche projet Mars 2001.
Paramètres significatifs dans le processus de modélisation de la disponibilité Rennes le 24 mars 2004 Ahmed Bouabdallah, Nora Cuppens-Boulahia et Frédéric.
Approches Formelles en Systèmes d'information
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
VALIDATION VÉRIFICATION & TESTS
Initiation à la conception des systèmes d'informations
Structures de données avancées : Fichiers multidimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) zegour.esi.dz
François CARCENAC,Frédéric BONIOL ONERA-DTIM Zoubir MAMMERI IRIT
10 juin 2008 Journée Technologies et Enjeux de l'Apprentissage Mobile Equipe SIMBAD.
Contributions de l’ENST Bretagne à l’ACI Dispo RSM/SERES.
1 Initiation aux bases de données et à la programmation événementielle Responsable : Souheib BAARIR. (le sujet de votre .
Sécurité et Internet Formation.
Notifications et Communication réseau D. BELLEBIA – 18/12/2007NSY208 CNAM.
Réalisé par : Mr. B.BENDIAF Mr. H.REHAB.
Principes et définitions
Séquence 4 : Contrôle Interne
Initiation aux SGBD Frédéric Gava (MCF)
Cours Cotation TD TP.
LOGIQUE ET PROGRAMMATION LOGIQUE
INTRODUCTION AUX BASES DE DONNEES
Café In: A quoi ca sert la recherche sur la programmation? Comment peut on faire travailler des ordinateurs ensemble? Ludovic Henrio SCALE TeamSCALE Team.
PRÉSENTATION AGL LES TESTS LOGICIELS LES TEST LOGICIELS 1 Mickael BETTINELLI Brandon OZIOL Gaétan PHILIPPE Simon LUAIRE.
19 avril Spécification d’un cadre d’ingénierie pour les réseaux d’organisations Laboratoire de recherche : OMSI à l’EMSE.
Transcription de la présentation:

AS « Sécurité des Logiciels Embarqués » Axe 3 : Modèles pour la Disponibilité et la Survivabilité Frédéric Cuppens Directeur de recherches

Sécurité Informatique = Garantir 3 propriétés Introduction Traditionnellement, Sécurité Informatique = Garantir 3 propriétés Confidentialité Pas de divulgation non autorisée d ’information Intégrité Pas de modification non autorisée d ’information Disponibilité Pas de déni d’accès non autorisé aux informations ou aux ressources (Définitions ITSEC)

Confidentialité Nombreux modèles Mise en œuvre de techniques de preuve Bell et LaPadula Non Interférence Non Déduction Non Inférence Causalité … Mise en œuvre de techniques de preuve Preuve statique de code Validation de mécanismes de contrôle d ’accès

Intégrité Moins de modèles Biba Dual de Biba pour l ’intégrité Clark-Wilson Transactions bien formées Séparation des tâches Contrôle d ’accès Cuppens-Saurel Gestion des droits des utilisateurs Gestion de l ’intégrité des informations Crédibilité des sources Règles de propagation de l ’intégrité entre concepts Evolution de l ’intégrité aux cours du temps

Disponibilité Beaucoup moins de modèles ! Yu et Gligor (1990) Expression de propriétés de disponibilité Millen (1992) Modèle de disponibilité orienté allocation de ressources Cuppens-Saurel (1999) Expression d ’une politique de disponibilité Model checking pour analyser la disponibilité d ’un système

Disponibilité : définitions Deux Définitions possibles Définition 1 Pas de « déni de service » Déni de service = réduction des performances du système, intentionnelle ou accidentelle Disponibilité = « Safety property » Définition 2 Capacité du système à fournir des services aux utilisateurs autorisés dans des conditions d ’utilisation données Disponibilité = « Liveness property » Remarque : Définition 2  Définition 1

Définition 1 : disponibilité = pas de déni de service Objectif Protéger le système contre les attaques en déni de service Une des problématiques de la détection d ’intrusion Dans la pratique On a des protocoles vulnérables On sait qu’ils vont subir des attaques Conséquences On n ’essaye pas de prouver que ces protocoles satisfont des propriétés de disponibilité On essaye plutôt de détecter des attaques contre ces protocoles

Détection des attaques en déni de service En général, on suppose que l ’on « connaît » les attaques en déni de service On spécifie la signature de l ’attaque Permet de détecter l ’attaque On spécifie ensuite que « Attaque  Deny » Mais, on ne précise pas la sémantique du prédicat « Deny »

« Attaque1  Attaque2  …  Attaquen Besoin de formaliser le « Deny » Problème ouvert Détection des dénis de service distribués (DDOS) . . . « Attaquei  Deny » Mais : « Attaque1  Attaque2  …  Attaquen  Deny » Besoin de formaliser le « Deny » Attaque2 Attaquen Attaque1

Définition 2 : disponibilité = capacité de fournir des services Capacité du système à fournir des services aux utilisateurs autorisés dans des conditions d ’utilisation données Conditions d ’horaires, de délai et de performances Conditions sur le système et l ’utilisation des ressources Concept de politique de disponibilité A.P : Availability Policy Exemple : R1 : Le sujet S doit pouvoir commencer à réaliser la tâche TT au plus tard 6 unités de temps après sa requête R2 : Le sujet S doit pouvoir disposer de la ressource nécessaire à TT au plus tard 4 unités de temps après l ’avoir demandée R3 : La durée maximale de réalisation de la tâche TT est de 9 unités de temps

Etude de la disponibilité : les problèmes Définition Formalisation Vérification cohérence POLITIQUE DISPONIBILITE SYSTEME REEL Formalisation Dérivation PROPRIETES DISPONIBILITE FORMALISATION SYSTEME REEL Validation

Langage pour représenter une politique de disponibilité Concepts de base à exprimer : Ressource : type (mémoire, CPU…), attributs (taille…), état (occupé, libre), structure (décomposition en ressources élémentaires) Tâche : ressources nécessaires, durée nécessaire d’utilisation de chaque ressource, ordre de passage entre ressources Sujet : ressources consommées, état (attente, choisi, en cours de réalisation…) actif ou pas (CPU) Notions temporelles : événements (réalisation d ’une tâche), intervalles (délais d ’attente), durée, date (points temporels) Concepts déontiques : droits des sujets sur les ressources ou les tâches formulés en termes d ’obligations, de permissions et d ’interdictions

Langage pour représenter une politique de disponibilité Logique du premier ordre avec égalité Logique temporelle (temps discret) hold-at(p,t), hold(p, [t1,t2]) (cf Sripada, 1993) Modalités déontiques Op : p est obligatoire Fp : p est interdit (O¬p) Pp : p est permis (¬O¬p) permission implicite (hypothèse facile à lever) Prédicats dédiés pour représenter les concepts relatifs à la disponibilité subject(s), task(t), resource(r), use(s,r), asks(s,r), gets(s,r), release(s,r) ... task-duration(t,d), max-task-duration(t,d), resource-needs(t,rt,d,q) ...

Spécification d’une politique de disponibilité Droits d ’accès aux ressources Please Thank You Bye Subject s asks for an access to resource r s gets an access to resource r s releases resource r Waiting time for r Use time of r Constrained by predicate disposal-right Constrained by predicate use-right

Spécification d’une politique de disponibilité Droits associés aux tâches Please Thank You Bye

Spécification d’une politique de disponibilité Priorités entre (sujet, tâche) priority ([s1,t1],[s2,t2]) : (s1,t1) est prioritaire sur (s2,t2) expression de conditions de priorité (urgence, hiérarchie…) dans des formules du langage Conventions d ’utilisation (user agreements) ex : Quand un sujet a fini une tâche consommant une ressource, il doit abandonner cette ressource.

Cohérence d’une politique de disponibilité Principe : si l ’ A.P. spécifie qu’un sujet a la permission / l ’obligation de faire quelque chose, alors elle doit spécifier que ce sujet a la permission d ’avoir les moyens pour le faire Définition d ’un ensemble de contraintes devant être vérifiées par l ’A.P. Une A.P. est cohérente s ’il est possible de montrer que ces contraintes sont des théorèmes de l ’A.P.

Conformité entre un système et sa politique de disponibilité Principes : 1- Toute opération réalisée dans le système est autorisée dans la politique de disponibilité 2- Toute opération obligatoire dans la politique de disponibilité est réalisée dans le système Dérivation de contraintes de conformité entre le système et la politique Hypothèse : on dispose d ’une spécification logique du système Un système est conforme à une A.P. s’il est possible de montrer que ces contraintes de conformité sont des théorèmes de cette spécification logique

Vérification d ’une propriété de disponibilité Contrôle de la disponibilité des ressources, et de la réalisation des tâches Cas particuliers : Politique de temps d ’attente maximum (Yu et Gligor) Propriétés de disponibilité Toute requête sur une ressource sera satisfaite en temps fini. Tout sujet demandant la réalisation d ’une tâche la verra se réaliser en temps fini. Montrer que ces contraintes sont des théorèmes de la spécification logique du système

Application sur des algorithmes d’allocation de ressources Hypothèse : travail sur la spécification logique de l ’algorithme Méthodologie : spécification des « cas pires » : il y a toujours des processus en attente dès qu ’un processus a fini une tâche, il en redemande une autre choix des « tâches pires » (vis à vis de la disponibilité) dépend de l ’algorithme analysé (exemple : la tâche la plus longue pour FIFO) Résultat : Vérification de la propriété recherchée, par simulation dynamique des cas pires avec les tâches pires Applications : FIFO, Round Robin, Shortest Job First….

Conclusion Définition et formalisation de la notion de politique de disponibilité Analyse de la cohérence d ’une politique de disponibilité Dérivation de propriétés de disponibilité à partir d ’une politique de disponibilité Modèle extensible à des types de ressources différents

Perspectives / Problèmes à étudier Définition 1 Modélisation de la notion de « Deny » Définition 2 Prise en compte de la notion de mode dégradé Cohérence d’une politique de disponibilité Méthodologie pour vérifier des propriétés de disponibilité Analyse des cas moyens (fautes accidentelles) Applications : analyse des mécanismes pour la survivabilité Protocoles d ’allocation de ressources critiques Gestion de trafic Mécanismes de tolérances aux fautes Redondance en cas d ’attaques malveillantes Redondance passive / redondance active Choisir une étude de cas