• Aucun résultat trouvé

Authentification de messages et mots de passe

N/A
N/A
Protected

Academic year: 2022

Partager "Authentification de messages et mots de passe"

Copied!
57
0
0

Texte intégral

(1)

Authentification de messages et mots de passe

S´ebastien Gambs sgambs@irisa.fr 1 d´ecembre 2014

(2)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Introduction `a l’authentification Types d’authentification Authentification et s´ecurit´e Plan du cours

Authentification de messages

Code d’authentification de message CBC-MAC

HMAC

Contrˆole d’acc`es par mots de passe Longueur des mots de passe Stockage de mots de passe Craquage de mots de passe

(3)

Introduction ` a l’authentification

(4)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Types d’authentification Authentification et s´ecurit´e Plan du cours

Authentification

Authentification: v´erification de l’identit´e d’une entit´e (personne ou ordinateur) afin d’autoriser l’acc`es `a certaines ressources.

Preuve d’identit´e possible par :

I ce que l’on sait (mot de passe et identifiant personnel),

I ce que l’on poss`ede(certificat num´erique, carte `a puce, jeton),

I ce que l’on est(empreinte digitale, iris ou voix).

Authentification possible par un ou plusieurs de ces ´el´ements.

(5)

Exemple : jeton cryptographique (ici SecurID)

(Extrait d’une d´emo des laboratoires RSA sur SecurID)

(6)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Types d’authentification Authentification et s´ecurit´e Plan du cours

Exemples de syst` emes o` u l’authentification est n´ ecessaire

I Acc`es `a mon compte informatique depuis un poste de l’universit´e.

I Acc`es `a distance `a mon serveur de courriel depuis Internet.

I Connexion `a un r´eseau sans-fil en acc`es libre.

I Acc`es physique `a une zone d’acc`es restreinte.

I Authenticit´e de mon abonnement de transport mensuel.

I Acc`es d’un m´edecin au dossier d’un de ses patients.

I . . .

(7)

Types de m´ ethodes d’authentification

I Authentification simple: se base sur la v´erification d’un seul

´ el´ement.

I Exemple: login et mot de passe.

I Authentification forte: combinaison de la v´erification de deux facteurs ou plus.

I L’authentification est consid´er´ee comme r´eussie seulement si toutes les v´erifications individuelles des ´el´ements sont valid´ees.

I Exemple: jeton de s´ecurit´e + scan de l’iris.

I Authentification unique (Single-Sign-Onou SSO en anglais) : on s’authentifie une fois pour toute et ensuite on peut acc´eder

`

a plusieurs applications ou services situ´es sur des serveurs diff´erents. Exemples: Kantara initiative, OpenID.

I Am´eliore la facilit´e d’utilisation mais un seul point d’entr´ee `a attaquer qui permet d’acc´eder `a toutes les ressources.

(8)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Types d’authentification Authentification et s´ecurit´e Plan du cours

Lien entre identification et authentification

I Identification: connaissance de l’identit´e d’une entit´e.

I Afin de d´eterminer l’identit´e, le v´erificateur compare l’information recue `a celle de toutes les autres entit´es

⇒ en g´en´eral l’identit´e est unique

I Remarque: attention `a ne pas confondre authentification et identification.

I Pour prouver l’authenticit´e d’un utilisateur, il n’est pas n´ecessaire de l’identifier.

I Exemple: un utilisateur pourrait s’authentifier sans d´eclarer son identit´e en prouvant qu’il appartient `a un groupe ou qu’il dispose d’une accr´editation anonyme.

(9)

Triade des besoins fondamentaux de la s´ ecurit´ e

(10)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Types d’authentification Authentification et s´ecurit´e Plan du cours

Triade des besoins fondamentaux de la s´ ecurit´ e (suite)

1. Confidentialit´e: prot´eger le contenu d’un message contre un espion qui ´ecouterait les communications.

I Obtenu en g´en´eral en utilisant un cryptosyst`eme s´ecuritaire.

2. Authentification: ˆetre capable de v´erifier l’origine d’un message ainsi qu’´eventuellement son int´egrit´e.

I Typiquement obtenu aussi par des techniques

cryptographiques (comme celles dont on va discuter dans le cours d’aujourd’hui).

3. Disponibilit´e: assurer la disponibilit´e d’un service/syst`eme mˆeme contre un adversaire qui essayerait de l’attaquer afin de le faire se crasher.

I Peut ˆetre pr´evenu en d´etectant une attaque ou en mettant en place des r´ep´etitions du serveur qui fourni le service.

(11)

Attaques possibles sur la s´ ecurit´ e d’un protocole (1/3)

1. Espionnage: l’adversaire capture les informations envoy´ees par le protocole.

2. Modification: l’adversaire alt`ere l’information transmise par le protocole.

3. Rejeu: l’adversaire rejoue un message captur´e plus tard dans le mˆeme protocole ou dans un autre contexte.

(12)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Types d’authentification Authentification et s´ecurit´e Plan du cours

Attaques possibles sur la s´ ecurit´ e d’un protocole (2/3)

4. R´eflection: forme sp´ecifique d’attaque par rejeu o`u

l’adversaire renvoie simplement un d´efi qui lui ´etait destin´e.

I Possible si plusieurs sessions du mˆeme protocole peuvent fonctionner en parall`ele.

5. D´eni de service: l’adversaire empˆeche les participants de communiquer ou de compl´eter le protocole.

6. Typage: l’adversaire remplace un champ du message par une autre valeur (en g´en´eral chiffr´e).

(13)

Attaques possibles sur la s´ ecurit´ e d’un protocole (3/3)

7. Cryptanalyse: l’adversaire profite d’une faiblesse cryptographique du protocole pour attaquer une de ses propri´et´es de s´ecurit´e.

8. Manipulation de certificat: l’adversaire choisit ou modifie le certificat utilis´e afin de pouvoir s’authentifier.

9. Interactionsde protocole: l’adversaire exploite le fait que la mˆeme cl´e soit utilis´e dans plusieurs types de protocole pour attaquer leur s´ecurit´e.

(14)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Types d’authentification Authentification et s´ecurit´e Plan du cours

Plan du cours

Dur´ee du cours: 16h de cours magistraux + 16h de TP.

Quelques sujets abord´es:

I Introduction `a l’authentification, authentification de messages et contrˆole d’acc`es par mots de passe (ce cours).

I Introduction `a l’authentification biom´etrique.

I S´ecurit´e mat´erielle et authentification.

I Kerberos.

I Authentification dans les r´eseaux sans-fil (wifi, RFID et r´eseaux de capteurs).

I Des suggestions pour d’autres sujets?

(15)

Authentification de messages

(16)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Authentification de messages

I Question fondamentale: comment est ce que Bob peut s’assurer que le message pr´etendument envoy´e par Alice a bien

´

et´e envoy´e par Alice et non pas par `Eve?

I Rappel: dans ce cours, on focalise sur l’authenticit´e du message, pas sur sa confidentialit´e bien que cela soit un besoin compl´ementaire.

I Confidentialit´e6⇒ authenticit´e

I Hypoth`ese: Alice et Bob partagent en commun un secret non connu de `Eve.

(17)

Code d’authentification de message

I Code d’authentification de messageou CAM (Message Authentication Code ouMAC en anglais) : syst`eme d’authentification de messages `a partir d’une cl´e secr`ete partag´ee.

I Objectif principal: empˆecher qu’`Eve, qui ne connaˆıt pas la cl´e secr`ete de Alice et Bob, ne puisse fabriquer de faux messages et emprunter l’identit´e de l’un aupr`es de l’autre.

I Algorithme d’authentification: g´en`ere un CAMs `a partir d’une cl´e k et d’un messagem: s = Sk(m).

I Lorsqu’Alice veut communiquer avec Bob, elle lui envoie la paire (m,s) sur un canal o`u `Eve est potentiellement pr´esente.

I Algorithme de v´erification: v´erifie si un CAMs correspond bien au message m en utilisant la cl´e secr`ete s:

Vk(s,m) =accept si s = Sk(m) et reject sinon.

(18)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Illustration du principe de CAM

(Extrait de Wikipedia)

(19)

Propri´ et´ es des CAMs

I Propri´et´e principale: sans connaissance de la cl´e secr`ete, un adversaire ne peut pas g´en´erer un message valide qui n’a pas

´

et´e pr´ealablement authentifi´e par l’envoyeur l´egitime.

I Corollaire: implique en mˆeme temps que l’adversaire ne peut pas modifier un message sans ˆetre d´etect´e par le receveur.

I Rappel: int´egrit´e 6= confidentialit´e.

I Un message peut ˆetre confidentiel sans ˆetre int`egre.

I Exemple: le masque jetable (one-time paden anglais) qui est inconditionnellement s´ecuritaire pour la confidentialit´e mais dont un bit peut ˆetre chang´e facilement.

I Un message peut ˆetre int`egre sans ˆetre confidentiel.

I Exemple: m est envoy´e en clair sans aucun chiffrement pr´ealable, en mˆeme temps ques le CAM de ce message.

(20)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Probl` eme de la fraˆıcheur du message

I L’int´egrit´e n’implique pas que le message est r´ecent

⇒ attaque par rejeu possible

I Sc´enario: supposons par exemple qu’Alice envoie lundi le message suivant `a Bob avec son codes :

(’rendez-vous au restaurant ce soir a 20h’,s)

I Eve qui est jalouse d’Alice et ´` ecoute ses communications voit passer ce message et l’enregistre.

I Mardi, `Eve peut renvoyer le mˆeme message `a Bob sans que celui-ci puisse mettre son authenticit´e en doute.

(21)

Contre-mesures possibles pour ´ eviter le rejeu

Contre-mesure 1:

I Inclure un index i dans chaque message en plus de son contenu.

I Bob enregistre tous les messages envoy´es par Alice et refuse un message qu’il a d´ej`a re¸cu.

I Il peut aussi d´etecter si `Eve a bloqu´e la transmission d’un message s’il re¸coit les messages d’indexesi et i+ 2 mais pas le messagei + 1.

Contre-mesure 2:

I Alice introduit une ´etiquette temporelle dans le message transmis `a Bob.

I Exemple: ’message envoy´e lundi 2 janvier `a 16h12’.

I Bob refuse un message dont l’´etiquette temporelle a d´epass´e un certain d´elai.

(22)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Int´ egrit´ e inconditionnelle

I Il existe des m´ecanismes qui permettent d’assurer une int´egrit´e inconditionnelle mais qui sont plutˆot inefficaces en pratique.

I Par exemple supposons qu’Alice souhaite envoyer `a Bob un message parmi n possibles : m∈ {m1, . . . ,mn}.

I A chaque` mi est associ´e une chaˆıne al´eatoire si de k bits.

I Exemple:

message CAM m1 s1 . . . . mn sn

I Lorsqu’Alice veut envoyer le message mi `a Bob, elle envoie aussisi. Bob v´erifie si le si re¸cu est celui associ´e `a mi.

I La probabilit´e qu’un adversaire puisse authentifier un message mj non vu auparavant est ´egale `a 2k (c’est-`a-dire la

(23)

Limite pratique de l’int´ egrit´ e inconditionnelle

I La longueur des cl´es va d´ependre du nombre de messages qu’on souhaite authentifi´e.

I L’int´egrit´e inconditionnelle r´eclame des cl´es de longueur tr`es importante d`es que l’espace possible des messages devient non-trivial.

I Exemple: si on consid`ere tous les messages possibles sur 1000 bits, il faudrait qu’Alice et Bob stockent un tableau de 21000 lignes, soit plus de lignes qu’il n’y a d’atomes dans l’univers.

I Probl`eme fondamental en s´ecurit´e et cryptographie: comment r´egler le probl`eme de la distribution et g´en´eration de cl´es?

I Facile si Alice et Bob se sont rencontr´es auparavant mais difficile sur un canal qu’`Eve espionne potentiellement.

I Desideratum pratique: avoir un syst`eme n´ecessitant des cl´es courtes et r´eutilisables.

(24)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Attaque par fouille exhaustive

I Si la cl´e choisie est de longueur trop courte et l’adversaire collecte quelques messages

⇒ la cl´e est probablement uniquement d´etermin´ee

⇒ l’adversaire peut la trouver en pratiquant une fouille exhaustive sur l’espace des cl´es

⇒ l’adversaire peut produire tous les messages valides qu’il d´esire

I Solution: utiliser une cl´e de longueur suffisante pour ´eviter toute espoir de fouille exhaustive (par exemple au moins 128 bits).

(25)

CAM ` a partir d’un chiffrement par blocs

I La m´ethode de chiffrements par blocs dans des

cryptosyst`emes symm´etriques tel que DES ou AES peut ˆetre utilis´e pour authentifier un message.

I Exemple: m´ethode d’enchaˆınements de blocs (Cipher Block ChainingouCBC en anglais).

I Fonctionnement d’un CBC-MAC: le messagem est d´ecoup´e en blocs de taille constante,m=m1, . . . ,ml et le chiffrement du dernier bloccl joue le rˆole de CAM pour le message.

(26)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

S´ ecurit´ e de CBC-MAC

I CBC-MAC est une m´ethode sˆure pour la g´en´eration de CAM en notant que la longueur des messages `a authentifier est fixe et connue (Bellare, Kilian et Rogaway 00).

I Plus pr´ecis´ement, si le chiffrement par blocs utilis´e pour impl´ementer CBC-MAC est s´ecuritaire

⇒ le CBC-MAC r´esultant sera lui aussi s´ecuritaire

I Probl`eme: la s´ecurit´e d’un CBC-MAC devient plus probl´ematique lorsque la taille du message peut varier.

(27)

M´ ethodes de rembourrage

Lorsque la taille d’un message n’atteint pas un multiple de la taille des blocs, il est possible de le “rembourrer” (paddingen anglais).

M´ethodes de rembourrage possibles:

I M´ethode 1: ajout au message d’un nombre minimum de 0 pour que sa longueur soit un multiple de la taille des blocs.

I Faiblesse: un adversaire peut fabriquer des faux messages en enlevant ou retirant des 0 `a la fin.

I M´ethode 2: ajout d’un 1 suivi de suffisamment de 0 comme la technique pr´ec´edente.

I Evite l’attaque d´´ ecrite ci-dessus mais en permet d’autres.

I M´ethode 3: ajout de 0’s comme pour la m´ethode 1 ainsi qu’un bloc en d´ebut de message qui pr´ecise sa taille.

(28)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Transformations de l’entr´ ee et de la sortie

Standard ISO/IEC 9797-1: sp´ecifie plusieurs m´ethodes de construction de CBC-MAC qui peuvent appliquer des

transformations au premier bloc du message et/ou au dernier bloc chiffr´e qui joue le rˆole de l’empreinte.

Exemples de transformations:

I Double chiffrement successifs du premier bloc, n´ecessite une cl´e suppl´ementaire.

I Chiffrement suppl´ementaire du dernier bloc avec une cl´e diff´erente.

I Le dernier bloc re¸coit un chiffrement et un d´echiffrement suppl´ementaire.

(29)

Fonction de hachage cryptographique

Une fonctionh est une fonction de hachage cryptographiquesi : 1. h accepte en entr´ee des messages de longueur arbitraire et

produit en sortie des messages de taille constante (par exemple de k bits) : h:{0,1} → {0,1}k,

2. h peut ˆetre calcul´ee efficacement,

3. il est difficile de trouver une collision, c`ad une paire de messages x 6=y tel queh(x) =h(y).

Remarque: la condition 1. implique qu’il existe forc´ement des collisions mais la condition 3. requiert simplement qu’elles soient difficiles `a trouver

⇒k doit ˆetre choisi suffisamment grand pour qu’une fouille exhaustive soit impossible.

(30)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

HMAC

I HMAC (Hash-based MAC) : pemet la g´eneration d’un CAM `a partir d’une fonction de hachage cryptographique h.

I Utilis´e dans IpSec et SSL.

I Sk(m) =h((k⊕opad)kh((k⊕ipad)km)).

I Vk(m,s) =accept si h((k⊕opad)kh((k⊕ipad)km)) =s et reject sinon.

I opad = 0x5c5c5c. . .5c5c et ipad= 0x363636. . .3636, ils sont tous les deux de la taille de la cl´e k et ont ´et´e choisis afin d’avoir une distance de Hamming importante.

I La taille utilis´ee pour la cl´e est habituellement de 128 ou 160 bits (avec par exemple MD5 ou SHA-1 comme fonction de hachage).

(31)

MD5 et SHA-1

I MD5: fonction de hachage cryptographique avec une sortie de 128 bits cr´e´e par Ron Rivest en 1994.

I Utilis´e couramment de nombreuses applications dont v´erifier l’int´egrit´e de fichier ou pour les certificats de SSL.

I SHA-1: fonction de hachage qui en pratique peut servir de fonction de hachage cryptographique.

I Produite des empreintes de 160 bits en sortie.

I A ´et´e choisi par le NIST pour remplacer SHA-0 qui ´etait soup¸conn´e d’avoir des failles permettant de trouver des collisions mais SHA-1 semble lui-mˆeme avoir des faiblesses.

I Des familles de fonctions de hachage SHA-2 existent mais une comp´etition pour trouver qui sera le successeur pour SHA-3 s’est termin´e en octobre 2012 avec la victoire d’un algorithme du nom de Keccak (Bertoni, Daemen, Peters et Van Assche).

(32)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Annonce du r´ esultat de la comp´ etition sur SHA-3

Remarque: avec SHA-3, il est possible d’utiliser un HMAC de la

(33)

Fonctionnement g´ en´ eral derri` ere MD5 et SHA-1

I MD5 et SHA-1 suivent le mˆeme sch´ema de fonctionnement, ils se basent sur une fonction de compression f qui prend un bloc du message mi et une valeur s pour obtenir une

empreinte de taille d´esir´ee.

I mi est un bloc du message qui fait 512 bits ets contient 160 bits.

I A l’initialisation, le message est d´` ecoup´e ent+ 1 blocs de 512 bits, avec ´eventuellement un rembourrage de 0s afin

d’atteindre la taille ad´equate.

I La valeur s0 est initialis´ee `a une constante choisie.

I Pour chaque bloc allant dei = 1 `a t+ 1 la valeur si =f(mi,si−1) est calcul´ee.

I La valeur finale est st+1.

(34)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Illustration du HMAC bas´ e sur SHA-1

(35)

Types d’attaque sur fonction de hachage

I Attaque par collision: chercher `a g´en´erer deux messages x et y tel quex 6=y maish(x) =h(y).

I L’attaque reposant sur le paradoxe de l’anniversaire trouve toujours une collision en temps esp´er´e 2k/2 pourk la taille de la sortie de la fonction de hachage mais . . .

I il est parfois possible de trouver des attaques plus efficaces reposant sur la structure sp´ecifique de la fonction de hachage.

I Attaque par pr´e-image:

1. ´etant donn´e un hashz cherche `a g´en´erer un messagex (une pr´e-image) tel que h(x) =z (attaque de pr´e-image de premi`ere ordre) ou

