Chap. 18 Protection Chapitre 18

Slides:



Advertisements
Présentations similaires
Module Systèmes d’exploitation
Advertisements

Module Systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Le matériel des ordinateurs Revue Pt II (Tanenbaum 1.4)
GEF 435 Principes des systèmes dexploitation Structure du logiciel dE/S Partie II (Tanenbaum & 5.3.4)
Création de la base du SI Idée de départ : créer plusieurs couches de données avec chacune un intérêt propre et indépendante. Chaque couche doit pouvoir.
GPO Group Policy Object
Groupe de Travail Deux Structure et Culture: créer un environnement pour la transparence Le groupe a échangé sur lenvironnement structurel nécessaire pour.
Module Systèmes dexploitation Chapitre 6 Communication Interprocessus Partie III École Normale Supérieure Tétouan Département Informatique
GEF 435 Principes des systèmes dexploitation Communication Interprocessus (CIP) III (Tanenbaum 2.3)
GEF 435 Principes des systèmes dexploitation Structure des systèmes dexploitation (Tanenbaum 1.7)
GEF 435 Principes des systèmes d’exploitation
DUDIN Aymeric MARINO Andrès
D2 : Sécurité de l'information et des systèmes d'information
La politique de Sécurité
Les réseaux informatiques
Cours Présenté par …………..
INTRODUCTION.
CSI3525: Concepts des Langages de Programmation Notes # 11: Sous-Programmes ( Lire Chapitre 8 )
Formation Microsoft® Office Access 2007
Cours 7 - Les pointeurs, l'allocation dynamique, les listes chaînées
SECURITE DU SYSTEME D’INFORMATION (SSI)
Module 1 : Préparation de l'administration d'un serveur
Amélioration de la sécurité des données à l'aide de SQL Server 2005
Concepts de base : la Classe Pour faire une comparaison simple, une classe serait a priori, une structure C avec des variables et des fonctions.
Initiation à la conception de systèmes d'information
1 Threads et Lightweight Processes Chapitre 5 En français on utilise parfois flots ou fils pour threads. Votre manuel préfère le mot anglais thread : terminologie.
Chap 4 Les bases de données et le modèle relationnel
Bienvenue! INF3723: Systèmes d’exploitation Luigi Logrippo
Module 4 : Création et gestion de comptes d'utilisateur
Création et gestion de comptes d'utilisateur
Allocation de mémoire Allocation de mémoire.
FICHIERS : Définition : Algorithme général:
Les pointeurs Modes d’adressage de variables. Définition d’un pointeur. Opérateurs de base. Opérations élémentaires. Pointeurs et tableaux. Pointeurs et.
Modèles Principaux de contrôle d’accès
CSI3531 – Labo 1 Lobservation du comportement de processus.
Concepts pour le contrôle de flux 1
Synchronisation Classique
Création de menus. Depuis la page d’accueil de votre site, cliquez sur le lien [Login] puis saisissez les identifiants qui vous ont été attribués. Connectez-vous.
EPID-CPI-ISAIP Philippe Bancquart - mise à jour 24/02/ page 1 Gestion des transactions SQLServer.
Systèmes d’exploitation
Mise en oeuvre et exploitation
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II PRO-1024.
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Développé par : CHAFYQ El Hassan & Krachli Ayoub
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Définir le bon prix pour un produit en 3 clics. Les sociétés qui vendent des produits spéciaux ont beaucoup de difficultés à se créer un catalogue sur.
Tutorat en bio-informatique
Tutorat en bio-informatique Le 14 novembre Au programme… Les objets –Propriétés (attributs) –Constructeurs –Méthodes.
Programmation Système et Réseau
Windows 2003 Server Modification du mode de domaine
Conversation permanente
FTP : File Transfer Protocol (protocole de transfert de fichier ) est un protocole de communication destiné à l'échange informatique de fichiers sur.
B2i école : domaines, aptitudes et pistes d’activités
SCAN400 , envoi mail des résultats JDSEE, JDFIELD
SYSTEMES d’INFORMATION séance 1 : Introduction et définitions
Structure des Systèmes Informatiques
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 1 Fondamentaux de l'Internet (FDI) JeanDo Lénard
1 Structure en MC Principes Stockage des données dans la mémoire volatile d’un ordinateur Problèmes Stockage temporaire «Petits» volumes de données Langages.
06/04/06 LES BASES DE DONNEES INTRODUCTION CogniTIC – Bruxelles Formation - Cepegra.
Applications Internet Cours 3 21 janvier 2010 Cours 3 21 janvier 2010.
Architecture et technologie des ordinateurs II
Gestion des documents internes avec SQL Server 2005 Date de publication : janvier 2006.
ALLOCATION DU CPU et GESTION DES TRAVAUX.
INTRODUCTION AUX BASES DE DONNEES
Introduction Module 1.
Chapitre 8 Protection du trafic réseau à l'aide de la sécurité IPSec et de certificats Module S43.
Chapitre 12 Surveillance des ressources et des performances Module S41.
Chapitre 3 Administration des accès aux ressources
Transcription de la présentation:

