pdf 1.5 mo m2.4 - séquence 2

63
Module D02 Management et Productivité des TIC Sécurité des systèmes d'information 1 - Introduction 2 - Identification, Authentification, Autorisation 3 - Principes d'encryptage 4 - Aspects juridiques Téléchargement du chapitre Exercices QCM Bibliographie Gérard-Michel Cochard [email protected]

Upload: truongkhuong

Post on 05-Jan-2017

228 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PDF 1.5 Mo M2.4 - Séquence 2

Module D02

Management et Productivité des TIC

Sécurité des systèmes d'information

1 - Introduction 2 - Identification, Authentification, Autorisation

3 - Principes d'encryptage 4 - Aspects juridiques

Téléchargement du chapitre

Exercices QCM

Bibliographie

Gérard-Michel Cochard

[email protected]

Page 2: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

1 - Introduction

Les dangers qui guettent les SI

Les systèmes d‛information sont basés sur des infrastructures informatiques et de télécommunication. Par suite, la vulnérabilité des infrastructures implique la vulnérabilité des systèmes d‛information.

2 dangers majeurs guettent ces derniers :

Perte de données

Les causes courantes sont :

● la "volonté de dieu" (?) : Feu, inondations, tremblements de terre, guerres, émeutes, rats, …. ● les erreurs matérielles ou logicielles : Fonctionnement défectueux du processeur, disques et

bandes illisibles, erreurs de télécommunication, bogues dans les programmes, … ● les erreurs humaines : Saisie de données erronées, utilisation d‛un mauvais disque, mauvaise

exécution d‛un programme, perte d‛une disquette,…

La solution universelle à ces problèmes : la sauvegarde

Fuite de données et intrusions

Les causes courantes sont :

● Indiscrétion des utilisateurs ● Furetage ● Appât du gain : modification de données, vente d‛information, chantage informatique ● Espionnage industriel ou militaire

Les solutions sont les mécanismes de protection :

● Identification

Page 3: PDF 1.5 Mo M2.4 - Séquence 2

● Authentification ● Autorisation ● Encryptage ● Firewalls ● Audit ● Logiciels anti-virus ● Programmes de tests de vulnérabilité et d‛erreurs de

configuration ● Détection d‛intrusion

Les aspects de la sécurité informatique

Les objectifs de la sécurité informatique sont :

● Réduire les risques technologiques ● Réduire les risques informationnels dans l‛utilisation des systèmes d‛information

Il existe plusieurs domaines de sécurité :

● Sécurité physique :

Aspects liés aux systèmes matériels Aspects liés à l‛environnement : locaux, alimentation électrique, climatisation,…

Mesures : Respect de normes de sécurité, Protections diverses, Traçabilité des entrées, Gestion des accès, Redondance physique, Marquage de matériels

Page 4: PDF 1.5 Mo M2.4 - Séquence 2

● Sécurité logique :

Mécanismes logiciels de sécurité :

Contrôle d‛accès logique : identification, authentification, autorisation Protection des données : cryptage, anti-virus, sauvegarde

● Sécurité applicative : l'objectif est d'éviter les « bugs » :

Méthodologie de développement Contrôles et tests Plans de migration des applications exemple : le bug de l‛an 2000, problème de la date codée, pour l‛année, sur deux chiffres, concerne les données (facile à résoudre) mais concerne aussi es programmes (difficile à résoudre).

● Sécurité de l‛exploitation : elle vise le bon fonctionnement des systèmes

Procédures de maintenance, de test, de diagnostic, de mise à jour Plan de sauvegarde Plan de secours

● Sécurité des télécommunications : Nécessité d‛une infrastructure réseau sécurisée

● au niveau des accès ● au niveau des protocoles● Au niveau des systèmes d‛exploitation ● Au niveau des équipements

4 problèmes principaux à résoudre (cliquez sur l'image):

Page 5: PDF 1.5 Mo M2.4 - Séquence 2
Page 6: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

2 - Identification, authentification, autorisation

● Identification : Se faire connaître du système ● Authentification : Prouver qui on est ● Autorisation : Avoir le droit d‛effectuer une opération précise

Identification et Authentification

Chaque usager doit être connu du système d‛accès aux information ; en général, tout utilisateur possède un nom d‛utilisateur (username) qui lui est demandé lors de la connexion (login) au système. Les usagers sont répertoriés dans un fichier « utilisateurs » (user file).

Il faut ensuite prouver son identité, la reconnaissance étant effectuée par un service d‛authentification. La méthode d‛authentification la plus fréquente est celle des mots de passe (password). Le mot de passe est codé suivant un algorithme connu seulement du système qui effectue une vérification dans le fichier des utilisateurs

Problème de base : faire en sorte que les mots de passe ne puissent pas être facilement devinés.

Page 7: PDF 1.5 Mo M2.4 - Séquence 2

Rappelons à ce propos l'étude de Morris et Thomson (1979) :

1)Établissement d‛une liste de mots de passe :

Noms, prénoms de personnes Noms de rues Noms de villes Mots du dictionnaire …….

2) Comparaison avec les mots de passe des utilisateurs

Résultat : 86% des mots de passe peuvent être devinés.

Parade n°1 : Augmenter le nombre de caractères du mot de passe E

exemple : mot de passe à 7 caractères (parmi 95 caractères ASCII imprimables). Les mots de passe possibles sont au nombre de : 957 = 70 000 000 000 000 mots de passe. Cette liste occuperait 490 000 Go, soit 350 millions de disquettes ou 765 625 CD-ROM ! Si on veut comparer un mot de passe à cette liste, en supposant que l‛on puisse comparer 1000 mots par seconde, il faudrait 2215 ans (sans interruption de travail) pour essayer tous les mots de passe.

Parade n°2 : Mettre au moins 1 minuscule, 1 majuscule, 1 caractère spécial dans un mot de passe : Plus difficile à deviner.

Parade n°3 : Emploi de syllabes aléatoires

exemple : (Wood- 1977) :

cou as di ment

or cu li nier

teur par co jou

pla pour fonc in

con toi mo taire

coulijou plapourtoi asfonctaire parculinier

mots plus faciles à mémoriser mais ne figurant pas dans un dictionnaire

Parade n°4 : changement périodique obligatoire du mot de passe

● soit conseillé ● soit imposé

Parade n°5 : protéger le fichier des mots de passe.

Page 8: PDF 1.5 Mo M2.4 - Séquence 2

● Méthode simpliste : coder les mots de passe avec la même règle ● Méthode plus adaptée : à chaque mot de passe, on fait correspondre un nombre aléatoire (avec une

méthode d‛encryptage) et on code les groupes « mot de passe + nombre aléatoire » avec une règle commune.

exemple :

Autres méthodes : utiliser non pas ce que l‛utilisateur « est » mais ce qu‛il « sait » ou ce qu‛il « a ».

● Emploi d‛un algorithme :

exemple 1 : choix d‛un algorithme par l‛utilisateur : x2

NB: on peut changer d‛algorithme à mi-journée

exemple 2 : algorithme utilisant des informations du système :

● Emploi d‛une carte ou d‛un badge Souvent utilisés avec deux niveaux de reconnaissance : Le numéro de la carte ou du badge Le mot de passe entré par l‛utilisateur (double contrôle).

● Emploi des caractéristiques de l‛utilisateur Empreintes digitales Reconnaissance vocale Analyse de signature Reconnaissance visuelle

● Certificats Utilisés pour l‛accès aux serveurs Web. Grande population d‛utilisateurs : difficulté de gestion des mots de passe Méthode impossible : partage d‛un mot de passe unique Un certificat contient La clé publique de chiffrement Le nom du propriétaire du certificat Le nom de l‛autorité qui a délivré le certificat Le numéro de série du certificat divers attributs (servent à la définition des droits d‛accès) Un certificat n‛est autre qu‛un permis d‛accès.

Page 9: PDF 1.5 Mo M2.4 - Séquence 2

Autorisation : les droits d'accès

