Académique Documents
Professionnel Documents
Culture Documents
politiques de sécurité et de leur fonctionnement. Ils permettent de faciliter la construction de preuves sur
la sécurité d'un système, c'est la raison pour laquelle les efforts se sont focalisés autour de la construction
des modèles pour la sécurité .
Les mécanismes de sécurité: ceux-ci définissent les fonctions de bas niveau (logiciels et matériels)
permettant de mettre en application les contrôles imposés par la politique de sécurité.
la définition des politiques ne garantit pas à elle seule le fonctionnement correct du système. Des
politiques mises en place peuvent engendrer des décisions d'accès ne traduisant pas les exigences de
sécurité souhaitées. Ces politiques doivent respecter certaines propriétés essentielles pour pouvoir
admettre que le système est sécurisé. Parmi ces propriétés, nous avons la validité, la cohérence, la
complétude, le déterminisme.
2
Anomalies dans les règles de contrôle d’accès
Incohérence
Une incohérence peut apparaître dans les règles de contrôle d’accès quand il est possible de dériver de
l’ensemble des règles deux décisions opposées concernant un accès donné qui est à la fois permis et interdit.
3
Incomplétude
Un système de règles de contrôle d’accès est dit incomplet si un sujet demande un accès à un objet alors
qu’aucune réponse (permission ou interdiction) n'est indiquée pour cette demande d’accès.
4
Fuite d’information
Une fuite d'information a lieu dans un système de règles de contrôle d’accès si des données
sont divulguées.
5
Redondance
Une redondance a lieu dans un ensemble des règles de contrôle d’accès si la même réponse à une
demande d’accès est définie dans plus d’une règle. La résolution de la redondance permettra de diminuer le
nombre des règles de contrôle d’accès et d’alléger le système ce qui pourrait éviter des anomalies et faciliter
leur détection.
6
Modèles de sécurité
Un modèle de contrôle d’accès peut être défini comme un formalisme qui permet de développer et spécifier le
comportement d’un système de manière exacte afin de mieux le comprendre. Il permet aussi d’abstraire, donc
de faciliter la compréhension d’une politique de sécurité et d’implémenter des mécanismes pour assurer
certains objectifs de sécurité.
Définition 1: Dans TCSEC (Trusted Computer System Evaluation Criteria), le contrôle d’accès
discrétionnaire est présenté comme : "un moyen de restriction d’accès aux objets basé sur l’identité des sujets
et/ou groupes auxquels ils appartiennent. Les contrôles sont dits discrétionnaires dans le sens où le sujet est
capable de transférer les permissions d’accès à d’autres sujets" (La transmission des droits est exercée à la
discrétion du sujet). 45
Définition 2 : Un contrôle d’accès est dit discrétionnaire lorsque la méthode de gestion de l’accès aux objets
est basée sur l’identité du sujet. Le contrôle est discrétionnaire dans le sens où un sujet possédant un droit
d’accès est capable de conférer ce droit à tout autre utilisateur.
1. Le modale Lampson
La notion des droits d’accès spécifiés par une matrice de contrôle d’accès a été introduite par Lampson dès
Un ensemble de sujets (s) sont les entités qui ont accès à des objets.
8
Les liens entre ces entités sont capturés dans la matrice d’accès M où les objets sont les colonnes et les
sujets les lignes.
Fichier 1 Fichier2 Fichier3
- La liste des contrôle d’accès (ou ACL pour Access Control List) : la matrice est stockée par colonne
[∀o Є O (s;M[s;o]), ∀s Є S]. A chaque objet est associée une liste de règles indiquant pour chaque
utilisateur les actions pouvant être exercées par ce dernier sur cet objet.
-La liste des capacités (ou capability) : la matrice est stockée par ligne [∀s Є S (o;M[s;o]), ∀o Є O].
A chaque utilisateur correspond une liste, appelée liste de capacité, indiquant pour chaque objet les actions
que l’utilisateur est en droit d’effectuer sur cet objet.
9
2. Modèle de Harrison-Ruzzo-Ullman
Le modèle HRU propose une amélioration du modèle de contrôle d’accès discrétionnaire de Lampson. HRU
utilise une matrice de contrôle d’accès classique, la différence réside en ce que HRU précise les commandes
qui peuvent lui être appliquées.
P s1 s2 o1
s1 r1,r2 r0,r1,r2 r1
s2 r0,r1,r2 r1,r2 r2
Etats de protection
•SC: un ensemble dénombrable de constantes de type sujet où chaque élément est noté s, s’.
•OC: un ensemble dénombrable de constantes de type objet où chaque élément est noté o, o’.
•R: un ensemble fini de droits où chaque élément est noté r, r’.
•Harrison, Ruzzo et Ullman considèrent toujours que tous les sujets sont aussi des objets : SC ⊂ OC.
•Un état de protection est un triplet (S,O, P).
•P une matrice d’accès qui, pour chaque sujet s є S et pour chaque objet o є O, définit l’ensemble P[s, o] R des
droits que le sujet s a sur l’objet o.
•Les états de protection seront notés par les lettres , △, △’
48
Opérations primitives
•SV un ensemble dénombrable de variables de type sujet où chaque élément est noté x,
x’.
•OV un ensemble dénombrable de variables de type objet où chaque élément est noté y,
y’.
•Il existe six opérations primitives permettant de modifier l’état de protection :
1. créer le sujet x;
2. créer l’objet y ;
3. introduire r dans P[x, y] ;
4. détruire le sujet x ;
5. détruire l’objet y ;
6. supprimer r de P[x, y].
Dans le modèle HRU les opérations primitives sont appliquées indirectement par l’intermédiaire de
commandes de la forme :
« si C1 et . . . et Ci alors début π 1 ; . . . ; π j »
où C1, . . . ,Ci sont des conditions élémentaires de la forme r є P[x, y] et π 1, . . ., π j sont des opérations
primitives.
Les commandes sont appliquées en remplaçant toutes les variables de la commande par des constantes.
si les conditions initiales C1, . . . ,Ci sont évaluées à vrai dans l’état de protection courant alors les opérations
primitives π 1, . . . , π j sont séquentiellement exécutées.
12
Soit θ une assignation et α une commande de la forme :“si C1 et . . . et Ci alors début π 1 ; . . . ; π j fin”.
Supposons qu’il n’existe aucune variable dans θ (α), c’est-à-dire que chaque variable dans α est
remplacée par une constante en utilisant △.
Si △ = (S,O, P) et △’ = (S’,O’, P’) sont des états de protection alors △’ est dit dérivable de △ en utilisant θ
et α, représenté par , ssi une des deux conditions suivantes est satisfaite :
1. Si les conditions de α ne sont pas satisfaites alors △ = △’.
2. Sinon il existent des états de protections △0, △1, . . . ,△j tels que:
13
Transition entre états
π est “créer le sujet x”, (x) S, S’ = S {θ(x)},O’ = O {θ(x)}, P’[s, o] = P[s, o] pour tout (s, o) є S×O, P[θ(x), o]
=∅;
pour tout o є O’ et P’[s, θ(x)] = ∅ ; pour tout s є S’.
π est “détruire le sujet x”, θ(x) є S, S’ = S \ {θ(x)}, O’ = O \ {θ(x)} et P’[s, o] = P[s, o] pour tout (s, o) є S’ × O’.
π est “créer l’objet y”, θ(y) O, S’ = S, O’ = O {θ(y)}, P’[s, o] = P[s, o] pour tout (s, o) є S × O et P’[s, θ (y)] = ∅ ;
pour tout s є S’.
π est “détruire l’objet y”, θ(y) є O\S, S’ = S, O’ = O \ {θ(y)} et P’[s, o] = P[s, o] pour tout (s, o) є S’ × O’.
P’[s,
π est o] P[s, ro]dans
“introduire {r}
P(x,si y)”,
s = θ(x)
θ (x)єetS,oθ(y)
= θ є(y)
O, S’ = S, O’ = O et pour tout (s, o) є S × O :
= P[s, o] sinon
14
Exemples de commande
Création de fichier :
Command créer-fichier(p,f)
créer_objet(f)
entrer(own,M[p,f])
entrer (r,M[p,f])
entrer (w,M[p,f])
Fin
15
Sécurit
Il éest important d’être capable de dire avec précision si un système de protection est sûr ou pas. Pour dire
qu’un système n’est pas sûr il faut d’abord définir ce qu’est l’apparition d’un droit.
Soit π un système de protection, On dit que la commande α fait apparaître le droit r dans l’état de
protection = (S,O, P), si il permet d’introduire r dans une cellule de la matrice P qui ne le contenait pas.
Formellement, permet d’introduire r dans P lorsqu’il existe une assignation θ , telle que θ (α) ne contient
aucune variable et que :
1. θ évalue à vrai toutes les conditions de α .
2.Il existe 1<= k<= j et des états de protections △0, △1, . . . , △j = (S0,O0, P0)
avec △(k−1) = [S(k−1),O(k−1), P(k−1)] et △k = (Sk,Ok, Pk) tels que :
et il existe un sujet s et un objet o tels que s є Sk, o є Ok et r є Pk[s, o], mais s
є Sk−1, o є Ok−1 et r Pk−1[s, o].
16
Soit π un système de protection, nous dirons qu’il est non sûr pour un droit r relativement à un état
de
protection initial △0 , lorsqu’il existe un état de protection △ et une commande α tels que :
1. △0 *△
π
2. α fait apparaître r dans △.
17
Harrison, Ruzzo et Ullman montrent que le problème de l’arrêt des machines de turing est réductible au problème
de
la protection d’où :
Théorème 1 Il est indécidable de savoir si un système de protection est non sûr, pour un droit r relativement à
un état de protection .
Théorème 2 Il existe un algorithme qui décide si un système de protection sans commandes de la forme ‘‘créer
le
sujet x”, est non sûr pour un droit r relativement à un état de protection .
Théorème 3 Il existe un algorithme qui décide si un système de protection monoopérationnel est non sûr pour
un droit r relativement à un état de protection .
Théorème 4 Il existe un algorithme qui décide si un système de protection monotone monoconditionnel est non
sûr pour un droit r relativement à un état de protection .
Théorème 5 Il existe un algorithme qui décide si un système de protection est non sûr si le nombre de sujet est
fini.
18
3. Modèle Take-Grant
Introduit par Jones et al., 1976 est une première variante du modèle HRU.
Est constitué d’un graphe dont les nœuds sont des sujets ou des objets, et des règles de modification de
ce graphe.
Le graphe est une autre représentation de la matrice d’accès.
Il restreint les différentes commandes en les répartissant en quatre catégories:
La commande “create” qui permet de créer un objet et d’attribuer initialement un droit d’accès à un
sujet sur cet objet ;
La commande “remove” qui permet de retirer un droit d’accès d’un sujet sur un objet ;
les commandes de type take qui permettent à un sujet possédant le droit spécial t sur un autre sujet
d’obtenir les droits d’accès que ce sujet possède sur les objets
les commandes de type grant qui permettent à un sujet possédant déjà un droit d’accès sur un objet ainsi
que le droit spécial g sur un autre sujet de céder ce droit d’accès à ce dernier sujet
19
20