Chap. 18 Protection Chapitre

Chap. 18 Concepts importants du chapitre n Niveaux de protection, anneaux en Multics n Domaines dexécution n Besoin de connaître n Protection sur les descripteurs des segments n Matrices daccès u Copier, modifier, octroyer les droits daccès n Implémentation des droits daccès: u Listes daccès aux objets u Liste de capacité des processus u Compromis, solutions mixtes

Chap. 18 Le problème de la protection n Sassurer quun objet ne puisse être accédé que u par les processus qui sont autorisés u dans la façon autorisée n Importante u pour la protection des données des usagers, u pour le bon fonctionnement du système entier: F vulnérabilité des SE qui ont des mauvais mécanismes de protection

Chap. 18 Exigences, besoins. Exemple 1 n Niveaux de protection: un programme de correction, écrit par un prof, exécute des progs. d étudiants. n Nous avons 3 niveaux de protection: u Système d exploitation F Doit être protégé par rapport aux programmes usagers F Peut les affecter (R,W,X?) u Programme du prof F Doit être protégé par rapport aux progrs. étudiants F Peut les affecter u Programme étudiant F Doit être protégé par rapport aux programmes dautres étudiants

Chap. 18 Exigences, besoins. Exemple 2 n Nous avons vu que les systèmes dexploitation modernes sont organisés par couches de fonctionnalités u Il est souhaitable de pouvoir protéger les couches les plus internes (les plus critiques) contre les plus externes u P.ex le noyau contre les programmes dapplication

Chap. 18 Exigences, besoins. Exemple 3 n Protection par rapport aux domaines dexécution dans lesquelles lusager se trouve u Quand jexécute un programme de traitement de texte, jaurai accès à certaines données F Fichiers.doc,.txt … u Quand jexécute mon application de courriel, jaurai accès à dautres données F Fichiers.pst … u Pour éviter la corruption de données.pst, il devrait être empêché de les ouvrir par les logiciels conçus pour.txt

Chap. 18 Principe besoin de connaître (need to know) n On ne devrait permettre à une entité que daccéder à linfo dont elle a vraiment besoin u Si un processus invoque une procédure, cette procédure doit avoir accès à ses paramètres, mais ne devrait pas être capable d accéder aux variables du processus u Dans un hôpital, F Un statisticien aura accès aux données disant les types de maladies, mais pas aux noms des patients F Un médecin aura accès aux infos concernant ses patients, mais pas accès aux infos concernant dautres patients

Chap. 18 Mécanismes n Comment trouver des mécanismes parfaitement adaptés aux besoins dons nous avons parlé? n Ce qui suit présente quelques uns des mécanismes connus

Chap. 18 Machines virtuelles n Le concept de protection de base dans linfonuagique (cloud computing) n Chaque machine virtuelle se comporte comme un ordi séparé donc en principe ses données ne peuvent pas être saisies de la part dune autre machine virtuelle n Chaque usager aura donc sa propre machine virtuelle

Chap. 18 Mécanismes de protection de base n Modes superviseur – usager (bit dans UCT) u LUCT passe en mode superviseur par effet dune interruption, qui peut être provoquée par une application F P.ex. appel au système u Elle passe en mode usager par requête du SE n Instructions privilégiées – peuvent être exécutées seulement en mode superviseur interruption si un usager cherche à les exécuter u Les instructions importantes pour la protection sont privilégiées u Le fait que les instructions dE/S sont protégées permet la protection des fichiers n