2. ´etant donn´e un messagex, trouver un autre message y tel que h(x) =h(y) (attaque par pr´e-image de second ordre).

I Question: quelles sont les implications pratiques de ces types d’attaque?

(36)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Paradoxe de l’anniversaire

Exp´erience 1:

I Quelle est la probabilit´e dans une classe de 23 ´etudiants qu’ils y aient deux qui soient n´es le mˆeme jour?

Exp´erience 2:

I Supposons qu’il y ait n boules dans une urne avec des

´

etiquettes diff´erentes.

I Question: combien de fois est ce que je dois piocher au hasard en moyenne dans l’urne pour esp´erer tomber deux fois sur la mˆeme boule si `a chaque fois que je pioche une boule, je la remets ensuite dans l’urne?

I R´eponse: environ √

n de fois en moyenne pour avoir une probabilit´e de succ`es d’au moins 12.

(37)

Comprendre le paradoxe de l’anniversaire

I Soit une ann´ee qui compte 365 jours (on ne s’occupe pas des ann´ees bissextiles).

I Parmi n individus (on supposen <365), on veut savoir s’il existe au moins une paire d’individus qui ont le mˆeme anniversaire, soit p(n) la probabilit´e de cet ´ev´enement.

I Soit p(n), la probabilit´e quen individus aient des dates d’anniversaire diff´erentes.

