Les politiques de Contrôle d’Accès Questions de Cours Qu’est ce qu’une politiqu
Les politiques de Contrôle d’Accès Questions de Cours Qu’est ce qu’une politique de sécurité ? Citer les trois déclinaisons d’une telle politique Quel est le principe des politiques discrétionnaires ? Donner trois points faibles des politiques discrétionnaires ? Questions similaires à la question précédente pour MAC, TBAC, RBAC, TMAC et OrBAC. Fichier 1 Dossier 1 Processus 1 Domaine 1 Domaine 2 Processus 2 Bob owner *write *read owner control Processus 1 owner write *read owner control Domaine 1 owner control owner control Domaine 2 read Paul read Exercice 1 : Discretionary Access Control (DAC) : Matrice d’accès 1. Citer les sujets, les objets et les permissions 2. Quels sont les sujets qui ont le droit de lecture sur Dossier 1 ? 3. Quel est le sujet qui a le droit d’écriture sur Dossier 1 ? 4. Paul a t’il le droit d’écriture sur Fichier 1 ? Qui pourrait lui déléguer (transférer) le dit droit ? 5. Est il possible de déléguer le droit de propriétaire su Processus 2 à Paul ? 6. Le modèle HRU de Harrison, Ruzzo et Ulmann identifie six opérations primitives pour décrire le changement d'état d'un système : 1. Ajouter un sujet 2. Supprimer un sujet 3. Ajouter un objet 4. Supprimer un objet 5. Ajouter un privilège 6. Supprimer un privilège Dans un système de gestion de fichier, qu’est ce un sujet/objet/privilège ? Questions similaires dans une base de données. Exercice 2 : Les politiques discrétionnaires et Unix Rappels sur Unix Unix implémente une politique discrétionnaire. Seul le propriétaire d'un fichier est habilité à modifier la liste de contrôle d'accès du fichier. La liste de contrôle d'accès (ACL) d'un fichier ou d’un dossier sous UNIX est constituée de trois ensembles de privilèges : les privilèges (ou droits) du propriétaire (owner), les privilèges de ceux qui sont dans le groupe (group) du propriétaires et les privilèges des autres (other), ceux qui ne sont pas dans le groupe du propriétaire. Le changement s’applique à : • u (user, utilisateur) représente la catégorie "propriétaire" ; • g (group, groupe) représente la catégorie "groupe propriétaire" ; • o (others, autres) représente la catégorie "reste du monde" ; • a (all, tous) représente l'ensemble des trois catégories. 1 Les modifications que l'on veut faire sont : • + : ajouter un droit pour une catégorie • - : supprimer un droit pour une catégorie • = : affectation un droit pour une catégorie Le droit que l'on veut modifier • r : read lecture 4 ⇒ lecture ⇒ 4 ⇒ lecture ⇒ 4 • w : write écriture 2 ⇒ lecture ⇒ 4 ⇒ lecture ⇒ 4 • x : execute exécution 1 ⇒ lecture ⇒ 4 ⇒ lecture ⇒ 4 • X : eXecute exécution, concerne uniquement les répertoires (qu'ils aient déjà une ⇒ lecture ⇒ 4 autorisation d'exécution ou pas) et les fichiers qui ont déjà une autorisation d'exécution pour l'une des catégories d'utilisateurs. Nous allons voir plus bas dans la partie des traitements récursifs l'intérêt du X. Les privilèges de bases sont : Lecture (r, 4),écriture (w, 2), exécution (x, 1). Un chiffre est affecté à chaque privilège de base. En additionnant ces chiffres, on cumule les privilèges de base. Par exemple le chiffre 7 (7=4+2+1) désigne la cumulation des droits de lecture, écriture et exécution). Le chiffre 5 (5=4+1) représente la cumulation des droits de lecture et d’exécution. La commande chmod permet au propriétaire d’un fichier ou d’un dossier de modifier les permissions. Par exemple : • chmod 754 a.out affecte les droits de lecture, écriture et exécution au propriétaire, affecte les droits de lecture et d’exécution à tous ceux du groupe du propriétaire et le droit de lectures aux autres. • chmod o-w fichier3 enlèvera le droit d'écriture pour les autres • chmod a+x ajoutera le droit d'exécution à tout le monde • chmod go-wx fichier pour les membres du groupe (g) et les autres (o) on retire (-) les droits d'écriture (r) et d'exécution (x) La commande chown permet de changer le propriétaire d’un fichier, Un propriétaire de fichier ou de dossier transféré son droit de propriété à un autre utilisateur. Par exemple : • Après l’exécution de la commande chown paul fichier2.txt, paul devient le nouveau propriétaire du fichier « fichier2.txt ». • Après l’exécution de la commande chown linuxize:users file1, le fichier le propriétaire de file1 est linuxize et son groupe est users. • L'ID utilisateur numérique (UID) peut être utilisé à la place du nom d'utilisateur. L'exemple suivant changera la propriété d'un fichier nommé file2 en un nouveau propriétaire avec l'UID de 1000 : chown 1000 file2 La commande ls -l , peut être utilisée pour voir les autorisations de fichier et les propriétaires. Par exemple, ls -l filename.txt : -rw-r- -r-- 12 paul master1 12 Apr 8 20:51 filename.txt File Type :- : Ordinaire Droits du propriétaire : rw- Droit du groupe du propriétaire :r- - Droits des autres :r- - Nom du propriétaire : paul Nom du groupe du fichier : master1 la taille du fichier : 12 KO date (jour et heure) de la dernière modification : Apr 8 20:51 nom du fichier : filename.txt 2 Chaque utilisateur dans un système d’exploitation similaire à Unix est identifié par un numéro entier différent, ce numéro unique est appelé UserID. Il existe trois types d’UID définis pour un processus, qui peuvent être modifiés dynamiquement selon le privilège de la tâche. Les trois différents types d’UID définis sont : • L’ID utilisateur réel • L’ID utilisateur effectif • L’ID utilisateur enregistré Notions d’utilisateur réel, effectif et enregistré : • ID utilisateur réel : Real UserID : Pour un processus, Real UserId est simplement le UserID de l’utilisateur qui l’a démarré. Il définit les fichiers auxquels ce processus a accès. • ID utilisateur effectif : C’est normalement le même que l’ID utilisateur réel, mais parfois il est modifié pour permettre à un utilisateur non privilégié d’accéder aux fichiers qui ne peuvent être consultés que par un utilisateur privilégié comme root. • ID utilisateur enregistré : il est utilisé lorsqu’un processus en cours d’exécution avec des privilèges élevés (généralement root) doit effectuer un travail sous-privilégié, cela peut être réalisé en basculant temporairement vers un compte non privilégié. • Lors de l’exécution d’un travail sous-privilégié, l’UID effectif est remplacé par une valeur de privilège inférieure et l’euid est enregistré dans l’ID utilisateur enregistré (suid), afin qu’il puisse être utilisé pour revenir à un compte privilégié lorsque la tâche est terminée. • On peut imprimer l’UID en tapant simplement id sur le terminal : Les processus Unix ont des ID réels (UID, GID) et effectifs (EUID, EGID) : • UID :ID utilisateur réel • GID : ID gtoupe réel • EUID : ID utilisateur effectif • EGID : ID groupe effectif Normalement UID et EUID sont identiques et GID et EGID sont identiques, Les droits d'endossement (Droits SUID et SGID) dans sont représentés par : • la lettre s (si le droit x est positionné) • la lettre S (si le droit x n'est pas positionné) Numériquement, les droits d'endossement sont représentés de la façon suivante : • 4000 - pour l'endossement de l'identité du propriétaire • 2000 - pour l'endossement de l'identité du groupe Le comportement des droits d'endossement. • Pour les fichiers programme ou exécutable • SUID = 4000 - le processus a les droits du propriétaire du programme exécuté • SGID = 2000 - le processus a les droits du groupe du programme exécuté • Pour les répertoires • SGID = 2000 - les fichiers qui se trouvent dans le répertoire appartiennent au groupe du répertoire Exemples : Command chmod u+s myfile adds the setuid bit. The set group iD bit can be set using chmod g+s myfile. To make a program set uid using the octal representaiton, the command would be chmod 4755 program Noyations s et S pour les droits d’endossement : Droits SUID et SGID • Le flag du SUID est la lettre s ou S qui vient remplacer le x du propriétaire. La majuscule indique que le droit d'exécution du propriétaire) n’est pas alloué. C'est un s si le droit d'exécution du propriétaire est présent, ou un S sinon. Par exemple, Un fichier avec les droits -rwxr-xr-x auquel on ajoute le droit SUID aura donc la notation -rwsr-xr-x 3 • Le flag du SGID remplace le flag x, mais celui des droits du groupe, et la majuscule indique que droit d'exécution x n'est pas alloué. Par exemple, un fichier avec les droits - rwxr--r-- auquel on ajoute le droit SGID aura donc la notation -rwxr-Sr-- Les droits d'endossement sont très importants pour la sécurité. Au lieu de donner l'accès à un fichier, on donne le droit d'accès à une commande. Le kernel (ou noyau), au moment de l'exécution de la commande endosse l'identité du propriétaire ou du groupe de la commande au lieu de celle de l'utilisateur qui a lancé la commande. Donc l'accès au fichier se fait par le biais de la commande et non pas directement. uploads/S4/ tdtpssi-220601-100559.pdf
Documents similaires










-
43
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Oct 25, 2021
- Catégorie Law / Droit
- Langue French
- Taille du fichier 0.1689MB