Une fois identifié et authentifié, il faut vérifier les droits d‛accès de l‛utilisateur aux objets du systèmes d‛information : Matériels : processeurs, terminaux, disques, imprimantes, … Logiciels : processus, fichiers, bases de données, sémaphores, …

● Première approche : la matrice d‛autorisation

Inconvénient majeur : matrice énorme et creuse

● Deuxième approche : ACL (Access Control List)

Elle consiste à stocker les colonnes de la matrice en ne gardant que les éléments non nuls.

exemple :

● 4 utilisateurs : Jules, Henri, Consuela, Marcel : uid ● 3 groupes : Système, Enseignant, Etudiant : gid

F0 : (Jules, *, RWX) F1 : (Jules, systeme, RWX) F2 : (Jules, *, RW-)(Henri, Enseignant, R--)(Marcel,*,R--) F3 : (*, Etudiant, R--) F4 : (Consuela, *, -W-)(*, Etudiant, R--)

avec (uid, gid, droits) où uid est l'identificateur d‛utilisateur et gid l' identificateur de groupe.

Reprise du principe par UNIX en plus simple : 3 groupes d‛utilisateurs :

● le propriétaire ● le groupe § ● les autres

Pour chaque objet :

Page 10: PDF 1.5 Mo M2.4 - Séquence 2

r = read, w = write, x = execute représenté par 0(interdit) ou 1(permis)

exemple : 111110100 = (764)8 signifie que

● le propriétaire peut lire, écrire, exécuter ● le groupe peut lire et écrire mais pas exécuter ● les autres peuvent seulement lire

● Troisième approche : C-list (liste des capacités)

Le stockage de la matrice des autorisations s'effectue par ligne (listes).

On peut rajouter des droits génériques :

● Créer une nouvelle capacité ● Copier un objet ● Retirer une capacité ● Détruire un objet

Page 11: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

3 - Principes d'encryptage

Substitution et Transposition

L‛encryptage consiste à transformer un texte « en clair » (plain text) en un texte indéchiffrable (cipher text). L‛opération inverse est le décryptage. Deux clés sont nécessitées de manière générale :

Si clé K1 = clé K2 : système classique ou monoclé Si clé K1 <> clé K2 : système biclé

exemple : construction d'une clé : choix d'un mot particulier

Il existe 2 grandes techniques de base : la méthode de substitution et la méthode de transposition.

● Méthode de substitution

le chiffre : remplacement d'un signe par un signe

Le chiffre de César (d'après Suétone) consiste en un décalage de 3 lettres dans l'alphabet :

Version "moderne" : On ajoute au code ASCII d'un caractère, un offset fixe (clé) modulo la taille de l'alphabet.

Page 12: PDF 1.5 Mo M2.4 - Séquence 2

exemple : ajout de 3 au code ASCII

Un outil de cryptographie important est l'analyse en fréquences. Sur un nombre de textes important on recherche la fréquence d'apparition des différentes lettres ; pour des textes en français, on obtient le résultat indicatif suivant :

exemple : soit le texte (en français) suivant à décoder :

L'analyse de l'apparition de chaque lettre donne le résultat suivant :

On peut donc établir le tableau de correspondance :

Résultat brut :

Page 13: PDF 1.5 Mo M2.4 - Séquence 2

4) Le mot ANQOISSE doit signifier ANGOISSE donc O -> G et V -> Q

5) Le mot ALLTMER doit certainement être ALLUMER donc A -> U et donc B -> T

Page 14: PDF 1.5 Mo M2.4 - Séquence 2

6) Le texte devient plus clair et la suite devient plus facile

Marcel Aymé - La rue sans nom.

Le "code" de Vigenère (Blaise de Vigenère ; Traité des chiffres ; 1586) est un chiffre fameux du type substitution. Il est défini par la matrice suivante :

Soit la clé : MOCI et le texte à chiffre : "Le ciel est bleu, la mer est verte." On dispose le texte et la clé comme suit :

Les lignes en jaune (ci-dessous) correspondant aux lettres de la clé (2ème colonne) définissent la substitution :

Page 15: PDF 1.5 Mo M2.4 - Séquence 2

On obtient donc :

On notera que cette méthode est une parade à l'analyse en fréquences.

le code : remplacement d'un mot par un mot.

● Méthode de transposition

Le texte à crypter est découpé en blocs (de 8 caractères par exemple). Soit K1 = 71265843 ce qui signifie que le caractère 1 du bloc va en position 7 du bloc encrypté. Ainsi

VIVE L'INFORMATIQUE devient IVI' EVLFOITMRNAUE Q

Page 16: PDF 1.5 Mo M2.4 - Séquence 2

La clé de décryptage est K2 = 23875416.

exemple plus réel : emploi du codage binaire : principe de la méthode Lucifer (IBM ; Feistel)

Les méthodes usuelles sont des méthodes mixtes où substitution et transposition sont utilisées. Deux méthodes sont bien connues : DES normalisée depuis 1977 (National Bureau of Standards) et RSA.

DES (Data Encryption Standard) - Système à clé secrète

Cette méthode est normalisée. Le processus d'encryptage, bien qu'automatisable facilement, est complexe (du moins à expliquer !). On donne le processus ci-dessous avec détails (on ne vous cache rien !) mais, bien évidemment, il ne

Page 17: PDF 1.5 Mo M2.4 - Séquence 2

faut en retenir que la philosophie d'ensemble. Dans la version d'origine, le texte est découpé en blocs de 64 bits et une clé de 64 bits est utilisée. Le schéma ci-dessous indique le processus de codage :

La clé de codage K donne naissance, comme nous le verrons plus loin à 16 clés secondaires utilisées dans le processus de codage. IP et la transformation inverse IP-1 sont des permutations définies par les tableaux ci-dessous :

IP IP-1

La signification de IP est que le 58ème bit devient le premier bit, le 50ème devient le deuxième, et ainsi de suite. De même pour IP-1, le premier bit du résultat est le bit 40, le deuxième bit du résultat est le bit 8, etc.

La fonction f est définie suivant le schéma ci-dessous :

Page 18: PDF 1.5 Mo M2.4 - Séquence 2

Cette fonction f(R,K) fait intervenir l'opération E qui transforme un bloc de 32 bits en un bloc de 48 bits, les opérations S1 à S8 qui transforment des groupes de 6 bits en groupes de 4 bits, la permutation P qui agit sur un bloc de 32 bits. Ces opérations sont définies ci-dessous :

opération E opération P

Le 1er bit de E(R) est le bit 32, le deuxième est le bit 1, etc.. ; en ce qui concerne la permutation P, le premier bit est le bit 16, le deuxième le bit 7, etc...

S1 S2

S3 S4

Page 19: PDF 1.5 Mo M2.4 - Séquence 2

S5 S6

S7 S8

Explicitons l'usage des opérations Si sur un exemple ; supposons que le sextet à transformer soit 101100 à l'entrée de S1. On sépare le premier bit (1) et le dernier bit (0) que l'on concatène (10 soit 2 en décimal) ; les quatre bits restant constituent le nombre 0110, soit 6 en décimal. A l'intersection de la ligne 2 (les lignes et colonnes sont numérotées à partir de 0) et de la colonne 6 de la matrice S1, on obtient 2, soit sur 4 bits, 0010. Ainsi 101100 se transforme en 0010.

Les clés sont produites sur 48 bits, à partir de la clé de départ K, suivant le processus ci-dessous faisant intervenir les opérations (permuted choice) PC-1 et PC-2 suivant le schéma ci-dessous :

avec

PC-1 PC-2

Page 20: PDF 1.5 Mo M2.4 - Séquence 2

PC-1 : Les bits de KEY sont numérotés de 1 à 64 ; Les bits de C0 sont les bits 57, 49, 41, 33, .... de KEY tandis que les bits de D0 sont les bits 63, 55, 47, 39, ... de KEY.

PC-2 : le premier bit de Ki est le 14ème bit de CiDi, le deuxième bit de Ki est le 17ème bit de CiDi.