Chap. 18 Protection de zones de mémoire principale n Contrôle dadresses générées pas la MMU u bornes inférieures, supérieures u ne peuvent pas être modifiées en mode usager u les tentatives daccéder à une adresse au delà des bornes causent une interruption

Chap. 18 Partage et protection de segments (ou de pages) Deux processus qui partagent un programme Mais les données de lun sont protégées par rapport à lautre

Chap. 18 Protection de segments partagés Tabl. segms. Proc. 1 n Protection sur le chemin d`accès entre processus et segment n Le contrôle d accès est effectué chaque fois quune adresse est calculée (donc besoin de matériel qui fasse ceci) Tabl. segms. Proc. 2 R,W R Segment partagé Les deux proc partagent un segment, cependant Proc. 2 ne peut que le lire Lim. Base

Chap. 18 Couches dans les systèmes de protection n Couche 1: Chiffrement n Couche 2: Contrôle didentité n Couche 3: Contrôle daccès n Couche 4: Contrôle de flux n Couche 5: Protection de lintimité (privacy)

Chap. 18 Couche 1: Chiffrement n Tout le système de sécurité dépend de la capacité de chiffrer certaines informations critiques pour les garder sécrètes u Mots de passe u Certains fichiers

Chap. 18 Couche 2: Contrôle de lidentité n Aussi, tout système de sécurité dépend de la capacité didentifier les personnes, processus, etc. qui interviennent dans un système, n Ainsi que de déterminer leurs droits et prérogatives sur les différentes ressources du système n Cette couche utilise les fonctionnalités de la couche chiffrement

Chap. 18 Couche 3: Contrôle daccès n Cette couche gère les requêtes des personnes, processus etc. qui demandent accès aux différentes ressources, données etc. n Pour lire, écrire, exécuter, etc. n Intercepte les requêtes des usagers, et autorise ou nie laccès n Cette couche utilise les fonctionnalités de la couche du contrôle de lidentité, pour déterminer qui est qui et qui peut faire quoi

Chap. 18 Couche 4: Contrôle de flux n Cette couche détermine qui peut avoir accès à quelle information dans un système u Ex: un employé ne peut pas avoir accès au salaire dun autre employé, ni directement ni indirectement n Elle utilise les fonctionnalités de contrôle daccès

Chap. 18 Couche 5: Protection de la vie privée (Privacy) n Cette couche se préoccupe dimplémenter les exigences de protection de la vie privée des individus n P.ex. dans un réseau social certains individus pourraient demander que certaines informations (disons date de naissance) ne soient pas accessibles à autres individus n Utilise les fonctionnalités du contrôle de flux

Chap. 18 Modèles de protection

Chap. 18 Modèles MAC et DAC n Modèles MAC: Mandatory Access Control u Le SE, programmé par un administrateur, détermine qui peut faire accès à quelles informations et pour faire quoi u Accès aux informations selon les qualifications (credentials) de lusager qui cherche à faire accès u Application: systèmes dhaute sécurité n Modèles DAC: Discretionary Access Control u Lusager a le contrôle daccès à ses données u Peut déterminer qui peut accéder à quoi

Chap. 18 Systèmes MAC et leurs implémentations

Chap. 18 Exemple dapplication militaire Le soldat simple ne peut pas savoir (lire) ce que le général sait, Mais il peut linformer (écrire) No read up, no write down Read down, write up

Chap. 18 Modèle Bell-La Padula: un système MAC n Les Objets (données, fichiers) sont classifiés en catégories de secret u P.ex. Public, Classifié, Secret, Très Secret n Les Sujets sont classifiés en catégories dhabilitation (clearance) par rapport aux données auxquelles ils peuvent avoir accès: u P.ex. Soldat dans Public, Capitan dans Classifié, Colonel dans Secret, Général dans Très Secret n Règles: u Un sujet ne peut pas lire dans une catégorie plus élevée F No read up – read down permis u Un sujet peut ne peut pas écrire dans une catégorie moins élevée F No write down – write up permis

Chap. 18 Exercice n Prouver que ce mécanisme empêche vraiment la circulation de linformation dans la direction non souhaitée u Non seulement de manière directe, mais aussi de manière indirecte

Chap. 18 Implémentations n Multics a implémenté ce concept déjà à partir des années 196X n Les systèmes Intel ont fourni du matériel pour ceci à partir des modèles x86 u Mais les implémentations logiciel ont tardé n Linux implémente maintenant un modèle de protection à anneaux u Le nombre de niveaux varie

Chap. 18 Multics: Anneaux de protection (`peau doignon`) n Extension du concept de mode superviseur- usager (chaque mode est un anneau) n Chaque anneau est un domaine de protection n Les anneaux les plus internes sont les plus essentiels, les plus privilégiés, et les plus protégés

Chap. 18 Affectation de processus aux anneaux n Exemple: u anneau 0: noyau du SE u anneau 1: fonction dadministration système u anneau 2: programme de correction du prof u anneau 3: programme de l`étudiant n Chaque segment dun processus est affecté à un anneau n À un moment donné, un processus se trouve dans un anneau n Quand un proc. se trouve dans un anneau n, il peut u accéder librement aux segments dans l anneau n, ou anneaux extérieurs u il ne peut pas accéder aux segments dans les anneaux intérieurs

