Upload
mass-murderer63
View
1.461
Download
1
Embed Size (px)
DESCRIPTION
un guide sur l'informatique et la liberte/securite
Citation preview
Systèmes d’ExploitationProtection et Sécurité
Didier [email protected]
http://www.lrde.epita.fr/˜didier
Table des matières
Table des matières
Notion de protection ........................................................................... 2
Principe de «nécessité d’accès» .............................................................. 3
Domaine de protection........................................................................... 4
Matrice de droits................................................................................... 7
Notion de sécurité ............................................................................... 10
Authentification..................................................................................... 11
Menaces contre les programmes ............................................................. 13
Menaces contre les systèmes ................................................................. 15
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 1
Notion de protection
Notion de protection
Accessoire des systèmes multiprogrammés
• Utilisateurs : éviter les violations malencontreuses ou pernicieuses derestrictions d’accès.
• Processus : vérifier la cohérence d’utilisation des ressources système.
=⇒ Les politiques de protection ne s’adressent plus qu’aux concepteursde systèmes, mais aussi aux programmeurs et aux utilisateurs.
=⇒ Politique de protection 6= mécanisme de protection.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 2
Notion de protection Principe de «nécessité d’accès»
Principe de «nécessité d’accès»
Un système informatique est :
• Un ensemble de processus.
• Un ensemble d’objets matériels (CPU, mémoire. . .).
• Un ensemble d’objets logiciels (programmes, fichiers. . .).
• Un ensemble d’opérations processus −→ objet.Les opérations peuvent dépendre des objets.
Principe de «nécessité d’accès» :
• Restreindre l’accès aux seules ressources autorisées.
• Restreindre l’accès à tout moment aux seules ressources nécessaires.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 3
Notion de protection Domaine de protection
Domaine de protection
• Droit d’accès : paire objet / ensemble de droits : (O, {D1, D2, . . .}).• Domaine : ensemble de droits d’accès {DA1, DA2, . . .}.
=⇒ Les domaines ne sont pas forcément disjoints.=⇒ Chaque processus s’exécute dans un domaine.
Liaison processus / domaine :
• Statique : ensemble de ressources disponibles fixe. Le principe de né-cessité d’accès requiert un mécanisme de modification des contenusde domaines.
• Dynamique : requiert un mécanisme de «commutation de domaine»(pas nécessairement de modification).
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 4
Notion de protection Domaine de protection
Réalisation de domaines
• Domaine = Utilisateur : les objets auxquels on peut accéder dépendentde l’utilisateur qui y accède. Commutation de domaine au changementd’utilisateur.
• Domaine = Processus : les objets auxquels on peut accéder dé-pendent du processus qui y accède. Commutation de domaine à lacommutation de contexte.
• Domaine = Procédure : les objets auxquels on peut accéder corres-pondent aux variables utilisées par la procédure. Commutation de do-maine à chaque appel de procédure.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 5
Notion de protection Domaine de protection
Exemples
Systèmes Unix :
• Domaine = Utilisateur
• Bit «setuid» : indique un éventuel changement d’identité pour l’exécu-tion.
• Accès aux ressources privilégiées par setuid root. Autres possibilités :répertoires d’exécutables privilégiés, communication avec des démons(TOPS-20).
Système Multics :
• 7 domaines de protection organisés en anneaux (par quantité de privi-lèges).
• Espace d’adressage segmenté correspondant aux 7 anneaux.
• «Liste de guichets» : points d’entrée autorisés pour la commutation versdes anneaux plus privilégiés.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 6
Notion de protection Matrice de droits
Matrice de droits
• Matrice représentant les droits de chaque objet en fonction du domaine.
• Le domaine d’exécution d’un processus est généralement choisi par lesystème d’exploitation.
• Les entrées de la matrice de droits sont généralement spécifiées parles utilisateurs.
Entrées particulières :
• Contrôle de commutation de domaine : représenter les domainescomme des objets.
• Contrôle de modification des entrées de la matrice de droits : représen-ter les entrées comme des objets.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 7
Notion de protection Matrice de droits
Attributs supplémentaires
Requis pour les modifications sur la matrice de droits
• Copie : permet le transfert d’un droit au sein d’une colonne (d’un do-maine vers un autre). Copie par transfert ou propagation.
• Propriétaire : permet l’ajout et la suppression de tout droit dans la co-lonne considérée.
• Contrôle : applicable seulement aux objets domaine. Permet la modifi-cation de droits par ligne et non par colonne.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 8
Notion de protection Matrice de droits
Implémentation de la matrice de droits
• Table globale : ensemble de triplets (Di, Oj, Rk).Inconvénients : table de grande taille (ingérable en mémoire vive), ma-trice creuse. Difficulté de profiter des groupements d’objets ou de do-maines.
• Liste d’accès aux objets : chaque colonne est représentée par uneliste de paires (Di, Rk) pour lesquelles les droits sont non vides. Exten-sion par listes de droits par défaut.
• Listes de capacités des domaines : chaque ligne est représentée parune liste de paires (Oj, Rk).
• Mécanisme de clés / verrous : chaque objet possède des «verrous»,chaque domaine possède des «clés». Une opération est permise àcondition qu’une clé du domaine corresponde à un verrou de l’objet.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 9
Notion de sécurité
Notion de sécurité
Protection 6= Sécurité
• Protection : problème strictement interne. Fournir un accès contrôléaux ressources informatiques.
• Sécurité : problème externe. Requiert la prise en compte de l’environ-nement du système.
=⇒ S’assurer que le système est utilisé comme il a été prévu qu’il lesoit.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 10
Notion de sécurité Authentification
Authentification
L’utilisateur est-il celui qu’il prétend être ?
• Possession utilisateur : clé, carte d’accès. . .
• Connaissance utilisateur : identificateur, mot de passe. . .
• Attribut utilisateur : empreinte digitale, rétinienne, signature. . .
Problème des mots de passe : difficulté de les garder secret.
• Mot de passe transféré illégalement à une tierce personne.
• Mot de passe exposé accidentellement.
• Mot de passe «deviné».
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 11
Notion de sécurité Authentification
Faiblesses des mots de passe
Exposition accidentelle :
• Surveillance visuelle ou vidéo.
• Surveillance informatique (sniffers).
Deviner un mot de passe :
• Connaissance de l’utilisateur, mots de passe trop évidents.
• Force brute (test de toutes les combinaisons).
=⇒ Interdire les mots de passe trop simples, changer les mots de passeà intervalles réguliers. . .
=⇒ Stocker les mots de passe encryptés (crypt d’Unix), cacher les ver-sions cryptées.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 12
Notion de sécurité Menaces contre les programmes
Menaces contre les programmes
Dès qu’on peut exécuter des programmes d’autres utilisateurs. . .
• Défauts : Défauts de conception (ex. cgi trop permissifs) ou de pro-grammation (ex. «buffer overflow»). Vulnérabilité accrue avec des lan-gages non sûrs.
• Cheval de Troie : utilisation à mauvais escient de son environnementd’exécution (programmes mal intentionnés). Phénomène aggravé par leprincipe du chemin d’accès (PATH d’Unix).
• Porte de contournement : (backdoor, «passer par derrière»). Contour-ner les procédures normales de sécurité pour un utilisateur précis (ty-piquement : le concepteur du programme). Contournement plus perni-cieux : directement dans les compilateurs.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 13
Notion de sécurité Menaces contre les programmes
=⇒ Éduquer les utilisateurs ! !(de Windows)
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 14
Notion de sécurité Menaces contre les systèmes
Menaces contre les systèmes
Dès qu’on peut créer dynamiquement de nouveaux processus. . .
• Vers : programme autonome et auto-reproducteur. Consommation(voire épuisement) des ressources systèmes. Dissémination à traversles réseaux informatiques.
• Virus : fragment de code intégré dans un programme légitime. Repro-duction par contamination d’autres programmes. Aucun antivirus univer-sel : les antivirus évoluent en même temps que les virus. Les systèmesmulti-utilisateurs sont en général immunisés car les exécutables sontprotégés contre l’écriture.
=⇒ Éduquer les utilisateurs ! !(de Windows)
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 15
Notion de sécurité Menaces contre les systèmes
Le vers de Morris
Hook
Vers Vers
Attaque rshAttaque finger (buffer overflow)Attaque sendmail (option debug)
Téléchargement du vers
Requête de vers
Machine infectéeMachine cible
Attaque mots de passe
• Lancé le 2 soir du 2 Novembre 1988
• Neutralisé le 3.
Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 16