Left Shift : les décalages à gauche sont circulaires : le bit sortant à gauche est réintroduit à droite. Toutefois, le décalage est effectué une fois ou deux fois suivant les clés suivant le tableau ci-dessous :

La critique du DES est de nos jours aisée car la clé de 64 (en fait 56 bits) est trop courte et on peut la deviner par essais successifs de combinaisons de 56 bits (il faut quand même du temps, mais les ordinateurs sont de plus en plus performants.). Démonstration de John Gilmore (janvier 1999) : on peut trouver la clé DES avec une machine coûtant 250 000 $ en 22h et 15 min.

DES tend à être remplacé par d‛autres systèmes comme IDEA (International Data Encryption Algorithm) : travail sur blocs de 64 bits clé de 128 bits.

RSA (Rivest, Shamir, Adleman) – système à clé publique

Page 21: PDF 1.5 Mo M2.4 - Séquence 2

Principe : Clé d‛encryptage connue de tous (clé publique) et clé de décryptage secrète. C‛est donc un système biclé.

Faits de base :

1) On connaît un algorithme rapide pour déterminer si un nombre entier (grand) est premier (rappelons qu'un nombre entier est premier s'il n'est divisible que par 1 ou par lui-même) : théorème de Fermat : si p est premier il existe n < p tel que np-1 = 1 (modulo p) Nombre de 130 chiffres : temps machine de quelques minutes

2) On ne connaît pas d‛algorithme rapide pour déterminer les facteurs premiers d‛un nombre entier (grand) non premier. Pour un produit de 2 nombres entiers premiers de 63 chiffres chacun, le temps de calcul serait de 40 000 000 000 000 000 années avec un ordinateur courant (1999) !

Méthode

a) Choisir aléatoirement 2 différents grands nombres premiers (100 chiffres chacun par exemple) p et q. Calculer r = p.q

b) Choisir aléatoirement un grand entier e, premier relativement à (p-1).(q-1) ; e est la clé d‛encryptage.

c) Déterminer la clé de décryptage d telle que d.e = 1 (modulo (p-1).(q-1))

d) Rendre publics r et e, mais pas d

e) Cryptage de P : C = Pe (modulo r)

f) Décryptage : P = Cd (modulo r)

Rappelons que A (modulo B) est égal au reste de la division entière de A par B.

Ainsi : 16 (modulo 3) = 1 car 16 - 5*3 = 1 ; 21 (modulo 12) = 9 car 21 - 1*12 = 9 ; 224 (modulo 95) = 34 car 224 - 2*95 = 34.

On peut utiliser les fonctions fournies par quelques calculettes ou par quelques tableurs. Par exemple Excel procure, pour calculer A (modulo B), la fonction MOD(A;B) qui fonctionne de manière équivalente à A - B*ENT(A/B).

Signalons aussi que l'on peut se réduire à des calculs sur des nombres raisonnables en travaillant sur les puissances :

887 (modulo 187) = [881 (modulo 187) x 882 (modulo 187) x 884 (modulo 187)] = [ 88 (modulo 187) x 7744 (modulo 187) x 59969536 (modulo 187)] (modulo 187) = [88 x 77 x 132] (modulo 187) = 894432 (modulo 187) = 11 (modulo 187)

exemple (volontairement simple)

a) p = 3, q = 5, r = 15

b) (p-1).(q-1) = 8 e = 11 (nombre premier plus grand que p et q)

c) d.11 = 1 (modulo 8) d‛où d = 3

d) Publication de r = 15 et e = 11

e) P = 13 ; encryptage : C = 1311 (modulo 15) = 1 792 160 394 037 (modulo 15) = 7

détail du calcul : C = 1311 (modulo 15) = [131 (modulo 15) x 132 (modulo 15) x 138 (modulo 15)] (modulo 15) = [13 (modulo 15) x 169 (modulo 15) x 815730721 (modulo 15)] (modulo 15) = [13 x 4 x 1] (modulo 15) = 52 (modulo 15) = 7

f) Décryptage : P = 73 (modulo 15) = 343 (modulo 15) = 13

Page 22: PDF 1.5 Mo M2.4 - Séquence 2

Signature d'un message

Une application intéressante : la signature d‛un message. Supposons que Alice (A) envoie à Bob (B) un message, crypté en RSA.

● CPA : clé publique de A (encryptage) ● CPB : clé publique de B (encryptage) ● CSA : clé secrète de A (décryptage) ● CSB : clé secrète de B (décryptage)

On envoie un message P de A vers B. Comment B sait-il que c'est bien A qui a envoyé le message ?

1) au lieu de faire CPB(P), A applique d'abord CSA, puis CPB : C = CPB(CSA(P))

2) B reçoit le message C. Il applique CSB, puis CPA : CPA(CSB(C)) = CPA(CSB(CPB(CSA(P)))) = CPA(CSA(P)) = P

B est ainsi sûr d'avoir reçu un message de A.

Page 23: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

4 - Aspects juridiques

Aspects juridiques de l'encryptage

La réglementation dépend des états.

● USA

Algorithmes de cryptage : arme de 1ère catégorie : exportation interdite des systèmes à clés de plus de 40 bits ;

exemple : problèmes de Philip Zimmermann avec PGP (clé de 128 bits ; accès libre sur Internet)

Cependant licences d'exportation accordées aux produits de grande diffusion aux clés de 56 bits sous certaines conditions Adoucissement de la réglementation depuis 1998 Pas de restriction sur l'importation.

● Union européenne

Communication du 8 octobre 1997 : "Assurer la sécurité et la confiance dans la communication électronique" .

Action 1 : libre circulation des produits de cryptographie

Mais soumission à contrôle cependant (Europe vers reste du monde et espace européen)

Action 2 : directive sur la signature électronique

Objet : harmonisation des procédures entre les pays de l'UE.

En particulier : directive du 23/10/98 : la signature électronique a valeur de preuve.

Page 24: PDF 1.5 Mo M2.4 - Séquence 2

● France

Chiffrement : arme de guerre ("liste des matériels de guerres, armes et munitions")

Régime en 1998:

Mars 1999 : réforme

Liberté totale d'utilisation pour des clés de longueur inférieure à 128 bits Maintien du contrôle à l'exportation pour des clés de longueur supérieure à 56/64 bits Reconnaissance de la valeur probante de la signature électronique Suppression du caractère obligatoire des "tierces parties de confiance"

Une tierce partie de confiance est un organisme possédant la confiance de l'utilisateur et qui effectue pour son compte des opération de gestion des clés :

Tiers de séquestre : gestion des clés servant à la confidentialité ; agréé par le 1er ministre Autorité de certification : application liées à la signature.

Aspects juridiques liés à l'authentification

Tiers certificateur (notaire électronique) :

Organisme certifiant la date et la bonne réception d'un message Nommé par les parties

Page 25: PDF 1.5 Mo M2.4 - Séquence 2

Accusé de réception

Nécessite un témoin : le tiers certificateur

Signature électronique

Législation variable d'un pays à l'autre

Les transactions électroniques

Le contrat "électronique" est un contrat négocié à distance via un réseau de télécommunication.

Admis en droit français si

● Consentement réel et licite ● Capacité de contracter ● Objet et cause licites

Modèles de contrats : CCI de Paris, cabinet Bensoussan. Directive européenne sur la protection des clients

Fiscalité et douanes

a) Commande d'une prestation de service Téléchargement de logiciel, de pages, commande d'un voyage,…

- Site vendeur dans l'UE : TVA de l'Etat de vente payée par l'acheteur TVA déclarée par le vendeur dans l'Etat du vendeur au dessous d'un seuil (100 000 Euros en France)

- Site vendeur hors UE : service fourni hors taxe

b) Commandes de biens matériels

- Site vendeur dans l'UE : TVA de l'Etat de vente payée par l'acheteur

Page 26: PDF 1.5 Mo M2.4 - Séquence 2

- Site vendeur hors UE : l'acheteur achète hors taxe, mais doit payer la taxe française à l'arrivée des biens en France.

c) Douanes

Au sein de l'UE : pas de droits de douane