Chap. 18 Mécanisme danneaux n LUCT a un registre qui contient le numéro de lanneau où elle est en train d exécuter n Un proc qui exécute dans un anneau peut accéder aux données dans les anneaux plus externes. u cependant ses capacités peuvent être limitées par rapport à certains fichiers (R,W,E) comme discuté (need to know) n Lappel aux procédure plus externes et relativement libre, cependant il faut `copier` les params dans une zone où il puissent être lus en exécutant dans un anneau qui a moins de capacités u Il faut aussi se préoccuper que les paramètres puissent être rendus disponibles au niveau plus externe n Lappel aux procédures plus internes est contrôlé par le SE par des règles rigoureuses: v. manuel

Chap. 18 Intégrité et diffusion de linformation n Le système Bell-LaPadula se préoccupe de limiter laccès aux informations n Dans dautres systèmes, la préoccupation pourrait être surtout de sauvegarder lintégrité de linformation u P.ex. quun subordonné, pouvant écrire en haut, pourrait modifier les directives provenant de là

Chap. 18 Système Biba n Le système Biba se préoccupe justement de protéger lintégrité des infos des niveaux supérieurs n Règles: u Un sujet ne peut pas écrire dans une catégorie plus élevée F No write up – write down permis u Un sujet peut ne peut pas lire dans une catégorie moins élevée F No read down – read up permis n Persuadez-vous que les information plus sécrètes ne peuvent pas être corrompues

Chap. 18 Domaines dapplication n Il est clair que Bell-LaPadula et Biba ne peuvent pas simultanément être en vigueur pour les mêmes sujets et données n Cependant chacun a son domaine dapplication dans une entreprise, p.ex.: u Les subordonnés peuvent écrire en haut les statistiques de vente, les gérants ne peuvent pas les changer (Bell- LaPadula) u Les gérants peuvent écrire en bas les politiques de vente, les subordonnés ne peuvent pas les changer n On peut donc penser à une répartition dune organisation: u Partie où on applique BLP et partie où on applique Biba

Chap. 18 Systèmes DAC: Discretionary Access Control

Chap. 18 Domaines dexécution

Chap. 18 Domaines dexécution: modèle abstrait n Nous avons dans un systèmes des domaines dexécution qui déterminent ce quun processus peut faire quand il se trouve dans chaque domaine Limpression de O 4 peut être effectuée dans domaine D 2 ou D 3, pas D1

Chap. 18 Changement de domaines dexécution n À chaque moment dans son exécution, un processus (ou usager...) se trouve dans un domaine dexécution En exécutant, un proc peut passer dun domaine à un autre Limpression de O 4 peut être effectuée dans domaine D 2 ou D 3, pas D1

Chap. 18 Réalisation de domaines n Un usager peut être associé à un domaine u changement de domaine au moment de changement dusager n Un processus peut être associé à un domaine u changement de domaine au moment de changement de processus n Une procédure ou méthode peut être un domaine u changement de domaine au moment de changement de procédure ou méthode

Chap. 18 Méthode de la matrice daccès n Indique les capacités dun processus exécutant dans un domaine Di sur différents objets capacités du dom. D2 capacités sur le fichier F2

