SlideShare una empresa de Scribd logo
1 de 32
´
 Mots de passe et mecanismes d’authentification


                         Thomas Pornin




                          Hackfest 2010




Thomas Pornin                     ´
                Mots de passe et mecanismes d’authentification   Hackfest 2010   1 / 29
Plan


1   Notions fondamentales


2   Stockage



3   Authentification


4   Conclusion




    Thomas Pornin                       ´
                      Mots de passe et mecanismes d’authentification   Hackfest 2010   2 / 29
Notions fondamentales


 ´
Definition

 ´
Definition
Un mot de passe est une information confidentielle, qu’un utilisateur
       ´                       ´ ´                                 ´
peut memoriser et reproduire precisement dans un dispositif d’entree.


                                            ´
Il s’agit de faire le lien entre une identite physique et le monde
      ´
numerique (des 0 et des 1...).


     Mot et passphrase
     NIP
     mots de passe     graphiques




   Thomas Pornin                         ´
                       Mots de passe et mecanismes d’authentification   Hackfest 2010   3 / 29
Notions fondamentales


                 ´
Concurrent : biometrie


    ´                              ´   `
Biometrie : des informations attachees a l’utilisateur :
     empreintes digitales
     reconnaissance faciale
           ´
     scan retinien

     `
Problemes :
                          ´                    ´
     L’information est specifique mais pas forcement confidentielle.
                        ´                  ´
     L’information biometrique n’est pas precise.
            ´     ´           ´        `
     La specificite n’est pas verifiable a distance.
                              ´
     L’information n’est pas detachable.



   Thomas Pornin                         ´
                       Mots de passe et mecanismes d’authentification   Hackfest 2010   4 / 29
Notions fondamentales


                   `
Concurrent : carte a puce
       `                         `                    ˆ           ´
Carte a puce : l’information secrete est sous le controle d’un materiel
     ´                                    ´
blinde capable de s’en servir pour des operations cryptographiques
complexes.




     `
Problemes :
     Cout (production, distribution).
       ˆ
     Importante latence initiale.
     La carte n’est pas attachee a l’utilisateur −→ on rend l’utilisateur
                               ´ `
     responsable.

   Thomas Pornin                         ´
                       Mots de passe et mecanismes d’authentification   Hackfest 2010   5 / 29
Notions fondamentales


Entropie


  ´
Definition
                                                             ˆ
L’entropie est une mesure de ce qu’un mot de passe aurait pu etre.


   entropie de n bits = en essayant des mots de passe possibles, on
trouve le bon en, en moyenne, 2n−1 essais.

                                    ´
L’entropie qualifie le processus de selection du mot de passe, pas le
                     ˆ
mot de passe lui-meme.

Les utilisateurs choisissent des mots de passe de faible entropie.




  Thomas Pornin                         ´
                      Mots de passe et mecanismes d’authentification   Hackfest 2010   6 / 29
Notions fondamentales


Entropie : exemples et mesure


6 lettres minuscules : 266 ≈ 228.2

Deux lettres, deux chiffres, deux lettres, deux chiffres :
 ix71yn45 di30lz43 to71sy30 np37kj76
entropie : 264 × 104 ≈ 232.1

                                                   ´
Quand tous les mots de passe possibles ne sont pas equiprobables, la
                                      ´
mesure de l’entropie est plus compliquee.

John the Ripper : outil de craquage par essais de mots courants et
variantes.



   Thomas Pornin                         ´
                       Mots de passe et mecanismes d’authentification   Hackfest 2010   7 / 29
Notions fondamentales


Faiblesse des mots de passe
1980 :


                                              vs

                  25 kOps/s




  Thomas Pornin                             ´
                          Mots de passe et mecanismes d’authentification   Hackfest 2010   8 / 29
Notions fondamentales


Faiblesse des mots de passe
1980 :


                                              vs

                  25 kOps/s


2010 :


                                              vs

                  25 GOps/s




  Thomas Pornin                             ´
                          Mots de passe et mecanismes d’authentification   Hackfest 2010   8 / 29
Notions fondamentales


Faiblesse des mots de passe
1980 :


                                              vs

                  25 kOps/s


2010 :


                                              vs

                  25 GOps/s


Les mots de passe sont           devenus            un million de fois plus faibles en
30 ans.
  Thomas Pornin                             ´
                          Mots de passe et mecanismes d’authentification   Hackfest 2010   8 / 29
Notions fondamentales


Imposer un bon mot de passe

Encadrer le choix est difficile (quality meter vs entropie).