Biens provenant de l'extérieur de l'UE : droits de douane en principe, Mais pour les biens immatériels, numériques, téléchargeables, exonération provisoire (Organisation Mondiale du Commerce – Mai 1998). Etude d'un système adapté

Protection des usagers

En matière de contrats à distance Directive européenne de mai 1997 : Indication du prix Conditions de vente, droit de résiliation, délai de rétraction (3 mois) Réalisation de la vente en moins de 30 jours

Protection des données à caractère personnel Directive européenne d'octobre 1995 -> modification de la loi "Informatique et Libertés" : renforcement des pouvoirs de la CNIL

Gestion d'une base de profils, utilisation de cookies associés à un nom : déclaration obligatoire

Obligation d'information :

● pour tout questionnaire, le caractère obligatoire ou facultatif des réponses doit être indiqué

● le destinataire des informations doit être identifié ● chacun doit avoir accès à ses propres informations

Page 27: PDF 1.5 Mo M2.4 - Séquence 2

Module D02

Management et Productivité des TIC

Sécurité des systèmes d'information

1 - Introduction2 - Identification, Authentification, Autorisation

3 - Principes d'encryptage4 - Aspects juridiques

ExercicesQCM

Bibliographie

Gérard-Michel Cochard

[email protected]

Page 28: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

1 - Introduction

Les dangers qui guettent les SI

Les systèmes d’information sont basés sur des infrastructures informatiques et de télécommunication. Par suite, la vulnérabilité des infrastructures implique la vulnérabilité des systèmes d’information.

2 dangers majeurs guettent ces derniers :

Perte de données

Les causes courantes sont :

● la "volonté de dieu" (?) : Feu, inondations, tremblements de terre, guerres, émeutes, rats, …. ● les erreurs matérielles ou logicielles : Fonctionnement défectueux du processeur, disques et bandes

illisibles, erreurs de télécommunication, bogues dans les programmes, … ● les erreurs humaines : Saisie de données erronées, utilisation d’un mauvais disque, mauvaise

exécution d’un programme, perte d’une disquette,…

La solution universelle à ces problèmes : la sauvegarde

Fuite de données et intrusions

Les causes courantes sont :

● Indiscrétion des utilisateurs ● Furetage ● Appât du gain : modification de données, vente d’information, chantage informatique ● Espionnage industriel ou militaire

Les solutions sont les mécanismes de protection :

● Identification ● Authentification ● Autorisation ● Encryptage

Page 29: PDF 1.5 Mo M2.4 - Séquence 2

● Firewalls ● Audit ● Logiciels anti-virus ● Programmes de tests de vulnérabilité et d’erreurs de configuration ● Détection d’intrusion

Les aspects de la sécurité informatique

Les objectifs de la sécurité informatique sont :

● Réduire les risques technologiques ● Réduire les risques informationnels dans l’utilisation des systèmes d’information

Il existe plusieurs domaines de sécurité :

● Sécurité physique :

Aspects liés aux systèmes matériels Aspects liés à l’environnement : locaux, alimentation électrique, climatisation,…

Mesures : Respect de normes de sécurité, Protections diverses, Traçabilité des entrées, Gestion des accès, Redondance physique, Marquage de matériels

● Sécurité logique :

Mécanismes logiciels de sécurité :

Contrôle d’accès logique : identification, authentification, autorisation Protection des données : cryptage, anti-virus, sauvegarde

● Sécurité applicative : l'objectif est d'éviter les « bugs » :

Méthodologie de développement Contrôles et tests Plans de migration des applications exemple : le bug de l’an 2000, problème de la date codée, pour l’année, sur deux chiffres, concerne les données (facile à résoudre) mais concerne aussi es programmes (difficile à

Page 30: PDF 1.5 Mo M2.4 - Séquence 2

résoudre).

● Sécurité de l’exploitation : elle vise le bon fonctionnement des systèmes

Procédures de maintenance, de test, de diagnostic, de mise à jour Plan de sauvegarde Plan de secours

● Sécurité des télécommunications : Nécessité d’une infrastructure réseau sécurisée

● au niveau des accès ● au niveau des protocoles● Au niveau des systèmes d’exploitation ● Au niveau des équipements

4 problèmes principaux à résoudre (cliquez sur l'image):

Page 31: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

2 - Identification, authentification, autorisation

● Identification : Se faire connaître du système ● Authentification : Prouver qui on est ● Autorisation : Avoir le droit d’effectuer une opération précise

Identification et Authentification

Chaque usager doit être connu du système d’accès aux information ; en général, tout utilisateur possède un nom d’utilisateur (username) qui lui est demandé lors de la connexion (login) au système. Les usagers sont répertoriés dans un fichier « utilisateurs » (user file).

Il faut ensuite prouver son identité, la reconnaissance étant effectuée par un service d’authentification. La méthode d’authentification la plus fréquente est celle des mots de passe (password). Le mot de passe est codé suivant un algorithme connu seulement du système qui effectue une vérification dans le fichier des utilisateurs

Problème de base : faire en sorte que les mots de passe ne puissent pas être facilement devinés.

Page 32: PDF 1.5 Mo M2.4 - Séquence 2

Rappelons à ce propos l'étude de Morris et Thomson (1979) :

1)Établissement d’une liste de mots de passe :

Noms, prénoms de personnes Noms de rues Noms de villes Mots du dictionnaire …….

2) Comparaison avec les mots de passe des utilisateurs

Résultat : 86% des mots de passe peuvent être devinés.

Parade n°1 : Augmenter le nombre de caractères du mot de passe E

exemple : mot de passe à 7 caractères (parmi 95 caractères ASCII imprimables). Les mots de passe possibles sont au nombre de : 957 = 70 000 000 000 000 mots de passe. Cette liste occuperait 490 000 Go, soit 350 millions de disquettes ou 765 625 CD-ROM ! Si on veut comparer un mot de passe à cette liste, en supposant que l’on puisse comparer 1000 mots par seconde, il faudrait 2215 ans (sans interruption de travail) pour essayer tous les mots de passe.

Parade n°2 : Mettre au moins 1 minuscule, 1 majuscule, 1 caractère spécial dans un mot de passe : Plus difficile à deviner.

Parade n°3 : Emploi de syllabes aléatoires

exemple : (Wood- 1977) :

couasdiment

orculinier

teurparcojou

plapourfoncin

contoimotaire

coulijouplapourtoiasfonctaireparculinier

mots plus faciles à mémoriser mais ne figurant pas dans un dictionnaire

Parade n°4 : changement périodique obligatoire du mot de passe

● soit conseillé ● soit imposé

Parade n°5 : protéger le fichier des mots de passe.

● Méthode simpliste : coder les mots de passe avec la même règle

Page 33: PDF 1.5 Mo M2.4 - Séquence 2

● Méthode plus adaptée : à chaque mot de passe, on fait correspondre un nombre aléatoire (avec une méthode d’encryptage) et on code les groupes « mot de passe + nombre aléatoire » avec une règle commune.

exemple :

Autres méthodes : utiliser non pas ce que l’utilisateur « est » mais ce qu’il « sait » ou ce qu’il « a ».

● Emploi d’un algorithme :

exemple 1 : choix d’un algorithme par l’utilisateur : x2

NB: on peut changer d’algorithme à mi-journée

exemple 2 : algorithme utilisant des informations du système :

● Emploi d’une carte ou d’un badge Souvent utilisés avec deux niveaux de reconnaissance : Le numéro de la carte ou du badge Le mot de passe entré par l’utilisateur (double contrôle).

● Emploi des caractéristiques de l’utilisateur Empreintes digitales Reconnaissance vocale Analyse de signature Reconnaissance visuelle

● Certificats Utilisés pour l’accès aux serveurs Web. Grande population d’utilisateurs : difficulté de gestion des mots de passe Méthode impossible : partage d’un mot de passe unique Un certificat contient La clé publique de chiffrement Le nom du propriétaire du certificat Le nom de l’autorité qui a délivré le certificat Le numéro de série du certificat divers attributs (servent à la définition des droits d’accès) Un certificat n’est autre qu’un permis d’accès.