I p(n) = 1×(1−3651 )×(1−3652 )×. . .×(1−n−1365) = 365n(365−n)!365!

I p(n) = 1−p(n),

I d`es quen ≥23⇒p(n)>50% (et mˆeme 99% sin≥57).

(38)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Probabilit´ e de succ` es du paradoxe de l’anniversaire

(Extrait de wikipedia)

(39)

Utiliser le paradoxe de l’anniversaire pour trouver une collision

Algorithme:

1. Rencontre ← {}

2. xj choisi au hasard dans le domaine de h

3. R´ep´eter tant que (xj,h(xj))∈Rencontre ouh(xj) n’apparaˆıt pas dans Rencontre

I RencontreRencontre+ (xj,h(xj))

I xj choisi au hasard dans le domaine deh

4. Retourner (xi,xj) tel quexi 6=xj et (xj,h(xi))∈Rencontre Th´eor`eme: l’algorithme ci-dessus peut g´en´erer une collision apr`es 2(k2)tours de boucle en moyenne pour k le nombre de bits de sortie de la fonction de hachageh.

(40)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Probl` eme de la longueur de la sortie pour les CAMs

I Pour un cryptosyst`eme, on consid`ere souvent que 64 bits de cl´e sont suffisants pour offrir une s´ecurit´e relativement bonne en pratique (bien qu’on tende vers 128 bits minimum

maintenant pour AES).

I Pour une fonction de hachage, une sortie sur 64 bits n’est pas suffisante car un adversaire pourrait r´eussir `a trouver une collision en 2(642)= 232= 4 294 967 296 ´etapes de calcul en moyenne.