Chap. 18 La matrice daccès sépare le mécanisme des critères n Mécanismes u Le SE fournit la matrice daccès et les règles u Assure que la matrice ne soit manipulée que par des agents autorisés et que les règles soient respectées n Critères (politiques, policies) u sont dictés par les usagers u quels domaines peuvent accéder à quel objet avec quelles capacités

Chap. 18 Extensions de la méthode de la matrice daccès

Chap. 18 Changement de domaine comme capacité n Un usager qui se trouve dans le domaine D2 peut changer au domaine D3 ou D4.

Chap. 18 Capacité de copier les droits daccès n Un processus peut avoir le droit de recopier un droit daccès d un domaine à un autre (signalé par *) u p.ex. un proc exécutant dans domaine D2 peut copier son droit d accès sur fichier F2 à un autre domaine Après modif

Chap. 18 Droits de propriétaire n Droit d un propriétaire de changer les droits dautres sur les objets qui lui appartiennent u si (i,j) contient owner, un proc dans Di peut ajouter ou enlever des droits dans la colonne j

Chap. 18 Implantation des matrices daccès n Difficile à implanter de façon que chaque accès de mémoire puisse être contrôlé n Tableau global. Désavantages: u grand, éparpillé, doit être paginé n Par colonne: chaque objet est associé à une liste daccès (qui peut faire quoi sur l objet) u facile à mettre à jour à partir de l objet u difficile à mettre à jour à partir des domaines n Par ligne: chaque domaine est associé à une liste de ses capacités u facile et difficile: contraire du précédent n etc: v. discussion dans manuel

Chap. 18 Mécanismes serrure-clé (lock-key): un compromis n Chaque objet a une liste de patrons de bit unique: ses serrures n Chaque domaine a aussi une liste de patrons de bits unique: ses clés n Un processus qui exécute dans un domaine a accès à un objet seulement si une des clés du domaine correspond à une des serrures sur lobjet n Serrures et clés sont gérées par le SE

Chap. 18 Solutions mixtes: exemple n Les objets ont des listes daccès n Quand un processus cherche à accéder à un objet (p.ex. un fichier) le SE cherche sur la liste daccès de l`objet si le domaine du proc a droit daccès à lobjet n Si oui, la capacité daccéder à lobjet est ajoutée à la liste des capacités du processus u Dans le cas de segmentation, quand un nouveau segment est ajouté à un proc, on crée une entrée additionnelle dans le tableau des segments, avec la protection appropriée

Chap. 18 Fonctionnement possible Le tableau de segments dun proc qui a droit daccès à 2 segms R R,W R X Le proc a demandé accès à un 3ème segment pour lexécuter. Le SE contrôle quil a droit, si oui il ajoute le droit daccès au tableau des segments du processus lim base

Chap. 18 Solutions basées sur les langages de programmation n Les langages de programmation peuvent inclure des énoncés qui déterminent les droits de protection. u p.ex. en Java contrôle d accès aux méthodes et variables n Considérations: u Fiabilité ̶ :un système basé sur les mécanismes d un langage de programmation est moins fiable que un système basé sur le noyau du SE u Efficacité ̶ : un système qui utilise le noyau, le matériel, etc. sera normalement plus efficace u Flexibilité +: un système basé sur un langage de programmation sera plus flexible et plus adapté aux besoins de l usager u Cependant, le langage de programmation peut faire appel au noyau.

Chap. 18 Conclusion n Les exigences de protection peuvent être très complexes n La méthode de la matrice daccès est puissante et générale, mais son implantation efficace est problématique n Les systèmes réels cherchent à approximer le résultats désirés par des solutions mixtes

Chap. 18 Concepts importants du chapitre n Niveaux de protection n Modèle de protection à couches: 5 couches n Protection de diffusion et dintégrité: n Bell-LaPadula, Biba n Implémentation de Bell-LaPadula dans système Multics n Domaines dexécution n Besoin de connaître n Protection sur les descripteurs des segments n Matrices daccès u Copier, modifier, octroyer les droits daccès n Implémentation des droits daccès: u Listes daccès aux objets u Liste de capacité des processus u Compromis, solutions mixtes

Chap. 18 Par rapport au livre: Chap 18 n Sauf u Protection en Unix u Mécanismes spécifiques: Hydra, CAP etc. u Section 18.6: connaissance générale