Autorisation : les droits d'accès

Page 34: PDF 1.5 Mo M2.4 - Séquence 2

Une fois identifié et authentifié, il faut vérifier les droits d’accès de l’utilisateur aux objets du systèmes d’information : Matériels : processeurs, terminaux, disques, imprimantes, … Logiciels : processus, fichiers, bases de données, sémaphores, …

● Première approche : la matrice d’autorisation

Inconvénient majeur : matrice énorme et creuse

● Deuxième approche : ACL (Access Control List)

Elle consiste à stocker les colonnes de la matrice en ne gardant que les éléments non nuls.

exemple :

● 4 utilisateurs : Jules, Henri, Consuela, Marcel : uid ● 3 groupes : Système, Enseignant, Etudiant : gid

F0 : (Jules, *, RWX) F1 : (Jules, systeme, RWX) F2 : (Jules, *, RW-)(Henri, Enseignant, R--)(Marcel,*,R--) F3 : (*, Etudiant, R--) F4 : (Consuela, *, -W-)(*, Etudiant, R--)

avec (uid, gid, droits) où uid est l'identificateur d’utilisateur et gid l' identificateur de groupe.

Reprise du principe par UNIX en plus simple : 3 groupes d’utilisateurs :

● le propriétaire ● le groupe § ● les autres

Pour chaque objet :

Page 35: PDF 1.5 Mo M2.4 - Séquence 2

r = read, w = write, x = execute représenté par 0(interdit) ou 1(permis)

exemple : 111110100 = (764)8 signifie que

● le propriétaire peut lire, écrire, exécuter ● le groupe peut lire et écrire mais pas exécuter ● les autres peuvent seulement lire

● Troisième approche : C-list (liste des capacités)

Le stockage de la matrice des autorisations s'effectue par ligne (listes).

On peut rajouter des droits génériques :

● Créer une nouvelle capacité ● Copier un objet ● Retirer une capacité ● Détruire un objet

Page 36: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

3 - Principes d'encryptage

Substitution et Transposition

L’encryptage consiste à transformer un texte « en clair » (plain text) en un texte indéchiffrable (cipher text). L’opération inverse est le décryptage. Deux clés sont nécessitées de manière générale :

Si clé K1 = clé K2 : système classique ou monoclé Si clé K1 <> clé K2 : système biclé

exemple : construction d'une clé : choix d'un mot particulier

Il existe 2 grandes techniques de base : la méthode de substitution et la méthode de transposition.

● Méthode de substitution

le chiffre : remplacement d'un signe par un signe

Le chiffre de César (d'après Suétone) consiste en un décalage de 3 lettres dans l'alphabet :

Version "moderne" : On ajoute au code ASCII d'un caractère, un offset fixe (clé) modulo la taille de l'alphabet.

Page 37: PDF 1.5 Mo M2.4 - Séquence 2

exemple : ajout de 3 au code ASCII

Un outil de cryptographie important est l'analyse en fréquences. Sur un nombre de textes important on recherche la fréquence d'apparition des différentes lettres ; pour des textes en français, on obtient le résultat indicatif suivant :

exemple : soit le texte (en français) suivant à décoder :

L'analyse de l'apparition de chaque lettre donne le résultat suivant :

On peut donc établir le tableau de correspondance :

Résultat brut :

Page 38: PDF 1.5 Mo M2.4 - Séquence 2

4) Le mot ANQOISSE doit signifier ANGOISSE donc O -> G et V -> Q

5) Le mot ALLTMER doit certainement être ALLUMER donc A -> U et donc B -> T

Page 39: PDF 1.5 Mo M2.4 - Séquence 2

6) Le texte devient plus clair et la suite devient plus facile

Marcel Aymé - La rue sans nom.

Le "code" de Vigenère (Blaise de Vigenère ; Traité des chiffres ; 1586) est un chiffre fameux du type substitution. Il est défini par la matrice suivante :

Soit la clé : MOCI et le texte à chiffre : "Le ciel est bleu, la mer est verte." On dispose le texte et la clé comme suit :

Les lignes en jaune (ci-dessous) correspondant aux lettres de la clé (2ème colonne) définissent la substitution :

Page 40: PDF 1.5 Mo M2.4 - Séquence 2

On obtient donc :

On notera que cette méthode est une parade à l'analyse en fréquences.

le code : remplacement d'un mot par un mot.

● Méthode de transposition

Le texte à crypter est découpé en blocs (de 8 caractères par exemple). Soit K1 = 71265843 ce qui signifie que le caractère 1 du bloc va en position 7 du bloc encrypté. Ainsi

VIVE L'INFORMATIQUE devient IVI' EVLFOITMRNAUE Q

Page 41: PDF 1.5 Mo M2.4 - Séquence 2

La clé de décryptage est K2 = 23875416.

exemple plus réel : emploi du codage binaire : principe de la méthode Lucifer (IBM ; Feistel)

Les méthodes usuelles sont des méthodes mixtes où substitution et transposition sont utilisées. Deux méthodes sont bien connues : DES normalisée depuis 1977 (National Bureau of Standards) et RSA.

DES (Data Encryption Standard) - Système à clé secrète

Cette méthode est normalisée. Le processus d'encryptage, bien qu'automatisable facilement, est complexe (du moins à expliquer !). On donne le

Page 42: PDF 1.5 Mo M2.4 - Séquence 2

processus ci-dessous avec détails (on ne vous cache rien !) mais, bien évidemment, il ne faut en retenir que la philosophie d'ensemble. Dans la version d'origine, le texte est découpé en blocs de 64 bits et une clé de 64 bits est utilisée. Le schéma ci-dessous indique le processus de codage :

La clé de codage K donne naissance, comme nous le verrons plus loin à 16 clés secondaires utilisées dans le processus de codage. IP et la transformation inverse IP-1 sont des permutations définies par les tableaux ci-dessous :

IP IP-1

La signification de IP est que le 58ème bit devient le premier bit, le 50ème devient le deuxième, et ainsi de suite. De même pour IP-1, le premier bit du résultat est le bit 40, le deuxième bit du résultat est le bit 8, etc.

La fonction f est définie suivant le schéma ci-dessous :

Page 43: PDF 1.5 Mo M2.4 - Séquence 2

Cette fonction f(R,K) fait intervenir l'opération E qui transforme un bloc de 32 bits en un bloc de 48 bits, les opérations S1 à S8 qui transforment des groupes de 6 bits en groupes de 4 bits, la permutation P qui agit sur un bloc de 32 bits. Ces opérations sont définies ci-dessous :

opération E opération P

Le 1er bit de E(R) est le bit 32, le deuxième est le bit 1, etc.. ; en ce qui concerne la permutation P, le premier bit est le bit 16, le deuxième le bit 7, etc...

S1 S2

S3 S4

Page 44: PDF 1.5 Mo M2.4 - Séquence 2

S5 S6

S7 S8

Explicitons l'usage des opérations Si sur un exemple ; supposons que le sextet à transformer soit 101100 à l'entrée de S1. On sépare le premier bit (1) et le dernier bit (0) que l'on concatène (10 soit 2 en décimal) ; les quatre bits restant constituent le nombre 0110, soit 6 en décimal. A l'intersection de la ligne 2 (les lignes et colonnes sont numérotées à partir de 0) et de la colonne 6 de la matrice S1, on obtient 2, soit sur 4 bits, 0010. Ainsi 101100 se transforme en 0010.

Les clés sont produites sur 48 bits, à partir de la clé de départ K, suivant le processus ci-dessous faisant intervenir les opérations (permuted choice) PC-1 et PC-2 suivant le schéma ci-dessous :

avec

PC-1 PC-2

Page 45: PDF 1.5 Mo M2.4 - Séquence 2

PC-1 : Les bits de KEY sont numérotés de 1 à 64 ; Les bits de C0 sont les bits 57, 49, 41, 33, .... de KEY tandis que les bits de D0 sont les bits 63, 55, 47, 39, ... de KEY.