L’utilisateur est hostile :
         ´      ´                           ´
     la securite n’est pas une fonctionnalite
         ´    `         ´    ´           ı ´
     le perimetre de securite est mal maˆtrise
                     ´
     grand inventivite dans le contournement


On peut tenter de responsabiliser l’utilisateur (inapplicable dans de
nombreux contextes).

Entropie atteignable en pratique : environ 32 bits.


   Thomas Pornin                           ´
                         Mots de passe et mecanismes d’authentification   Hackfest 2010   9 / 29
Stockage


Contexte : stockage


                                      password, data




                                            ´ ´     `           `
Contexte : authentification sur un canal protege aupres d’un systeme
                  `                               ˆ ´
 sur . On s’inquiete des conditions de stockage cote serveur.
  ˆ

    serveur Web SSL (https://)
    /etc/passwd ou /etc/shadow


  Thomas Pornin                        ´
                     Mots de passe et mecanismes d’authentification   Hackfest 2010   10 / 29
Stockage


Hachage

Une fonction de hachage est une transformation :
                        ´
    portant sur des donnees binaires arbitraires
    avec une sortie de taille fixe
                 ´
    publique et deterministe
    rapide
       ´
    irreversible et sans collisions


Exemples : MD5, SHA-1, SHA-256, Tiger. On peut aussi
   ´
  deriver un hachage d’une fonction de chiffrement par blocs.

                                         ´
Principe : on stocke le mot de passe hache. On recalcule le hachage
            ´
lors de la verification.

  Thomas Pornin                          ´
                       Mots de passe et mecanismes d’authentification   Hackfest 2010   11 / 29
Stockage


Attaque efficace

Attaque basique : on essaye des mots de passe possibles.
     PC Intel Core2 Q6600 : 48 millions SHA-1 par seconde
     GPU NVidia 9800 GTX+ : 160 millions SHA-1 par seconde


                                          ´
Un mot de passe de 32 bits d’entropie ne resiste que 13 secondes !

Contremesure : rendre le hachage plus lent :
                       ´
     hacher la concatenation de 10000 copies du mot de passe
                       ´
     hacher la sortie recursivement


                                            ´
Ceci ralentit l’attaquant et l’utilisateur legitime.


   Thomas Pornin                           ´
                         Mots de passe et mecanismes d’authentification   Hackfest 2010   12 / 29
Stockage


Attaques et partage

Partage : l’attaquant fait un hachage pour attaquer plusieurs mots de
passe.


                   `
    Attaque parallele : l’attaquant a une copie de /etc/passwd
                                  `
    (/etc/shadow) et cherche a obtenir le mot de passe d’un
    utilisateur quelconque.
             ´       ´
    Table precalculee : les hachages de nombreux mots de passe
                          ´                  ´
    courants sont stockes dans une table triee : l’attaque est une
    simple lecture.


                              ´      ´
Google est une grosse table precalculee. Exemple : chercher
 721a9b52bfceacc503c056e3b9b93cfa .


  Thomas Pornin                         ´
                      Mots de passe et mecanismes d’authentification   Hackfest 2010   13 / 29
Stockage


                 ´
Compromis temps/memoire de Hellman (1980)

                      ´
Le compromis temps/memoire de Hellman est une technique de
                          ´      ´
compression d’une table precalculee.
            H      R    H           R            H           H         R         H
     π1 −→ v1 −→ π2 −→ v2 −→ π3 −→ · · · −→ vt−1 −→ πt −→ vt


                      ´
On ne stocke que les debuts et fins de chaˆne (π1 , vt ). Pour l’attaque,
                                          ı
                         ´
on part du hachage attaque et on recalcule la chaˆne correspondante.
                                                 ı

Pour supporter les collisions de chaˆnes, il faut plusieurs fonctions de
                                    ı
 ´
reduction R, et plusieurs tables. Cout :
                                    ˆ
                   ´
     stockage divise par t
     l’attaque necessite t 2 invocations de H
                ´


   Thomas Pornin                         ´
                       Mots de passe et mecanismes d’authentification       Hackfest 2010   14 / 29
Stockage


Rainbow tables (2003)

Une rainbow table est une optimisation sur le compromis de Hellman :

            H  1   R     H 2        R            H           H         Rt−1         H
     π1 −→ v1 −→ π2 −→ v2 −→ π3 −→ · · · −→ vt−1 −→ πt −→ vt


Moins de collisions de chaˆnes, donc moins de tables. Le cout CPU est
                          ı                                ˆ
     ´
divise par deux.

Variantes : fuzzy / thick / thin rainbow tables.
Cout initial
   ˆ
La construction de la table doit passer par tous les mots de passes
attaquables.


   Thomas Pornin                         ´
                       Mots de passe et mecanismes d’authentification          Hackfest 2010   15 / 29
Stockage


Salt

 ´
Definition
                           `
Une salt est un parametre public qui modifie le hachage d’un mot
                   ´
de passe (la salt selectionne la fonction de hachage).


  ´
Idealement, chaque mot de passe utilise une salt unique.

                                  ´
Moyen simple : choisir une salt aleatoire de taille suffisante pour que la
 ´
reutilisation soit hautement improbable :
     16 octets sont plus que suffisants
                                                  ´´         ´
     une nouvelle salt pour chaque mot de passe cree ou change
                      ´                       ´
     la salt est stockee en clair avec le hache



   Thomas Pornin                        ´
                      Mots de passe et mecanismes d’authentification   Hackfest 2010   16 / 29
Stockage


Exemple

                  `
Obtenu sur un systeme Linux (Ubuntu 10.04) :

$6$NmmN5L0O$vqOf3DuGNf.CHVpIcJZ9u2LmVS.NWhifwipwp
fmZVMMQxamKXAlVGg0VMo1ScMQsSBtdXbrssLO/MpSKh7rLz.

 $                  ´
                  separateur
 6                fonction de hachage (6 = SHA-512)
 NmmN5L0O         salt
 vqOf3D...                          ´
                  mot de passe hache (encodage Base64)

                                     ´
Le hachage est une mixture compliquee qui implique environ 5000
invocations de SHA-512 et de multiples insertions du mot de passe et
de la salt.


  Thomas Pornin                           ´
                        Mots de passe et mecanismes d’authentification   Hackfest 2010   17 / 29
Authentification


Contexte : authentification


                                        password, data




                           `
Contexte : authentification a distance ; l’attaquant peut agir sur le
canal de transmission.

     HTTP
     PPP (RTC, ADSL)
     appariment Bluetooth


   Thomas Pornin                         ´
                       Mots de passe et mecanismes d’authentification   Hackfest 2010   18 / 29
Authentification


HTTP : Basic

  ´ ´
Specifie dans la RFC 2617.

 1                             ˆ
       Le client envoie sa requete.
 2                  ´
       Le serveur repond 401 (Unauthorized) avec :
       WWW-Authenticate: Basic realm="Foo"
 3                      `                ˆ
       Le client envoie a nouveau sa requete avec :
       Authorization: Basic dXNlcjpwYXNz
       (encodage Base64 de username:password).


          ´                                    ´     ´
Simple presentation du mot de passe en clair. Securite nulle dans la
plupart des cas. HTTPS quasiment obligatoire.


     Thomas Pornin                      ´
                      Mots de passe et mecanismes d’authentification   Hackfest 2010   19 / 29
Authentification


HTTP : Digest



  ´ ´
Specifie dans la RFC 2617.

                                                      ´
Principe : le serveur envoie un nonce ; le client repond par
H(π||n||u) (n = nonce, u = nom de l’utilisateur et URL requise).

                ˆ        ´    ´
auth-int : controle d’integrite optionnel :
                              ˆ
     un nouveau nonce par requete
                                          ˆ             ´
     le hachage couvre le corps de la requete ou de la reponse




   Thomas Pornin                        ´
                      Mots de passe et mecanismes d’authentification   Hackfest 2010   20 / 29
Authentification


HTTP : Digest

    Hachage simple : mauvaise protection face aux attaques par
    dictionnaire.
    Gestion de multiples nonce (complexe, sensible aux pannes).
    auth-int ne couvre que le corps :
           changer les nonces
           forcer l’utilisation d’une fonction de hachage
           forcer l’utilisation de auth
                                   ˆ
           modifier d’autres entetes (Redirect...)




  Thomas Pornin                             ´
                          Mots de passe et mecanismes d’authentification   Hackfest 2010   21 / 29
Authentification


HTTP : Digest

    Hachage simple : mauvaise protection face aux attaques par
    dictionnaire.
    Gestion de multiples nonce (complexe, sensible aux pannes).
    auth-int ne couvre que le corps :
           changer les nonces
           forcer l’utilisation d’une fonction de hachage
           forcer l’utilisation de auth
                                   ˆ
           modifier d’autres entetes (Redirect...)


HTTP Digest n’est que marginalement plus sure que Basic. SSL/TLS
                                          ˆ
quasiment indispensable.




  Thomas Pornin                             ´
                          Mots de passe et mecanismes d’authentification   Hackfest 2010   21 / 29
Authentification


Attaques offline et online



                                       ´
    Attaque offline : l’attaquant peut verifier un mot de passe sur ses
                `                                            `
    propres systemes. Exemple : retrouver le mot de passe a partir de
             ´
    son hache.
                                          ´
    Attaque online : l’attaquant ne peut verifier un mot de passe qu’en
                               `
    interagissant avec un systeme qui connaˆt ce mot de passe. Ce
                                               ı
         `                                   ´        ´
    systeme peut limiter arbitrairement le debit des reponses
                                    `
    (exemple : code PIN sur carte a puce).




  Thomas Pornin                        ´
                     Mots de passe et mecanismes d’authentification   Hackfest 2010   22 / 29
Authentification


PAKE




                                         ´
Password-Authenticated Key Exchange designe un protocole
  ´                  ´
d’etablissement de cle avec authentification mutuelle selon un secret
       ´
partage.

                        `
Les protocoles PAKE protegent contre les attaques offline.




  Thomas Pornin                        ´
                     Mots de passe et mecanismes d’authentification   Hackfest 2010   23 / 29
Authentification


EKE



                              ´
Encrypted Key Exchange : publie par Bellovin et Merritt en 1992.

                         ´
Principe : on chiffre symetriquement (avec le mot de passe comme
  ´                                ´                  ´
cle) les messages d’un protocole d’etablissement de cle.

                  ´            ˆ       ´
Le chiffrement symetrique doit etre unverifiable.

L’attaquant (actif) doit choisir a priori un mot de passe, sous peine
  ˆ      `     ´              ´
d’etre a l’exterieur de l’etablissement de cle.    ´




   Thomas Pornin                         ´
                       Mots de passe et mecanismes d’authentification   Hackfest 2010   24 / 29
Authentification


Diffie-Hellman

      p     nombre premier, grand (1024 bits)
      q     nombre premier, moins grand (160 bits), q divise p − 1
      g     generateur d’ordre q (1 < g < p, g q = 1 mod p)
             ´ ´

                  A                                                          B
                                        a
                                     g mod p
        a ∈R [1, q-1]

                                     g b mod p
                                                                        b ∈R [1, q-1]


                      K = (g a )b = (g b )a = g ab mod p


  Thomas Pornin                           ´
                        Mots de passe et mecanismes d’authentification         Hackfest 2010   25 / 29
Authentification


Full Domain Hash
  ´
Definition
Un Full Domain Hash est une fonction de hachage dont la sortie est
   ´ ´                     ´             ´ `
precisement un ensemble specifique donne, ou chaque valeur est
´
equiprobable.


                                                              ´
Soit H une fonction de hachage. On calcule F (x) pour une entree x :

 1     Soit y = H(1||x)||H(2||x)||...||H(n||x) ou n est choisi pour que la
                                                 `
                         ´ `             ´     `
       taille de y soit legerement superieure a celle de p (par exemple, p
       a 1024 bits et y fait 1536 bits).
 2                                ´
       Soit z = y mod p (interpretation des bits en un entier, puis
        ´
       reduction modulaire).
 3     F (x) = z (p−1)/q mod p.

     Thomas Pornin                         ´
                         Mots de passe et mecanismes d’authentification   Hackfest 2010   26 / 29
Authentification


EKE avec Diffie-Hellman

      p      nombre premier, grand (1024 bits)
      q      nombre premier, moins grand (160 bits), q divise p − 1
      g      generateur d’ordre q (1 < g < p, g q = 1 mod p)
              ´ ´
      w                         ´
             mot de passe hache : w = F (π||A||B)

                  A                                                          B
                                        a
                                 w·g mod p
        a ∈R [1, q-1]

                                 w·g b mod p
                                                                        b ∈R [1, q-1]


                      K = (g a )b = (g b )a = g ab mod p


  Thomas Pornin                           ´
                        Mots de passe et mecanismes d’authentification         Hackfest 2010   27 / 29
Authentification


EKE avec Diffie-Hellman


              ´ ´        ´           ˆ         ´
Une fois la cle echangee, elle doit etre utilisee dans un protocole
              ´    ´                     ´
assurant l’integrite (et la confidentialite).

                                                              ´
L’authentification est implicite : pas de garantie d’avoir parle avec le
                                        ´      ´
   vrai client / serveur avant d’avoir echange des messages proteges  ´ ´
par K .

                                                     ´ ´
Un autre protocole PAKE standard : SRP (RFC 2945, integre dans
TLS avec RFC 5054).

Mais il y a des brevets...



   Thomas Pornin                         ´
                       Mots de passe et mecanismes d’authentification   Hackfest 2010   28 / 29
Conclusion


Conclusion



                                      `    ´
Les mots de passe ne sont pas un probleme resolu.

                               `
Les mots de passe sont un probleme qui s’aggrave avec le temps.

        `                                   ´
Les systemes et protocoles doivent devenir resistants aux attaques
offline.

                         `
On ne connaˆt pas de systeme de remplacement indiscutable.
           ı




  Thomas Pornin                        ´
                     Mots de passe et mecanismes d’authentification   Hackfest 2010   29 / 29

Más contenido relacionado

Destacado

Correction 2nde 2
Correction 2nde 2Correction 2nde 2
Correction 2nde 2Espinasse
 
Optimisation de la mesure du stress hydrique
Optimisation de la mesure du stress hydriqueOptimisation de la mesure du stress hydrique
Optimisation de la mesure du stress hydriqueRiccagioia Scpa
 
El cirujano clandestino
El cirujano clandestinoEl cirujano clandestino
El cirujano clandestinoPlof
 
IFA livre anniversaire 2001-2011 F
IFA livre anniversaire 2001-2011 FIFA livre anniversaire 2001-2011 F
IFA livre anniversaire 2001-2011 Fevertjanlammers
 
Éducation au patrimoine : contexte et évolution
Éducation au patrimoine : contexte et évolutionÉducation au patrimoine : contexte et évolution
Éducation au patrimoine : contexte et évolutionMission Val de Loire
 
First French 2 project!
First French 2 project!First French 2 project!
First French 2 project!maddy368
 
Napoleon 2014
Napoleon 2014Napoleon 2014
Napoleon 2014jcpl77
 
LucesDeBohemia
LucesDeBohemiaLucesDeBohemia
LucesDeBohemiaRefuerzo
 
Eportfolio Et Reconnaissance Des Acquis Et Des Comptences972
Eportfolio Et Reconnaissance Des Acquis Et Des Comptences972Eportfolio Et Reconnaissance Des Acquis Et Des Comptences972
Eportfolio Et Reconnaissance Des Acquis Et Des Comptences972Guy Fortier
 
Proteínas
ProteínasProteínas
ProteínasUN
 
De la stratégie fédérale à la réalité du terrain (Simon Hoelzer, SwissDRG)
 De la stratégie fédérale à la réalité du terrain (Simon Hoelzer, SwissDRG) De la stratégie fédérale à la réalité du terrain (Simon Hoelzer, SwissDRG)
De la stratégie fédérale à la réalité du terrain (Simon Hoelzer, SwissDRG)Paianet - Connecting Healthcare
 
Bicentenaire Pavie
Bicentenaire PavieBicentenaire Pavie
Bicentenaire Pavieguestb97d6a
 

Destacado (20)

Financement Chaine De Valueur De La Filiere Riz De Bagre Burkina Faso
Financement Chaine De Valueur De La Filiere Riz De Bagre Burkina Faso Financement Chaine De Valueur De La Filiere Riz De Bagre Burkina Faso
Financement Chaine De Valueur De La Filiere Riz De Bagre Burkina Faso
 
Hoquei1
Hoquei1Hoquei1
Hoquei1
 
Correction 2nde 2
Correction 2nde 2Correction 2nde 2
Correction 2nde 2
 
Optimisation de la mesure du stress hydrique
Optimisation de la mesure du stress hydriqueOptimisation de la mesure du stress hydrique
Optimisation de la mesure du stress hydrique
 
Expansión económica
Expansión económicaExpansión económica
Expansión económica
 
El cirujano clandestino
El cirujano clandestinoEl cirujano clandestino
El cirujano clandestino
 
IFA livre anniversaire 2001-2011 F
IFA livre anniversaire 2001-2011 FIFA livre anniversaire 2001-2011 F
IFA livre anniversaire 2001-2011 F
 
Vertigineux
VertigineuxVertigineux
Vertigineux
 
Éducation au patrimoine : contexte et évolution
Éducation au patrimoine : contexte et évolutionÉducation au patrimoine : contexte et évolution
Éducation au patrimoine : contexte et évolution
 
First French 2 project!
First French 2 project!First French 2 project!
First French 2 project!
 
Napoleon 2014
Napoleon 2014Napoleon 2014
Napoleon 2014
 
2011 03-11 leccionadultos-lr
2011 03-11 leccionadultos-lr2011 03-11 leccionadultos-lr
2011 03-11 leccionadultos-lr
 
LucesDeBohemia
LucesDeBohemiaLucesDeBohemia
LucesDeBohemia
 
Eportfolio Et Reconnaissance Des Acquis Et Des Comptences972
Eportfolio Et Reconnaissance Des Acquis Et Des Comptences972Eportfolio Et Reconnaissance Des Acquis Et Des Comptences972
Eportfolio Et Reconnaissance Des Acquis Et Des Comptences972
 
Ma famille_Samantha
Ma famille_SamanthaMa famille_Samantha
Ma famille_Samantha
 
Proteínas
ProteínasProteínas
Proteínas
 
De la stratégie fédérale à la réalité du terrain (Simon Hoelzer, SwissDRG)
 De la stratégie fédérale à la réalité du terrain (Simon Hoelzer, SwissDRG) De la stratégie fédérale à la réalité du terrain (Simon Hoelzer, SwissDRG)
De la stratégie fédérale à la réalité du terrain (Simon Hoelzer, SwissDRG)
 
El Partenón
El PartenónEl Partenón
El Partenón
 
2011 03-10 complementario
2011 03-10 complementario2011 03-10 complementario
2011 03-10 complementario
 
Bicentenaire Pavie
Bicentenaire PavieBicentenaire Pavie
Bicentenaire Pavie
 

Similar a Mots de passe et mécanismes d’authentification (Thomas Pornin)

OWASP Québec - octobre 2016 - présentation sur les mots de passe
OWASP Québec - octobre 2016 - présentation sur les mots de passeOWASP Québec - octobre 2016 - présentation sur les mots de passe
OWASP Québec - octobre 2016 - présentation sur les mots de passePatrick Leclerc
 
"Surfez couverts !" - Conseils de Cyber securité
"Surfez couverts !" - Conseils de Cyber securité "Surfez couverts !" - Conseils de Cyber securité
"Surfez couverts !" - Conseils de Cyber securité Geeks Anonymes
 
Réseaux-et-Sécurité.pdf
Réseaux-et-Sécurité.pdfRéseaux-et-Sécurité.pdf
Réseaux-et-Sécurité.pdfMoufidaHajjaj
 
Identité Numérique et Authentification Forte
Identité Numérique et Authentification ForteIdentité Numérique et Authentification Forte
Identité Numérique et Authentification ForteSylvain Maret
 
La sécurité informatique pour une petite équipe
La sécurité informatique pour une petite équipeLa sécurité informatique pour une petite équipe
La sécurité informatique pour une petite équipeGeeks Anonymes
 
Hackfest2010 Tm Dg Fr
Hackfest2010 Tm Dg FrHackfest2010 Tm Dg Fr
Hackfest2010 Tm Dg FrDavid Girard
 
L'authentification forte ou vers la mort du mot de passe
L'authentification forte ou vers la mort du mot de passeL'authentification forte ou vers la mort du mot de passe
L'authentification forte ou vers la mort du mot de passeAlice and Bob
 
L’hygiène informatique des réseaux sociaux : bilan catastrophique
L’hygiène informatique des réseaux sociaux : bilan catastrophiqueL’hygiène informatique des réseaux sociaux : bilan catastrophique
L’hygiène informatique des réseaux sociaux : bilan catastrophiqueITrust - Cybersecurity as a Service
 
Comment éviter la prise d’otage de vos données @ITrustBlog
Comment éviter la prise d’otage de vos données @ITrustBlogComment éviter la prise d’otage de vos données @ITrustBlog
Comment éviter la prise d’otage de vos données @ITrustBlogITrust - Cybersecurity as a Service
 
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)Noël Bardelot
 
La blockchain, quand l'individu sert au collectif... malgré lui
La blockchain, quand l'individu sert au collectif... malgré luiLa blockchain, quand l'individu sert au collectif... malgré lui
La blockchain, quand l'individu sert au collectif... malgré luiFrancois Zaninotto
 
Auth forte application
Auth forte applicationAuth forte application
Auth forte applicationbong85
 
Focus sur la sécurité des clés USB (Bureaux portables)
Focus sur la sécurité des clés USB (Bureaux portables)Focus sur la sécurité des clés USB (Bureaux portables)
Focus sur la sécurité des clés USB (Bureaux portables)URFIST de Paris
 
Livre blanc F-Secure Ransomware - le chantage qui fait déchanter
Livre blanc F-Secure Ransomware - le chantage qui fait déchanterLivre blanc F-Secure Ransomware - le chantage qui fait déchanter
Livre blanc F-Secure Ransomware - le chantage qui fait déchanterNRC
 

Similar a Mots de passe et mécanismes d’authentification (Thomas Pornin) (16)

La sécurité informatique pour une petite équipe
La sécurité informatique pour une petite équipeLa sécurité informatique pour une petite équipe
La sécurité informatique pour une petite équipe
 
OWASP Québec - octobre 2016 - présentation sur les mots de passe
OWASP Québec - octobre 2016 - présentation sur les mots de passeOWASP Québec - octobre 2016 - présentation sur les mots de passe
OWASP Québec - octobre 2016 - présentation sur les mots de passe
 
"Surfez couverts !" - Conseils de Cyber securité
"Surfez couverts !" - Conseils de Cyber securité "Surfez couverts !" - Conseils de Cyber securité
"Surfez couverts !" - Conseils de Cyber securité
 
Réseaux-et-Sécurité.pdf
Réseaux-et-Sécurité.pdfRéseaux-et-Sécurité.pdf
Réseaux-et-Sécurité.pdf
 
Identité Numérique et Authentification Forte
Identité Numérique et Authentification ForteIdentité Numérique et Authentification Forte
Identité Numérique et Authentification Forte
 
Présentation Cryptographie
Présentation CryptographiePrésentation Cryptographie
Présentation Cryptographie
 
La sécurité informatique pour une petite équipe
La sécurité informatique pour une petite équipeLa sécurité informatique pour une petite équipe
La sécurité informatique pour une petite équipe
 
Hackfest2010 Tm Dg Fr
Hackfest2010 Tm Dg FrHackfest2010 Tm Dg Fr
Hackfest2010 Tm Dg Fr
 
L'authentification forte ou vers la mort du mot de passe
L'authentification forte ou vers la mort du mot de passeL'authentification forte ou vers la mort du mot de passe
L'authentification forte ou vers la mort du mot de passe
 
L’hygiène informatique des réseaux sociaux : bilan catastrophique
L’hygiène informatique des réseaux sociaux : bilan catastrophiqueL’hygiène informatique des réseaux sociaux : bilan catastrophique
L’hygiène informatique des réseaux sociaux : bilan catastrophique
 
Comment éviter la prise d’otage de vos données @ITrustBlog
Comment éviter la prise d’otage de vos données @ITrustBlogComment éviter la prise d’otage de vos données @ITrustBlog
Comment éviter la prise d’otage de vos données @ITrustBlog
 
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)
Notions de sécurité à l'usage des développeurs (Soat, 6 nov. 2014)
 
La blockchain, quand l'individu sert au collectif... malgré lui
La blockchain, quand l'individu sert au collectif... malgré luiLa blockchain, quand l'individu sert au collectif... malgré lui
La blockchain, quand l'individu sert au collectif... malgré lui
 
Auth forte application
Auth forte applicationAuth forte application
Auth forte application
 
Focus sur la sécurité des clés USB (Bureaux portables)
Focus sur la sécurité des clés USB (Bureaux portables)Focus sur la sécurité des clés USB (Bureaux portables)
Focus sur la sécurité des clés USB (Bureaux portables)
 
Livre blanc F-Secure Ransomware - le chantage qui fait déchanter
Livre blanc F-Secure Ransomware - le chantage qui fait déchanterLivre blanc F-Secure Ransomware - le chantage qui fait déchanter
Livre blanc F-Secure Ransomware - le chantage qui fait déchanter
 

Más de Hackfest Communication

Du fuzzing dans les tests d'intrusions? (Éric Gingras)
Du fuzzing dans les tests d'intrusions? (Éric Gingras)Du fuzzing dans les tests d'intrusions? (Éric Gingras)
Du fuzzing dans les tests d'intrusions? (Éric Gingras)Hackfest Communication
 
Quelles lois sont applicables au hacker? Énormément moins que tu penses. (Bot...
Quelles lois sont applicables au hacker? Énormément moins que tu penses. (Bot...Quelles lois sont applicables au hacker? Énormément moins que tu penses. (Bot...
Quelles lois sont applicables au hacker? Énormément moins que tu penses. (Bot...Hackfest Communication
 
Conservation et la circulation des renseignements personnels des services de ...
Conservation et la circulation des renseignements personnels des services de ...Conservation et la circulation des renseignements personnels des services de ...
Conservation et la circulation des renseignements personnels des services de ...Hackfest Communication
 
Stack Smashing Protector (Paul Rascagneres)
Stack Smashing Protector (Paul Rascagneres)Stack Smashing Protector (Paul Rascagneres)
Stack Smashing Protector (Paul Rascagneres)Hackfest Communication
 
Comment détecter des virus inconnus en utilisant des « honey pots » et d’autr...
Comment détecter des virus inconnus en utilisant des « honey pots » et d’autr...Comment détecter des virus inconnus en utilisant des « honey pots » et d’autr...
Comment détecter des virus inconnus en utilisant des « honey pots » et d’autr...Hackfest Communication
 
Comment détecter des virus inconnus en utilisant des « Honeypots » et d’autre...
Comment détecter des virus inconnus en utilisant des « Honeypots » et d’autre...Comment détecter des virus inconnus en utilisant des « Honeypots » et d’autre...
Comment détecter des virus inconnus en utilisant des « Honeypots » et d’autre...Hackfest Communication
 
PostNet, une nouvelle ère de Botnet résilient (Julien Desfossez & David Goulet)
PostNet, une nouvelle ère de Botnet résilient (Julien Desfossez & David Goulet)PostNet, une nouvelle ère de Botnet résilient (Julien Desfossez & David Goulet)
PostNet, une nouvelle ère de Botnet résilient (Julien Desfossez & David Goulet)Hackfest Communication
 
La détection d'intrusions est-elle morte en 2003 ? (Éric Gingras)
La détection d'intrusions est-elle morte en 2003 ? (Éric Gingras)La détection d'intrusions est-elle morte en 2003 ? (Éric Gingras)
La détection d'intrusions est-elle morte en 2003 ? (Éric Gingras)Hackfest Communication
 
Responsabilisation des données confidentielles en entreprise (Étienne Dubreuil)
Responsabilisation des données confidentielles en entreprise (Étienne Dubreuil)Responsabilisation des données confidentielles en entreprise (Étienne Dubreuil)
Responsabilisation des données confidentielles en entreprise (Étienne Dubreuil)Hackfest Communication
 
Le GPU à la rescousse du CPU (Charles Demers-Tremblay)
Le GPU à la rescousse du CPU (Charles Demers-Tremblay)Le GPU à la rescousse du CPU (Charles Demers-Tremblay)
Le GPU à la rescousse du CPU (Charles Demers-Tremblay)Hackfest Communication
 
802.1X filaire, un monde idéal illusoire? (Olivier Bilodeau)
802.1X filaire, un monde idéal illusoire? (Olivier Bilodeau)802.1X filaire, un monde idéal illusoire? (Olivier Bilodeau)
802.1X filaire, un monde idéal illusoire? (Olivier Bilodeau)Hackfest Communication
 

Más de Hackfest Communication (14)

Hackerspace jan-2013
Hackerspace jan-2013Hackerspace jan-2013
Hackerspace jan-2013
 
Hackfest @ WAQ2011
Hackfest @ WAQ2011Hackfest @ WAQ2011
Hackfest @ WAQ2011
 
Du fuzzing dans les tests d'intrusions? (Éric Gingras)
Du fuzzing dans les tests d'intrusions? (Éric Gingras)Du fuzzing dans les tests d'intrusions? (Éric Gingras)
Du fuzzing dans les tests d'intrusions? (Éric Gingras)
 
Quelles lois sont applicables au hacker? Énormément moins que tu penses. (Bot...
Quelles lois sont applicables au hacker? Énormément moins que tu penses. (Bot...Quelles lois sont applicables au hacker? Énormément moins que tu penses. (Bot...
Quelles lois sont applicables au hacker? Énormément moins que tu penses. (Bot...
 
Broken by design (Danny Fullerton)
Broken by design (Danny Fullerton)Broken by design (Danny Fullerton)
Broken by design (Danny Fullerton)
 
Conservation et la circulation des renseignements personnels des services de ...
Conservation et la circulation des renseignements personnels des services de ...Conservation et la circulation des renseignements personnels des services de ...
Conservation et la circulation des renseignements personnels des services de ...
 
Stack Smashing Protector (Paul Rascagneres)
Stack Smashing Protector (Paul Rascagneres)Stack Smashing Protector (Paul Rascagneres)
Stack Smashing Protector (Paul Rascagneres)
 
Comment détecter des virus inconnus en utilisant des « honey pots » et d’autr...
Comment détecter des virus inconnus en utilisant des « honey pots » et d’autr...Comment détecter des virus inconnus en utilisant des « honey pots » et d’autr...
Comment détecter des virus inconnus en utilisant des « honey pots » et d’autr...
 
Comment détecter des virus inconnus en utilisant des « Honeypots » et d’autre...
Comment détecter des virus inconnus en utilisant des « Honeypots » et d’autre...Comment détecter des virus inconnus en utilisant des « Honeypots » et d’autre...
Comment détecter des virus inconnus en utilisant des « Honeypots » et d’autre...
 
PostNet, une nouvelle ère de Botnet résilient (Julien Desfossez & David Goulet)
PostNet, une nouvelle ère de Botnet résilient (Julien Desfossez & David Goulet)PostNet, une nouvelle ère de Botnet résilient (Julien Desfossez & David Goulet)
PostNet, une nouvelle ère de Botnet résilient (Julien Desfossez & David Goulet)
 
La détection d'intrusions est-elle morte en 2003 ? (Éric Gingras)
La détection d'intrusions est-elle morte en 2003 ? (Éric Gingras)La détection d'intrusions est-elle morte en 2003 ? (Éric Gingras)
La détection d'intrusions est-elle morte en 2003 ? (Éric Gingras)
 
Responsabilisation des données confidentielles en entreprise (Étienne Dubreuil)
Responsabilisation des données confidentielles en entreprise (Étienne Dubreuil)Responsabilisation des données confidentielles en entreprise (Étienne Dubreuil)
Responsabilisation des données confidentielles en entreprise (Étienne Dubreuil)
 
Le GPU à la rescousse du CPU (Charles Demers-Tremblay)
Le GPU à la rescousse du CPU (Charles Demers-Tremblay)Le GPU à la rescousse du CPU (Charles Demers-Tremblay)
Le GPU à la rescousse du CPU (Charles Demers-Tremblay)
 
802.1X filaire, un monde idéal illusoire? (Olivier Bilodeau)
802.1X filaire, un monde idéal illusoire? (Olivier Bilodeau)802.1X filaire, un monde idéal illusoire? (Olivier Bilodeau)
802.1X filaire, un monde idéal illusoire? (Olivier Bilodeau)
 

Mots de passe et mécanismes d’authentification (Thomas Pornin)

  • 1. ´ Mots de passe et mecanismes d’authentification Thomas Pornin Hackfest 2010 Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 1 / 29
  • 2. Plan 1 Notions fondamentales 2 Stockage 3 Authentification 4 Conclusion Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 2 / 29
  • 3. Notions fondamentales ´ Definition ´ Definition Un mot de passe est une information confidentielle, qu’un utilisateur ´ ´ ´ ´ peut memoriser et reproduire precisement dans un dispositif d’entree. ´ Il s’agit de faire le lien entre une identite physique et le monde ´ numerique (des 0 et des 1...). Mot et passphrase NIP mots de passe graphiques Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 3 / 29
  • 4. Notions fondamentales ´ Concurrent : biometrie ´ ´ ` Biometrie : des informations attachees a l’utilisateur : empreintes digitales reconnaissance faciale ´ scan retinien ` Problemes : ´ ´ L’information est specifique mais pas forcement confidentielle. ´ ´ L’information biometrique n’est pas precise. ´ ´ ´ ` La specificite n’est pas verifiable a distance. ´ L’information n’est pas detachable. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 4 / 29
  • 5. Notions fondamentales ` Concurrent : carte a puce ` ` ˆ ´ Carte a puce : l’information secrete est sous le controle d’un materiel ´ ´ blinde capable de s’en servir pour des operations cryptographiques complexes. ` Problemes : Cout (production, distribution). ˆ Importante latence initiale. La carte n’est pas attachee a l’utilisateur −→ on rend l’utilisateur ´ ` responsable. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 5 / 29
  • 6. Notions fondamentales Entropie ´ Definition ˆ L’entropie est une mesure de ce qu’un mot de passe aurait pu etre. entropie de n bits = en essayant des mots de passe possibles, on trouve le bon en, en moyenne, 2n−1 essais. ´ L’entropie qualifie le processus de selection du mot de passe, pas le ˆ mot de passe lui-meme. Les utilisateurs choisissent des mots de passe de faible entropie. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 6 / 29
  • 7. Notions fondamentales Entropie : exemples et mesure 6 lettres minuscules : 266 ≈ 228.2 Deux lettres, deux chiffres, deux lettres, deux chiffres : ix71yn45 di30lz43 to71sy30 np37kj76 entropie : 264 × 104 ≈ 232.1 ´ Quand tous les mots de passe possibles ne sont pas equiprobables, la ´ mesure de l’entropie est plus compliquee. John the Ripper : outil de craquage par essais de mots courants et variantes. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 7 / 29
  • 8. Notions fondamentales Faiblesse des mots de passe 1980 : vs 25 kOps/s Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 8 / 29
  • 9. Notions fondamentales Faiblesse des mots de passe 1980 : vs 25 kOps/s 2010 : vs 25 GOps/s Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 8 / 29
  • 10. Notions fondamentales Faiblesse des mots de passe 1980 : vs 25 kOps/s 2010 : vs 25 GOps/s Les mots de passe sont devenus un million de fois plus faibles en 30 ans. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 8 / 29
  • 11. Notions fondamentales Imposer un bon mot de passe Encadrer le choix est difficile (quality meter vs entropie). L’utilisateur est hostile : ´ ´ ´ la securite n’est pas une fonctionnalite ´ ` ´ ´ ı ´ le perimetre de securite est mal maˆtrise ´ grand inventivite dans le contournement On peut tenter de responsabiliser l’utilisateur (inapplicable dans de nombreux contextes). Entropie atteignable en pratique : environ 32 bits. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 9 / 29
  • 12. Stockage Contexte : stockage password, data ´ ´ ` ` Contexte : authentification sur un canal protege aupres d’un systeme ` ˆ ´ sur . On s’inquiete des conditions de stockage cote serveur. ˆ serveur Web SSL (https://) /etc/passwd ou /etc/shadow Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 10 / 29
  • 13. Stockage Hachage Une fonction de hachage est une transformation : ´ portant sur des donnees binaires arbitraires avec une sortie de taille fixe ´ publique et deterministe rapide ´ irreversible et sans collisions Exemples : MD5, SHA-1, SHA-256, Tiger. On peut aussi ´ deriver un hachage d’une fonction de chiffrement par blocs. ´ Principe : on stocke le mot de passe hache. On recalcule le hachage ´ lors de la verification. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 11 / 29
  • 14. Stockage Attaque efficace Attaque basique : on essaye des mots de passe possibles. PC Intel Core2 Q6600 : 48 millions SHA-1 par seconde GPU NVidia 9800 GTX+ : 160 millions SHA-1 par seconde ´ Un mot de passe de 32 bits d’entropie ne resiste que 13 secondes ! Contremesure : rendre le hachage plus lent : ´ hacher la concatenation de 10000 copies du mot de passe ´ hacher la sortie recursivement ´ Ceci ralentit l’attaquant et l’utilisateur legitime. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 12 / 29
  • 15. Stockage Attaques et partage Partage : l’attaquant fait un hachage pour attaquer plusieurs mots de passe. ` Attaque parallele : l’attaquant a une copie de /etc/passwd ` (/etc/shadow) et cherche a obtenir le mot de passe d’un utilisateur quelconque. ´ ´ Table precalculee : les hachages de nombreux mots de passe ´ ´ courants sont stockes dans une table triee : l’attaque est une simple lecture. ´ ´ Google est une grosse table precalculee. Exemple : chercher 721a9b52bfceacc503c056e3b9b93cfa . Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 13 / 29
  • 16. Stockage ´ Compromis temps/memoire de Hellman (1980) ´ Le compromis temps/memoire de Hellman est une technique de ´ ´ compression d’une table precalculee. H R H R H H R H π1 −→ v1 −→ π2 −→ v2 −→ π3 −→ · · · −→ vt−1 −→ πt −→ vt ´ On ne stocke que les debuts et fins de chaˆne (π1 , vt ). Pour l’attaque, ı ´ on part du hachage attaque et on recalcule la chaˆne correspondante. ı Pour supporter les collisions de chaˆnes, il faut plusieurs fonctions de ı ´ reduction R, et plusieurs tables. Cout : ˆ ´ stockage divise par t l’attaque necessite t 2 invocations de H ´ Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 14 / 29
  • 17. Stockage Rainbow tables (2003) Une rainbow table est une optimisation sur le compromis de Hellman : H 1 R H 2 R H H Rt−1 H π1 −→ v1 −→ π2 −→ v2 −→ π3 −→ · · · −→ vt−1 −→ πt −→ vt Moins de collisions de chaˆnes, donc moins de tables. Le cout CPU est ı ˆ ´ divise par deux. Variantes : fuzzy / thick / thin rainbow tables. Cout initial ˆ La construction de la table doit passer par tous les mots de passes attaquables. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 15 / 29
  • 18. Stockage Salt ´ Definition ` Une salt est un parametre public qui modifie le hachage d’un mot ´ de passe (la salt selectionne la fonction de hachage). ´ Idealement, chaque mot de passe utilise une salt unique. ´ Moyen simple : choisir une salt aleatoire de taille suffisante pour que la ´ reutilisation soit hautement improbable : 16 octets sont plus que suffisants ´´ ´ une nouvelle salt pour chaque mot de passe cree ou change ´ ´ la salt est stockee en clair avec le hache Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 16 / 29
  • 19. Stockage Exemple ` Obtenu sur un systeme Linux (Ubuntu 10.04) : $6$NmmN5L0O$vqOf3DuGNf.CHVpIcJZ9u2LmVS.NWhifwipwp fmZVMMQxamKXAlVGg0VMo1ScMQsSBtdXbrssLO/MpSKh7rLz. $ ´ separateur 6 fonction de hachage (6 = SHA-512) NmmN5L0O salt vqOf3D... ´ mot de passe hache (encodage Base64) ´ Le hachage est une mixture compliquee qui implique environ 5000 invocations de SHA-512 et de multiples insertions du mot de passe et de la salt. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 17 / 29
  • 20. Authentification Contexte : authentification password, data ` Contexte : authentification a distance ; l’attaquant peut agir sur le canal de transmission. HTTP PPP (RTC, ADSL) appariment Bluetooth Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 18 / 29
  • 21. Authentification HTTP : Basic ´ ´ Specifie dans la RFC 2617. 1 ˆ Le client envoie sa requete. 2 ´ Le serveur repond 401 (Unauthorized) avec : WWW-Authenticate: Basic realm="Foo" 3 ` ˆ Le client envoie a nouveau sa requete avec : Authorization: Basic dXNlcjpwYXNz (encodage Base64 de username:password). ´ ´ ´ Simple presentation du mot de passe en clair. Securite nulle dans la plupart des cas. HTTPS quasiment obligatoire. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 19 / 29
  • 22. Authentification HTTP : Digest ´ ´ Specifie dans la RFC 2617. ´ Principe : le serveur envoie un nonce ; le client repond par H(π||n||u) (n = nonce, u = nom de l’utilisateur et URL requise). ˆ ´ ´ auth-int : controle d’integrite optionnel : ˆ un nouveau nonce par requete ˆ ´ le hachage couvre le corps de la requete ou de la reponse Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 20 / 29
  • 23. Authentification HTTP : Digest Hachage simple : mauvaise protection face aux attaques par dictionnaire. Gestion de multiples nonce (complexe, sensible aux pannes). auth-int ne couvre que le corps : changer les nonces forcer l’utilisation d’une fonction de hachage forcer l’utilisation de auth ˆ modifier d’autres entetes (Redirect...) Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 21 / 29
  • 24. Authentification HTTP : Digest Hachage simple : mauvaise protection face aux attaques par dictionnaire. Gestion de multiples nonce (complexe, sensible aux pannes). auth-int ne couvre que le corps : changer les nonces forcer l’utilisation d’une fonction de hachage forcer l’utilisation de auth ˆ modifier d’autres entetes (Redirect...) HTTP Digest n’est que marginalement plus sure que Basic. SSL/TLS ˆ quasiment indispensable. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 21 / 29
  • 25. Authentification Attaques offline et online ´ Attaque offline : l’attaquant peut verifier un mot de passe sur ses ` ` propres systemes. Exemple : retrouver le mot de passe a partir de ´ son hache. ´ Attaque online : l’attaquant ne peut verifier un mot de passe qu’en ` interagissant avec un systeme qui connaˆt ce mot de passe. Ce ı ` ´ ´ systeme peut limiter arbitrairement le debit des reponses ` (exemple : code PIN sur carte a puce). Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 22 / 29
  • 26. Authentification PAKE ´ Password-Authenticated Key Exchange designe un protocole ´ ´ d’etablissement de cle avec authentification mutuelle selon un secret ´ partage. ` Les protocoles PAKE protegent contre les attaques offline. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 23 / 29
  • 27. Authentification EKE ´ Encrypted Key Exchange : publie par Bellovin et Merritt en 1992. ´ Principe : on chiffre symetriquement (avec le mot de passe comme ´ ´ ´ cle) les messages d’un protocole d’etablissement de cle. ´ ˆ ´ Le chiffrement symetrique doit etre unverifiable. L’attaquant (actif) doit choisir a priori un mot de passe, sous peine ˆ ` ´ ´ d’etre a l’exterieur de l’etablissement de cle. ´ Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 24 / 29
  • 28. Authentification Diffie-Hellman p nombre premier, grand (1024 bits) q nombre premier, moins grand (160 bits), q divise p − 1 g generateur d’ordre q (1 < g < p, g q = 1 mod p) ´ ´ A B a g mod p a ∈R [1, q-1] g b mod p b ∈R [1, q-1] K = (g a )b = (g b )a = g ab mod p Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 25 / 29
  • 29. Authentification Full Domain Hash ´ Definition Un Full Domain Hash est une fonction de hachage dont la sortie est ´ ´ ´ ´ ` precisement un ensemble specifique donne, ou chaque valeur est ´ equiprobable. ´ Soit H une fonction de hachage. On calcule F (x) pour une entree x : 1 Soit y = H(1||x)||H(2||x)||...||H(n||x) ou n est choisi pour que la ` ´ ` ´ ` taille de y soit legerement superieure a celle de p (par exemple, p a 1024 bits et y fait 1536 bits). 2 ´ Soit z = y mod p (interpretation des bits en un entier, puis ´ reduction modulaire). 3 F (x) = z (p−1)/q mod p. Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 26 / 29
  • 30. Authentification EKE avec Diffie-Hellman p nombre premier, grand (1024 bits) q nombre premier, moins grand (160 bits), q divise p − 1 g generateur d’ordre q (1 < g < p, g q = 1 mod p) ´ ´ w ´ mot de passe hache : w = F (π||A||B) A B a w·g mod p a ∈R [1, q-1] w·g b mod p b ∈R [1, q-1] K = (g a )b = (g b )a = g ab mod p Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 27 / 29
  • 31. Authentification EKE avec Diffie-Hellman ´ ´ ´ ˆ ´ Une fois la cle echangee, elle doit etre utilisee dans un protocole ´ ´ ´ assurant l’integrite (et la confidentialite). ´ L’authentification est implicite : pas de garantie d’avoir parle avec le ´ ´ vrai client / serveur avant d’avoir echange des messages proteges ´ ´ par K . ´ ´ Un autre protocole PAKE standard : SRP (RFC 2945, integre dans TLS avec RFC 5054). Mais il y a des brevets... Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 28 / 29
  • 32. Conclusion Conclusion ` ´ Les mots de passe ne sont pas un probleme resolu. ` Les mots de passe sont un probleme qui s’aggrave avec le temps. ` ´ Les systemes et protocoles doivent devenir resistants aux attaques offline. ` On ne connaˆt pas de systeme de remplacement indiscutable. ı Thomas Pornin ´ Mots de passe et mecanismes d’authentification Hackfest 2010 29 / 29