Protection des donn - PowerPoint PPT Presentation

1 / 56
About This Presentation
Title:

Protection des donn

Description:

Title: Protection Author: Luigi Logrippo Last modified by: Luigi Logrippo Created Date: 3/28/2001 5:12:12 PM Document presentation format: Affichage l' cran (4:3) – PowerPoint PPT presentation

Number of Views:150
Avg rating:3.0/5.0
Slides: 57
Provided by: Luig95
Category:

less

Transcript and Presenter's Notes

Title: Protection des donn


1
Protection des données
  • Chapitre 18

http//w3.uqo.ca/luigi/
http//www.fotosearch.com/IGS236/is102-015/
2
Concepts importants du chapitre
  • Niveaux de protection, anneaux en Multics
  • Domaines dexécution
  • Besoin de connaître
  • Protection sur les descripteurs des segments
  • Matrices daccès
  • Copier, modifier, octroyer les droits daccès
  • Implémentation des droits daccès
  • Listes daccès aux objets
  • Liste de capacité des processus
  • Compromis, solutions mixtes

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

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

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

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

7
Principe besoin de connaître (need to know)
  • On ne devrait permettre à une entité que
    daccéder à linfo dont elle a vraiment besoin
  • 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
  • Dans un hôpital,
  • Un statisticien aura accès aux données disant les
    types de maladies, mais pas aux noms des patients
  • Un médecin aura accès aux infos concernant ses
    patients, mais pas accès aux infos concernant
    dautres patients

8
Mécanismes
  • Comment trouver des mécanismes parfaitement
    adaptés aux besoins dont nous avons parlé?
  • Ce qui suit présente quelques uns des mécanismes
    connus

9
Importance du SE
  • Tout mécanisme de protection des données doit
    être fondé sur des mécanismes de protection de
    base du SE
  • La sécurité des données commence dans le SE

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

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

12
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

13
Protection de segments partagés
  • Protection sur le chemin daccès entre processus
    et segment
  • 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. 1
Base
Lim.
R,W
Segment partagé
Tabl. segms. Proc. 2
R
Les deux proc partagent un segment, cependant
Proc. 2 ne peut que le lire
14
Question
  • Expliquer pourquoi les mécanismes de protection
    de la mémoire dépendent de lexistence des deux
    modes
  • usager et superviseur

15
Machines virtuelles
  • Le concept de protection de base dans
    linfonuagique (cloud computing)
  • 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
  • Chaque usager aura donc sa propre machine
    virtuelle

16
Couches dans les systèmes de protection de données
  • Couche 1 Chiffrement
  • Couche 2 Contrôle didentité
  • Couche 3 Contrôle daccès
  • Couche 4 Contrôle de flux
  • Couche 5 Protection de lintimité (privacy)

17
Couche 1 Chiffrement
  • Tout le système de sécurité dépend de la capacité
    de chiffrer certaines informations critiques pour
    les garder sécrètes
  • Mots de passe
  • Certains fichiers

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

19
Couche 3 Contrôle daccès
  • Cette couche gère les requêtes des personnes,
    processus etc. qui demandent accès aux
    différentes ressources, données etc.
  • Pour lire, écrire, exécuter, etc.
  • Intercepte les requêtes des usagers, et autorise
    ou nie laccès
  • 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

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

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

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

24
Systèmes MAC et leurs implémentations
25
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

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

27
Cheval de Troie!
  • Vicky crée un fichier appelé MesAffaires,
    seulement pour elle
  • Jean crée un fichier XXX et donne à Vicky
    lautorisation décrire sur ce fichier (à linsu
    de Vicky)
  • Jean crée un Programme et donne à Vicky
    lautorisation à lexécuter
  • Ce Programme (le cheval de Troie!) fait des
    choses utiles pour Vicky mais aussi il lit de
    MesAffaires et écrit sur XXX
  • Dans BLP
  • Si le ficher MesAffaires est classifié dans un
    niveau de sensibilité supérieur à celui de XXX,
    linformation ne peut pas être copiée de
    MesAffaires à XXX
  • Si Programme est défini comme sujet à un niveau
    inférieur à celui de MesAffaires, Programme ne
    peut pas lire MesAffaires