I Solution: avoir une sortie de longueur au moins 128 bits pour que le travail demand´e pour trouver une collision soit

´

equivalent `a celui requis pour faire une fouille exhaustive sur un espace de cl´es de 64 bits pour un cryptosyst`eme.

(41)

Etat des lieux des fonctions de hachage ´

Probl`eme fondamental: existe t’il r´eellement des familles de fonction de hachage cryptographiques qui sont `a collision difficile?

´Etat des lieux des fonctions utilis´ees en pratique:

(Extrait de wikipedia)

(42)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Code d’authentification de message CBC-MAC

HMAC

Quelques mots sur les signatures num´ eriques

I Signature num´erique: ´equivalent digital de la signature papier qui peut ˆetre utilis´e pour authentifier un document num´erique et garantir son authenticit´e.

I Bas´e sur le concept de cryptographie asym´etrique o`u un utilisateur poss`ede :

I unecl´e secr`ete de signaturequ’il peut utiliser pour signer un document et

I unecl´e de v´erification publiquequi peut ˆetre utilis´e par n’importe qui pour v´erifier l’authenticit´e d’une signature.

I La signature num´erique fournit aussi la propri´et´e de non-r´epudiation, le fait qu’un utilisateur ne puisse pas nier avoir sign´e un document (elle a valeur l´egale en France).

I Pour des raisons d’efficacit´e, c’est souvent la valeur hach´ee d’un message qui est sign´ee et non pas le message. Quel

(43)

Sc´ enario : ouverture de porte de garage ` a distance