PC-2 : le premier bit de Ki est le 14ème bit de CiDi, le deuxième bit de Ki est le 17ème bit de CiDi.

Left Shift : les décalages à gauche sont circulaires : le bit sortant à gauche est réintroduit à droite. Toutefois, le décalage est effectué une fois ou deux fois suivant les clés suivant le tableau ci-dessous :

La critique du DES est de nos jours aisée car la clé de 64 (en fait 56 bits) est trop courte et on peut la deviner par essais successifs de combinaisons de 56 bits (il faut quand même du temps, mais les ordinateurs sont de plus en plus performants.). Démonstration de John Gilmore (janvier 1999) : on peut trouver la clé DES avec une machine coûtant 250 000 $ en 22h et 15 min.

DES tend à être remplacé par d’autres systèmes comme IDEA (International Data Encryption Algorithm) : travail sur blocs de 64 bits clé de 128 bits.

RSA (Rivest, Shamir, Adleman) – système à clé publique

Principe : Clé d’encryptage connue de tous (clé publique) et clé de décryptage secrète. C’est donc un système biclé.

Page 46: PDF 1.5 Mo M2.4 - Séquence 2

Faits de base :

1) On connaît un algorithme rapide pour déterminer si un nombre entier (grand) est premier (rappelons qu'un nombre entier est premier s'il n'est divisible que par 1 ou par lui-même) : théorème de Fermat : si p est premier il existe n < p tel que np-1 = 1 (modulo p) Nombre de 130 chiffres : temps machine de quelques minutes

2) On ne connaît pas d’algorithme rapide pour déterminer les facteurs premiers d’un nombre entier (grand) non premier. Pour un produit de 2 nombres entiers premiers de 63 chiffres chacun, le temps de calcul serait de 40 000 000 000 000 000 années avec un ordinateur courant (1999) !

Méthode

a) Choisir aléatoirement 2 différents grands nombres premiers (100 chiffres chacun par exemple) p et q. Calculer r = p.q

b) Choisir aléatoirement un grand entier e, premier relativement à (p-1).(q-1) ; e est la clé d’encryptage.

c) Déterminer la clé de décryptage d telle que d.e = 1 (modulo (p-1).(q-1))

d) Rendre publics r et e, mais pas d

e) Cryptage de P : C = Pe (modulo r)

f) Décryptage : P = Cd (modulo r)

Rappelons que A (modulo B) est égal au reste de la division entière de A par B.

Ainsi : 16 (modulo 3) = 1 car 16 - 5*3 = 1 ; 21 (modulo 12) = 9 car 21 - 1*12 = 9 ; 224 (modulo 95) = 34 car 224 - 2*95 = 34.

On peut utiliser les fonctions fournies par quelques calculettes ou par quelques tableurs. Par exemple Excel procure, pour calculer A (modulo B), la fonction MOD(A;B) qui fonctionne de manière équivalente à A - B*ENT(A/B).

Signalons aussi que l'on peut se réduire à des calculs sur des nombres raisonnables en travaillant sur les puissances :

887 (modulo 187) = [881 (modulo 187) x 882 (modulo 187) x 884 (modulo 187)] = [ 88 (modulo 187) x 7744 (modulo 187) x 59969536 (modulo 187)] (modulo 187) = [88 x 77 x 132] (modulo 187) = 894432 (modulo 187) = 11 (modulo 187)

exemple (volontairement simple)

a) p = 3, q = 5, r = 15

b) (p-1).(q-1) = 8 e = 11 (nombre premier plus grand que p et q)

c) d.11 = 1 (modulo 8) d’où d = 3

d) Publication de r = 15 et e = 11

e) P = 13 ; encryptage : C = 1311 (modulo 15) = 1 792 160 394 037 (modulo 15) = 7

détail du calcul : C = 1311 (modulo 15) = [131 (modulo 15) x 132 (modulo 15) x 138 (modulo 15)] (modulo 15) = [13 (modulo 15) x 169 (modulo 15) x 815730721 (modulo 15)] (modulo 15) = [13 x 4 x 1] (modulo 15) = 52 (modulo 15) = 7

f) Décryptage : P = 73 (modulo 15) = 343 (modulo 15) = 13

Signature d'un message

Page 47: PDF 1.5 Mo M2.4 - Séquence 2

Une application intéressante : la signature d’un message. Supposons que Alice (A) envoie à Bob (B) un message, crypté en RSA.

● CPA : clé publique de A (encryptage) ● CPB : clé publique de B (encryptage) ● CSA : clé secrète de A (décryptage) ● CSB : clé secrète de B (décryptage)

On envoie un message P de A vers B. Comment B sait-il que c'est bien A qui a envoyé le message ?

1) au lieu de faire CPB(P), A applique d'abord CSA, puis CPB : C = CPB(CSA(P))

2) B reçoit le message C. Il applique CSB, puis CPA : CPA(CSB(C)) = CPA(CSB(CPB(CSA(P)))) = CPA(CSA(P)) = P

B est ainsi sûr d'avoir reçu un message de A.

Page 48: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

4 - Aspects juridiques

Aspects juridiques de l'encryptage

La réglementation dépend des états.

● USA

Algorithmes de cryptage : arme de 1ère catégorie : exportation interdite des systèmes à clés de plus de 40 bits ;

exemple : problèmes de Philip Zimmermann avec PGP (clé de 128 bits ; accès libre sur Internet)

Cependant licences d'exportation accordées aux produits de grande diffusion aux clés de 56 bits sous certaines conditions Adoucissement de la réglementation depuis 1998 Pas de restriction sur l'importation.

● Union européenne

Communication du 8 octobre 1997 : "Assurer la sécurité et la confiance dans la communication électronique" .

Action 1 : libre circulation des produits de cryptographie

Mais soumission à contrôle cependant (Europe vers reste du monde et espace européen)

Action 2 : directive sur la signature électronique

Objet : harmonisation des procédures entre les pays de l'UE.

En particulier : directive du 23/10/98 : la signature électronique a valeur de preuve.

● France

Page 49: PDF 1.5 Mo M2.4 - Séquence 2

Chiffrement : arme de guerre ("liste des matériels de guerres, armes et munitions")

Régime en 1998:

Mars 1999 : réforme

Liberté totale d'utilisation pour des clés de longueur inférieure à 128 bits Maintien du contrôle à l'exportation pour des clés de longueur supérieure à 56/64 bits Reconnaissance de la valeur probante de la signature électronique Suppression du caractère obligatoire des "tierces parties de confiance"

Une tierce partie de confiance est un organisme possédant la confiance de l'utilisateur et qui effectue pour son compte des opération de gestion des clés :

Tiers de séquestre : gestion des clés servant à la confidentialité ; agréé par le 1er ministre Autorité de certification : application liées à la signature.

Aspects juridiques liés à l'authentification

Tiers certificateur (notaire électronique) :

Organisme certifiant la date et la bonne réception d'un message Nommé par les parties

Accusé de réception

Nécessite un témoin : le tiers certificateur

Page 50: PDF 1.5 Mo M2.4 - Séquence 2

Signature électronique

Législation variable d'un pays à l'autre

Les transactions électroniques

Le contrat "électronique" est un contrat négocié à distance via un réseau de télécommunication.

Admis en droit français si

● Consentement réel et licite ● Capacité de contracter ● Objet et cause licites

Modèles de contrats : CCI de Paris, cabinet Bensoussan. Directive européenne sur la protection des clients

Fiscalité et douanes

a) Commande d'une prestation de service Téléchargement de logiciel, de pages, commande d'un voyage,…

- Site vendeur dans l'UE : TVA de l'Etat de vente payée par l'acheteur TVA déclarée par le vendeur dans l'Etat du vendeur au dessous d'un seuil (100 000 Euros en France)

- Site vendeur hors UE : service fourni hors taxe

b) Commandes de biens matériels

- Site vendeur dans l'UE : TVA de l'Etat de vente payée par l'acheteur

- Site vendeur hors UE : l'acheteur achète hors taxe, mais doit payer la taxe française à l'arrivée des biens en France.

c) Douanes

