17
Systèmes d’Exploitation Protection et Sécurité Didier Verna [email protected] http://www.lrde.epita.fr/˜didier

Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

Embed Size (px)

DESCRIPTION

un guide sur l'informatique et la liberte/securite

Citation preview

Page 1: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

Systèmes d’ExploitationProtection et Sécurité

Didier [email protected]

http://www.lrde.epita.fr/˜didier

Page 2: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 3: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 4: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 5: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 6: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 7: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 8: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 9: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 10: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 11: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 12: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 13: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 14: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 15: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

Notion de sécurité Menaces contre les programmes

=⇒ Éduquer les utilisateurs ! !(de Windows)

Systèmes d’Exploitation – Protection et Sécurité, Didier Verna 14

Page 16: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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

Page 17: Document - Informatique - Systèmes D'exploitation - Protection Et Sécurité

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