I Contexte: supposons que je souhaite cr´eer un syst`eme qui me permet d’ouvrir mon garage `a distance sans sortir de ma voiture en utilisant une t´el´ecommande.

I Probl`eme: je veux ´eviter qu’un potentiel cambrioleur puisse utiliser ce syst`eme pour s’introduire chez moi. Comment faire?

I Est ce que si je chiffre les communications entre ma t´elecommande et ma porte cela r`egle le probl`eme?

I Est ce que l’authentification suffirait?

I Aussi comment ´eviter les risques de rejeu?

(44)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Longueur des mots de passe Stockage de mots de passe Craquage de mots de passe

Contrˆ ole d’acc`es par mots de passe

(45)

Contrˆ ole d’acc` es par mot de passe

I Au coeur de la s´ecurit´e de nombreux syst`emes et parfois le seul m´ecanisme de protection.

I L’humain est souvent le maillon faible dans la chaˆıne.

Points importants pour la s´ecurit´e des mots de passe:

I Comment sont-ils choisis?

I Comment sont-ils transmis entre l’utilisateur et le v´erificateur?

I Comment sont-ils stock´es/prot´eg´es par l’utilisateur?

I Comment sont-ils stock´es/prot´eg´es par le v´erificateur?

(46)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Longueur des mots de passe Stockage de mots de passe Craquage de mots de passe

Longueur des mots de passe

I Le nombre de NIPs possible pour une carte bancaire est de l’ordre de 104 = 10 000 possibilit´es cependant . . .

I il est n´ecessaire de poss´eder la carte valide correspondante et seul 3 essais sont autoris´es.

I Les mots de passe sous UNIX sont quelques milliards de fois plus nombreux (252 possibilit´es).

I Si un mot de passe est trop long ou trop al´eatoire, il ne pourra pas ˆetre facilement m´emoris´e et sera donc inutilisable en pratique.

I Selon certaines ´etudes, il est difficile pour un humain de retenir plus de 12 caract`eres.