Page 51: PDF 1.5 Mo M2.4 - Séquence 2

Au sein de l'UE : pas de droits de douane

Biens provenant de l'extérieur de l'UE : droits de douane en principe, Mais pour les biens immatériels, numériques, téléchargeables, exonération provisoire (Organisation Mondiale du Commerce – Mai 1998). Etude d'un système adapté

Protection des usagers

En matière de contrats à distance Directive européenne de mai 1997 : Indication du prix Conditions de vente, droit de résiliation, délai de rétraction (3 mois) Réalisation de la vente en moins de 30 jours

Protection des données à caractère personnel Directive européenne d'octobre 1995 -> modification de la loi "Informatique et Libertés" : renforcement des pouvoirs de la CNIL

Gestion d'une base de profils, utilisation de cookies associés à un nom : déclaration obligatoire

Obligation d'information :

● pour tout questionnaire, le caractère obligatoire ou facultatif des réponses doit être indiqué ● le destinataire des informations doit être identifié ● chacun doit avoir accès à ses propres informations

Page 52: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

Bibliographie

● A. Tanenbaum : Systèmes d’exploitation (InterEditions) ● A. Tanenbaum : Réseaux (InterEditions) ● S. Ghernaouti-Helie : Sécurité Internet (Dunod) ● W. Stallings : Data and Computer Communications (Prentice Hall) ● Maekawa, Oldehoeft & Oldehoeft : Operating Systems (Benjamin) ● Réseaux et protection numérique des documents multimédias (études INA) ● Réseaux et commerce électronique (études INA) ● J.P. Lovinfosse : Le piratage informatique (Marabout) ● N.J.Yeager, R.E.McGrath : Technologie des serveurs Web (Thomson Pub.) ● S.M.Bellowin, W.R.Cheswick : Firewalls et sécurité Internet (Addison Wesley) ● A.Fenyö, F.Le Guern, S. Tardieu : Raccorder son réseau d'entreprise à l'Internet (Eyrolles) ● Commission Nationale de l'Informatique et des Libertés : http://www.cnil.fr● S. Singh : Histoire des codes secrets (Le livre de poche) ---- à lire absolument -----

Page 53: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

Exercices

Exercice 1

On désire confronter les trois possibilités suivantes :

● ACL ● Unix ● C-list

aux situations suivantes :

a) Jojo désire que ses fichiers soient lisibles par quiconque sauf Zaza.b) Arthur et Gédéon souhaitent partager seulement entre eux l'accès total à quelques fichiers.c) Jaja désire que certains de ses fichiers soient publics.

Quelles sont vos propositions ?

Exercice 2

Encrypter le mot "SECURITE" en utilisant une permutation de longueur 3 : f(1) = 3 ; f(2) = 1 ; f(3) = 2

Exercice 3

Encrypter le mot "SECURITE" en utilisant le chiffre de Vigenère avec la clé MOCI.

Exercice 4

On souhaite décoder un message encrypté suivant :

On connaît cependant les informations suivantes :

Page 54: PDF 1.5 Mo M2.4 - Séquence 2

● Le message utilise seulement des lettres majuscules et le caractère "espace" (noté b).

● Le caractère "espace" est considéré comme la 27ème lettre de l'alphabet latin.

● Le message est écrit en français.

● Le message est chiffré par une méthode de substitution utilisant un décalage alphabétique.

● La fréquence d'apparition des lettres dans un texte écrit en français est donnée par le tableau ci-dessous :

Avec ces indications, il devrait être possible de décoder le message ci-dessus.

Exercice 5

Bob veut envoyer à Alice un message composé de la seule lettre X. Cette lettre a le code ASCII 1011000, soit 88 en décimal. La donnée à transmettre est donc le nombre M=88.

Alice et Bob conviennent d'utiliser le cryptage RSA. Alice choisit les nombres p=13 et q=19 et garde secrets ces deux nombres. Alice choisit aussi e=5 et diffuse les valeurs e et N=p.q. La paire (e, N) est la clé publique.

a) Bob encrypte le message M avec la clé publique. Quel est le nombre crypté C ?

b) C est envoyé à Alice . Pour décrypter, Alice définit sa clé secrète à partir de Z=(p-1).(q-1) de façon que d.e = 1 (mod Z). Quelle est la valeur de d ?

c) Alice décrypte le message C. Retrouve-t-on le message original ?

Solution de l'exercice 1

On prendra comme exemple les fichiers suivants :

● F0 fichier personnel de Zaza● F1, F2, F3 fichiers de Jojo● F4, F5 fichiers partagés par Arthur et Gédéon● F6 fichier personnel d'Arthur● F7 fichier personnel de Gédéon● F8, F9 fichiers "publics" de Jaja● F10 fichier personnel de Jaja.

et on répartira les utilisateurs dans les groupes suivants :

G1 ={Jojo,....} ne contient pas ZazaG2 = groupe grand public

Page 55: PDF 1.5 Mo M2.4 - Séquence 2

G3=(Zaza} ne contient que ZazaG4={Arthur, Gédéon}G5={Jaja,....}

Cas de ACL

F0 : (Zaza,G3, ---)F1 : (Jojo, G1, RWX)(*,G2,R--)(Zaza,G3,---)(*,G4,R--)(*,G5,R--)F2 : (Jojo, G1, RWX)(*,G2,R--)(Zaza,G3,---)(*,G4,R--)(*,G5,R--)F3 : (Jojo, G1, RWX)(*,G2,R--)(Zaza,G3,---)(*,G4,R--)(*,G5,R--)F4 : (Arthur,G4,RWX)(Gedeon,G4,RWX)F5 : (Arthur,G4,RWX)(Gedeon,G4,RWX)F6 : (Arthur,G4,RWX)F7 : (Gedeon,G4,RWX)F8 : (*,*,RWX)F9 : (*,*,RWX)F10 : (Jaja,G5,RWX)

Cas de Unix

F0 : (rwx,---,---)F1 : (rwx, r--,---)F2 : (rwx,r--,---)F3 : (rwx,r--,---)F4 : (rwx,rwx,---)F5 : (rwx,rwx,---)F6 : (rwx,---,---)F7 : (rwx,---,---)F8 : (rwx,rwx,rwx)F9 : (rwx,rwx,rwx)F10 : (rwx,---,---)

Cas de C-List

p1 : processus initié par Jojop2 : processus initié par Zazap3 : processus initié par Arthurp4 : processus initié par Gédéonp5 : processus initié par JajaP6 : processus initié par n'importe qui d'autre

Page 56: PDF 1.5 Mo M2.4 - Séquence 2

Solution de l'exercice 2

Donc SECURITE ----> UGEWTKVG

Solution de l'exercice 3

Solution de l'exercice 4

La lettre la plus fréquente est L. On peut donc supposer qu'il s'agit de E et puisqu'il s'agit d'une transposition, on a la correspondance :

d'où le décodage du message :

Solution de l'exercice 5

a)

r = p.q = 247

C = Pe = 5 277 319 168 (modulo 247) = 160 Noter que 160 est le reste de la division entière de 5 277 319 168 par 247.

b)

Z =(p-1).(q-1) = 216 et d doit vérifier l'équation d=(216Q + 1)/5 où Q est le quotient de la division entière de 5d par 216.

On peut essayer les valeurs successives de Q pour trouver d :

Page 57: PDF 1.5 Mo M2.4 - Séquence 2

d=173 est la première valeur trouvée entière. Nous l'adoptons.

c)

P=Cd (modulo 247) = 160173 (modulo 247) . Pour obtenir le résultat, il faut décomposer :

