L’authentification par simple identifiant et mot de passe est insuffisante pour protéger un compte utilisateur. Les campagnes de phishing pullulent sur le net et cela fait quelques années que l’on voit régulièrement dans l’actualité que les bases données de grandes entreprises ont fuité.
Face à cette insuffisance, il existe toutefois un procédé qui n’est pas réservé aux géants du net : l’authentification forte.
Dans cette conférence, je ferai un tour d’horizon de ce qu’est l’authentification forte et de différentes implémentations existantes.
#NSD16 - Et si on parlait d'authentification forte - Nicolas Glondu
1. Et si on parlait
d’authentification forte ?
Nicolas Glondu #NSD16
2. Nicolas Glondu - #NSD16 - 2/20
Nicolas Glondu
● Ingénieur logiciel full stack web depuis 2009
● Plusieurs années chez un fabricant de solutions
d’authentification forte, ancien membre de la
FIDO Alliance
3. Nicolas Glondu - #NSD16 - 3/20
L’authentification simple
Quelque chose que l’on connaît
4. Nicolas Glondu - #NSD16 - 4/20
Mots de passes faibles
https://security.linkedin.com/blog-archive
5. Nicolas Glondu - #NSD16 - 5/20
Réutilisation des mots de passes
http://bit.ly/biggestbreaches
6. Nicolas Glondu - #NSD16 - 6/20
Les attaques sont de plus en plus
nombreuses
● Phishing / Spear phishing
● Plugin / application malveillante
● Social engineering
● Key logger
● Autres attaques
https://xkcd.com/936/
7. Nicolas Glondu - #NSD16 - 7/20
L’authentification forte
● Quelque chose que l’on connaît
● Quelque chose que l’on possède
- Générateur de code
- Téléphone mobile
- Code imprimé
- Smart card / Périphérique USB
● Quelque chose que l’on est (biométrie)
8. Nicolas Glondu - #NSD16 - 8/20
Exemple de tous les jours :
le distributeur de billets
On possède une carte à puce
et
on connaît un code
donc
le retrait est autorisé
9. Nicolas Glondu - #NSD16 - 9/20
Authentification forte : code SMS
Google, Facebook, 3-D Secure
+ Équipement universel
+ Simple et rapide
- Batterie ?
- « Facile » à intercepter
- Coûteux
- Aucun standard
10. Nicolas Glondu - #NSD16 - 10/20
Authentification forte : push applicatif
Facebook, Steam
+ Large public cible (smartphones)
+ Simple et rapide
+ Coût modéré
- Batterie ?
- Complexité de mise en place
- Aucun standard
- Encore une application !?
11. Nicolas Glondu - #NSD16 - 11/20
Authentification forte :
One Time Password (OTP)
Principe :
Un algorithme mathématique est utilisé pour
générer un mot de passe qui sera différent à
chaque authentification
12. Nicolas Glondu - #NSD16 - 12/20
OATH HOTP / TOTP
IETF RFC 4226
● HOTP : compteur incrémenté à chaque authentification
(peu utilisé)
● TOTP : compteur = timestamp_s / 30
● Clé partagée lors de la phase de configuration
OTP = Truncate(HMAC-SHA1(key, counter))[-size:]
13. Nicolas Glondu - #NSD16 - 13/20
Authentification forte :
One Time Password
OATH HOTP/TOTP
+ Standardisé
+ Mise en place simple
- Configuration complexe pour les utilisateurs
- Phase de configuration sensible
- Vulnérable aux attaques serveur
- Nécessite un générateur (batterie?)
14. Nicolas Glondu - #NSD16 - 14/20
Authentification forte par clé physique :
FIDO U2F
15. Nicolas Glondu - #NSD16 - 15/20
Authentification forte par clé physique :
FIDO U2F
● Enregistrement :
- Le site génère un challenge C
- Le jeton génère un couple (K_priv, K_pub) lié au compte
- Le jeton répond (K_pub, F(K_priv, C))
- Le site vérifie les données avec K_pub
- Le site stocke et associe K_pub au compte utilisateur
● Authentification :
- Le site génère un challenge C
- Le jeton récupère la clé K_priv liée au compte
- Le jeton répond F(K_priv, C)
- Le site vérifie les données avec la clé K_pub du compte
16. Nicolas Glondu - #NSD16 - 16/20
Authentification forte : FIDO U2F
Google, Github
+ Standardisé
+ Matériel dédié
+ Peu coûteux
+ Bonne résistance au phishing
- Configuration complexe
- Matériel dédié
- Peu utilisé
17. Nicolas Glondu - #NSD16 - 17/20
Authentification forte :
Les limites
● Ne dispense pas de sécuriser son site web et son
serveur
● Des attaques spécifiques existent
● Ne dispense pas de sécuriser les mots de passes
des utilisateurs
● Nécessite une procédure de récupération du
compte un minimum sécurisée