I Interrogation fondamentale: qu’est ce qu’un bon mot de passe?

(47)

Illustration : mot de passe facile ` a deviner

(Extrait de Roger’s information security blog)

(48)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Longueur des mots de passe Stockage de mots de passe Craquage de mots de passe

Difficult´ e de deviner un mot de passe

I Au-del`a du nombre de mots de passe possibles, il est important de s’int´eresser `a comment ils sont choisis.

I Un mot de passe long peut ˆetre facile `a deviner (si par exemple il s’agit d’un mot du dictionnaire).

I Alternative raisonnable: retenir une phrase de passe plutˆot qu’un mot et prendre quelques lettres de cette phrase.

I Exemple: “cette phrase est difficile `a deviner si on ne la connaˆıt pas” devient “cpedadsonlcp”.

Comment rendre les mots de passe plus sˆurs :

I Changer r´eguli`erement de mots de passe.

I Utiliser un syst`eme qui v´erifie un candidat et d´etecte s’il est potentiellement facile `a deviner.

I V´erifier si un nouveau mot de passe est suffisamment diff´erent

(49)

Attaques possibles contre un syst` eme bancaire

I Apr`es 3 essais infructueux de NIP, un compte bancaire est bloqu´e mais cela ne prot`ege pas contre toutes les attaques.

I Attaque par falsification de carte: supposons par exemple qu’`Eve est capable de produire des fausses cartes bancaires qui correspondent `a des noms r´eels de clients.

I Apr`es avoir essayer quelques milliers de cartes en moyenne, Eve va pourvoir retirer de l’argent dans un compte qui ne lui` appartient pas.

I Attaque par masquarade: puisque le guichet ne s’authentifie pas, il est possible d’installer des faux guichets qui vont voler l’information et le mot de passe d’une carte bancaire.

I Attaque par d´eni de service: quelqu’un pourrait utiliser la carte bancaire d’une personne dans un guichet simplement pour lui faire du tort en bloquant le compte.

(50)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Longueur des mots de passe Stockage de mots de passe Craquage de mots de passe

Risque li´ e au stockage de mots de passes en clair

I Supposons que les paires mots de passe/logins d’utilisateurs soient stock´ees en clair sur un serveur ou un post-it sur le bureau de l’administrateur.

I La s´ecurit´e du serveur se base sur le fait que ce serveur est suffisamment bien prot´eg´e ou que le bureau de

l’administrateur est inaccessible.

I Risque: ´ecroulement total du syst`eme si un adversaire r´eussi `a acc´eder `a cette base ou lire le post-it.