1602 (modulo 247) = 159 (modulo 247)1604 (modulo 247) = 25 281 (modulo 247) = 87 (modulo 247)1608 (modulo 247) = 7 569 (modulo 247) = 159 (modulo 247)16016 (modulo 247) = 25 281 (modulo 247) = 87 (modulo 247)16032 (modulo 247) = 7 569 (modulo 247) = 159 (modulo 247)16064 (modulo 247) = 25 281 (modulo 247) = 87 (modulo 247)160128 (modulo 247) = 7 569 (modulo 247) = 159 (modulo 247)160160 (modulo 247) = 25 281 (modulo 247) = 87 (modulo 247)160168 (modulo 247) = 4 019 679 (modulo 247) = 1 (modulo 247)160172 (modulo 247) = 87 (modulo 247)160173 (modulo 247) = 13 920 (modulo 247) = 88 (modulo (247)

On retrouve bien le résultat initial.

Page 58: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

Exercices

Exercice 1

On désire confronter les trois possibilités suivantes :

● ACL ● Unix ● C-list

aux situations suivantes :

a) Jojo désire que ses fichiers soient lisibles par quiconque sauf Zaza. b) Arthur et Gédéon souhaitent partager seulement entre eux l'accès total à quelques fichiers. c) Jaja désire que certains de ses fichiers soient publics.

Quelles sont vos propositions ?

Exercice 2

Encrypter le mot "SECURITE" en utilisant une permutation de longueur 3 : f(1) = 3 ; f(2) = 1 ; f(3) = 2

Exercice 3

Encrypter le mot "SECURITE" en utilisant le chiffre de Vigenère avec la clé MOCI.

Exercice 4

On souhaite décoder un message encrypté suivant :

On connaît cependant les informations suivantes :

Page 59: PDF 1.5 Mo M2.4 - Séquence 2

● Le message utilise seulement des lettres majuscules et le caractère "espace" (noté b).

● Le caractère "espace" est considéré comme la 27ème lettre de l'alphabet latin.

● Le message est écrit en français.

● Le message est chiffré par une méthode de substitution utilisant un décalage alphabétique.

● La fréquence d'apparition des lettres dans un texte écrit en français est donnée par le tableau ci-dessous :

Avec ces indications, il devrait être possible de décoder le message ci-dessus.

Exercice 5

Bob veut envoyer à Alice un message composé de la seule lettre X. Cette lettre a le code ASCII 1011000, soit 88 en décimal. La donnée à transmettre est donc le nombre M=88.

Alice et Bob conviennent d'utiliser le cryptage RSA. Alice choisit les nombres p=13 et q=19 et garde secrets ces deux nombres. Alice choisit aussi e=5 et diffuse les valeurs e et N=p.q. La paire (e, N) est la clé publique.

a) Bob encrypte le message M avec la clé publique. Quel est le nombre crypté C ?

b) C est envoyé à Alice . Pour décrypter, Alice définit sa clé secrète à partir de Z=(p-1).(q-1) de façon que d.e = 1 (mod Z). Quelle est la valeur de d ?

c) Alice décrypte le message C. Retrouve-t-on le message original ?

Solution de l'exercice 1

On prendra comme exemple les fichiers suivants :

● F0 fichier personnel de Zaza● F1, F2, F3 fichiers de Jojo● F4, F5 fichiers partagés par Arthur et Gédéon● F6 fichier personnel d'Arthur● F7 fichier personnel de Gédéon● F8, F9 fichiers "publics" de Jaja● F10 fichier personnel de Jaja.

et on répartira les utilisateurs dans les groupes suivants :

Page 60: PDF 1.5 Mo M2.4 - Séquence 2

G1 ={Jojo,....} ne contient pas Zaza G2 = groupe grand public G3=(Zaza} ne contient que Zaza G4={Arthur, Gédéon} G5={Jaja,....}

Cas de ACL

F0 : (Zaza,G3, ---) F1 : (Jojo, G1, RWX)(*,G2,R--)(Zaza,G3,---)(*,G4,R--)(*,G5,R--) F2 : (Jojo, G1, RWX)(*,G2,R--)(Zaza,G3,---)(*,G4,R--)(*,G5,R--) F3 : (Jojo, G1, RWX)(*,G2,R--)(Zaza,G3,---)(*,G4,R--)(*,G5,R--) F4 : (Arthur,G4,RWX)(Gedeon,G4,RWX) F5 : (Arthur,G4,RWX)(Gedeon,G4,RWX) F6 : (Arthur,G4,RWX) F7 : (Gedeon,G4,RWX) F8 : (*,*,RWX) F9 : (*,*,RWX) F10 : (Jaja,G5,RWX)

Cas de Unix

F0 : (rwx,---,---) F1 : (rwx, r--,---) F2 : (rwx,r--,---) F3 : (rwx,r--,---) F4 : (rwx,rwx,---) F5 : (rwx,rwx,---) F6 : (rwx,---,---) F7 : (rwx,---,---) F8 : (rwx,rwx,rwx) F9 : (rwx,rwx,rwx) F10 : (rwx,---,---)

Cas de C-List

p1 : processus initié par Jojo p2 : processus initié par Zaza p3 : processus initié par Arthur p4 : processus initié par Gédéon p5 : processus initié par Jaja P6 : processus initié par n'importe qui d'autre

Page 61: PDF 1.5 Mo M2.4 - Séquence 2

Solution de l'exercice 2

Donc SECURITE ----> UGEWTKVG

Solution de l'exercice 3

Solution de l'exercice 4

La lettre la plus fréquente est L. On peut donc supposer qu'il s'agit de E et puisqu'il s'agit d'une transposition, on a la correspondance :

d'où le décodage du message :

Solution de l'exercice 5

a)

r = p.q = 247

C = Pe = 5 277 319 168 (modulo 247) = 160 Noter que 160 est le reste de la division entière de 5 277 319 168 par 247.

b)

Z =(p-1).(q-1) = 216 et d doit vérifier l'équation d=(216Q + 1)/5 où Q est le quotient de la division entière de 5d par 216.

Page 62: PDF 1.5 Mo M2.4 - Séquence 2

On peut essayer les valeurs successives de Q pour trouver d :

d=173 est la première valeur trouvée entière. Nous l'adoptons.

c)

P=Cd (modulo 247) = 160173 (modulo 247) . Pour obtenir le résultat, il faut décomposer :

1602 (modulo 247) = 159 (modulo 247) 1604 (modulo 247) = 25 281 (modulo 247) = 87 (modulo 247) 1608 (modulo 247) = 7 569 (modulo 247) = 159 (modulo 247) 16016 (modulo 247) = 25 281 (modulo 247) = 87 (modulo 247) 16032 (modulo 247) = 7 569 (modulo 247) = 159 (modulo 247) 16064 (modulo 247) = 25 281 (modulo 247) = 87 (modulo 247) 160128 (modulo 247) = 7 569 (modulo 247) = 159 (modulo 247) 160160 (modulo 247) = 25 281 (modulo 247) = 87 (modulo 247) 160168 (modulo 247) = 4 019 679 (modulo 247) = 1 (modulo 247) 160172 (modulo 247) = 87 (modulo 247) 160173 (modulo 247) = 13 920 (modulo 247) = 88 (modulo (247)

On retrouve bien le résultat initial.

Page 63: PDF 1.5 Mo M2.4 - Séquence 2

Sécurité des systèmes d'informationversion modifiée le 27 septembre 2006

Bibliographie

● A. Tanenbaum : Systèmes d‛exploitation (InterEditions) ● A. Tanenbaum : Réseaux (InterEditions) ● S. Ghernaouti-Helie : Sécurité Internet (Dunod) ● W. Stallings : Data and Computer Communications (Prentice Hall) ● Maekawa, Oldehoeft & Oldehoeft : Operating Systems (Benjamin) ● Réseaux et protection numérique des documents multimédias (études INA) ● Réseaux et commerce électronique (études INA) ● J.P. Lovinfosse : Le piratage informatique (Marabout) ● N.J.Yeager, R.E.McGrath : Technologie des serveurs Web (Thomson Pub.) ● S.M.Bellowin, W.R.Cheswick : Firewalls et sécurité Internet (Addison Wesley) ● A.Fenyö, F.Le Guern, S. Tardieu : Raccorder son réseau d'entreprise à l'Internet (Eyrolles) ● Commission Nationale de l'Informatique et des Libertés : http://www.cnil.fr● S. Singh : Histoire des codes secrets (Le livre de poche) ---- à lire absolument -----