http//www.springerreference.com/docs/html/chapter
dbid/317733.html Lire aussi lhistoire mythique
du Cheval de Troie
INF6153
27
28
Exercice
  • Prouver que ce mécanisme empêche vraiment la
    circulation de linformation dans la direction
    non souhaitée
  • Non seulement de manière directe, mais aussi de
    manière indirecte

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

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

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

32
Mécanisme danneaux
  • LUCT a un registre qui contient le numéro de
    lanneau où elle est en train d exécuter
  • Un proc qui exécute dans un anneau peut accéder
    aux données dans les anneaux plus externes.
  • cependant ses capacités peuvent être limitées par
    rapport à certains fichiers (R,W,E) comme discuté
    (need to know)
  • 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
  • Il faut aussi se préoccuper que les paramètres
    puissent être rendus disponibles au niveau plus
    externe
  • Lappel aux procédures plus internes est contrôlé
    par le SE par des règles rigoureuses v. manuel

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

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

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

36
Systèmes DAC Discretionary Access Control
37
Domaines dexécution
38
Domaines dexécution modèle abstrait
  • 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 O4 peut être effectuée dans
domaine D2 ou D3, pas D1
39
Changement de domaines dexécution
  • À 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 O4 peut être effectuée
dans domaine D2 ou D3, pas D1
40
Réalisation de domaines
  • Un usager peut être associé à un domaine
  • changement de domaine au moment de changement
    dusager
  • Un processus peut être associé à un domaine
  • changement de domaine au moment de changement de
    processus
  • Une procédure ou méthode peut être un domaine
  • changement de domaine au moment de changement de
    procédure ou méthode

41
Méthode de la matrice daccès
  • 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
42
La matrice daccès sépare le mécanisme des
critères
  • Mécanismes
  • Le SE fournit la matrice daccès et les règles
  • Assure que la matrice ne soit manipulée que par
    des agents autorisés et que les règles soient
    respectées
  • Critères (politiques, policies)
  • sont dictés par les usagers
  • quels domaines peuvent accéder à quel objet avec
    quelles capacités

43
Extensions de la méthode de la matrice daccès
44
Changement de domaine comme capacité
  • Un usager qui se trouve dans le domaine D2 peut
    changer au domaine D3 ou D4.

45
Capacité de copier les droits daccès
  • Un processus peut avoir le droit de recopier un
    droit daccès d un domaine à un autre (signalé
    par )
  • 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
46
Droits de propriétaire
  • Droit d un propriétaire de changer les droits
    dautres sur les objets qui lui appartiennent
  • si (i,j) contient owner, un proc dans Di peut
    ajouter ou enlever des droits dans la colonne j

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

48
Mécanismes serrure-clé (lock-key) un compromis
  • Chaque objet a une liste de patrons de bit
    unique ses serrures
  • Chaque domaine a aussi une liste de patrons de
    bits unique ses clés
  • 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
  • Serrures et clés sont gérées par le SE

49
Solutions mixtes exemple
  • Les objets ont des listes daccès
  • Quand un processus cherche à accéder à un objet
    (p.ex. un fichier) le SE cherche sur la liste
    daccès de lobjet si le domaine du proc a droit
    daccès à lobjet
  • Si oui, la capacité daccéder à lobjet est
    ajoutée à la liste des capacités du processus
  • 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

50
Fonctionnement possible
lim
base
R
R
R,W
R,W
R,W
X
Le tableau de segments dun proc qui a droit
daccès à 2 segms
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
51
Problèmes
  • 1) implantation efficace
  • 2) comment sassurer que la matrice correspond
    aux exigences de sécurité

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

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

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

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

56
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com