I Peut-on ´eviter de stocker le mot de passe en clair tout en permettant l’authentification?

(51)

Stockage s´ ecuris´ e des mots de passe

I Si possible, il faut ´eviter de stocker des mots de passe “bruts”

dans un fichier afin de se pr´emunir contre une ´eventuelle attaque sur le serveur ou mˆeme un administrateur trop curieux.

I Solution: pour chaque utilisateur, on stocke la paire

(loginu,f(passwordu)) o`u f est une fonction `a sens unique qui est facile `a ´evaluer mais difficile `a inverser.

I Ainsi le syst`eme peut v´erifier facilement un mot de passe qui lui est pr´esent´e mais le vol du fichier ne permet pas de retrouver le mot de passe.

I En pratique,f est construite soit `a partir d’une fonction de hachage, soit `a partir d’une fonction de chiffrement.

(52)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Longueur des mots de passe Stockage de mots de passe Craquage de mots de passe

Craquage de mots de passe

I Si un adversaire arrive `a mettre la main sur un fichier

contenant les paires (loginu,f(passwordu)), il peut essayer de craquer certains de ces mots de passe.

I Exemple: l’adversaire peut g´en´erer des mots de passe de mani`ere r´ep´etitive jusqu’`a trouver une collision en faisant une fouille exhaustive ou une attaque par dictionnaire.

I Salage: ajouter une chaˆıne de bits al´eatoires appel´e sel `a la fin du mot de passe avant d’appliquer la fonction `a sens unique afin de rendre plus coˆuteux la tˆache d’un adversaire qui voudrait calculer les valeurs possibles `a l’avance.

I Renforcement de cl´e: utiliser une fonction tr`es lente `a ´evaluer tel qu’une fonction de hachage utilis´e avec salage qui est r´ep´et´e de nombreuses fois (au moins 1000).

(53)

CAPTCHA

I CAPTCHA (pourCompletely Automated Public Turing test to tell Computers and Humans Aparten anglais) : forme de test de Turing permettant de diff´erencier de mani`ere automatis´ee un humain d’un ordinateur.

I Se base sur des probl`emes qui sont consid´er´es faciles `a r´esoudre pour un humain mais difficiles pour un ordinateur.

I Utilis´e pour ´eviter la cr´eation automatique d’adresse de courriel par un bot mais aussi pour limiter le nombre d’essais qu’un ordinateur peut essayer une combinaison login/mot passe si `a chaque fois il doit r´esoudre un CAPTCHA.

(54)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Longueur des mots de passe Stockage de mots de passe Craquage de mots de passe

Mot de passe ` a usage unique

I Mot de passe `a usage unique: mot de passe qui est valide pour une seule session ou transaction.

I Avantage principal: permet d´eviter les attaques par rejeu.

I Utilis´e par exemple pour les transactions bancaires.

I Exemple:

(Extrait du site web de Entrust)

(55)

Ing´ enierie sociale

I Mˆeme si les mots de passe sont stock´ees de fa¸con s´ecuris´ees, il est toujours possible d’attaquer l’humain paring´enierie sociale.

I Attaque par hame¸connage(phishing en anglais): un pirate se fait passer pour un tiers parti de confiance afin de soutirer de l’information confidentielle.

I M´ecanismes de protection: informer l’utilisateur des risques existants, authentification forte combinant un syst`eme de mots de passe avec de la biom´etrie ou de la s´ecurit´e mat´erielle.

(56)

Introduction `a l’authentification Authentification de messages Contrˆole d’acc`es par mots de passe

Longueur des mots de passe Stockage de mots de passe Craquage de mots de passe

En r´ esum´ e : quelques conseils sur les mots de passe

I Aider/forcer l’utilisateur `a choisir un “bon” mot de passe du point de vue s´ecurit´e mais n´eanmoins facile `a m´emoriser (par exemple les phrases de passe).

I Informer les utilisateurs des risques de l’ing´enierie sociale.

I Avoir un syst`eme de v´erification automatique de mot de passe qui ´ecarte d’embl´ee ceux qui sont trop faciles `a deviner.

I Utiliser un syst`eme de stockage s´ecuris´e des mots de passe.

(57)

C’est la fin !

Merci pour votre attention.

Si vous avez des questions, n’h´esitez pas ` a m’´ecrire ` a

sgambs@irisa.fr

Références

Outline

Documents relatifs

e.blindauer@unistra.fr e.blindauer@unistra.fr Direction Informatique Direction Informatique.

la confidentialité et l'intégrité des données via un contrôle d'accès: seules les personnes. identifiées, authentifiées et habilités à le faire peuvent accèder/modifier

L’environnement de confiance local intervenant dans l’authentification de niveau standard d’un utilisateur auprès d’un SI distant doit nécessiter un déverrouillage

Lorsque le client souhaite utiliser un service, généralement pour obtenir l'accès à un système hôte local ou distant, il utilise la clé de session pour crypter une copie du

– Ce ticket va être utilisé par le serveur LDAP (car OpenLDAP est Kerbérisé) pour achever la phase d'authentification (au lieu de retourner le hash du password dans le cas

– Pam=« Pluggable Authentification Module » – Authentification différenciée suivant les services – Chaque service a son fichier de configuration.. ● Le démon SASL est le

[r]

Biométrie parfaite signatures manuelles vitesse de frappe forme de la main empreintes digitales empreintes rétiniennes. reconnaissance de l'iris reconnaissance du visage