Cyberattaques et tests d’intrusions
Attaques : Authentification
Comprendre les attaques pour mieux se défendre
Mohamed Mejri
Université Laval
3 septembre 2023
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 1 / 73
Introduction
Plan
1 Introduction
2 Briser
3 Voler
4 Contourner
5 Maillon faible
6 Conclusion
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 2 / 73
Introduction
Introduction
Définition (Owasp)
û Authentification : (en grec : = réel ou véritable, de ”au-
thentes” = ”auteur”)
û C’est l’acte de confirmer que ce qui est réclamé est vrai.
û Authentification d’un objet peut signifier la confirmation de sa prove-
nance
û Authentifier une personne consiste souvent à vérifier son identité.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 3 / 73
Introduction
L’authentification est au cœur de la sécurité
û Ordinateurs, téléphones, Wifi
û Banques
û Gmail, Facebook, Twitter, etc.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 4 / 73
Introduction
Enjeux
Avril 2013 : Un faux tweet...une grande perte à la bourse (panique
et chute de 145 points)
û Le compte Twitter de l’agence de presse AP (The Associated Press) a
été piraté
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 5 / 73
Introduction
Enjeux
Une fausse authentification=⇒ un avion abattu...
û Militaire
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 6 / 73
Introduction
Introduction
û Identification
Quelque chose qu’on sait : Mot de passe, réponse à une question, etc.
Quelque chose qu’on a : Carte, jeton, certificat, etc.
Quelque chose qu’on est ou fait : Biométrie (empreinte digitale, rétine,
voix, reconnaissance faciale), signature manuscrite, etc. On peut oublier
notre mot de passe mais pas notre empreinte.
û Authentification à distance : Un protocole d’authentification
Transport Layer Security (TLS) : authentification avec clés asymétriques
et mots de passe
Kerberos : protocole d’authentification avec clés partagées
NTLM : authentification à base de mots de passe + fonctions de hachage
Secure Shell (SSH) : ressemble à TLS
Radius : plusieurs protocoles offerts par un même serveur.
RFC 2069/2617 : HTTP-Digest-Authentication
FIDO (UAF et A2F) : nouveau standard pour une authentification sim-
plifiée avec des serveurs web
WebAuthn (inspiré de FIDO)
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 7 / 73
Introduction
Introduction
û Authentification simple (canal sécurisé) : mot de passe, adresse
mac, jeton, biométrie (rétine, empreinte digitale, etc.).
1 A −→ B : Credit
û Authentification à distance : on ajoute un protocole d’authentifica-
tion
1 A −→ B : A
2 B −→ A : Na
3 A −→ B : f (k, Na )
Hachage : f (k, Na ) = Hk (Na )
Clé symétrique (k = kab ) : f (k, Na ) = Enc(Na , kab ) = {Na }kab avec kab
est souvent hash(pwd)
Clé asymétrique (k = ka−1 ) : f (k, Na ) = Sign(Na , ka−1 )
û La preuve peut se faire avec plusieurs défis impliquant des canaux de
communication différents (SMS, courriel, etc.)
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 8 / 73
Introduction
Introduction
Authentification : techniques d’attaques
attaques actives
dictionnaire/force brute
phishing
spayware
injection de hachages dans un fichier de mots de passe
briser TLS/SSL
...
attaques passives en ligne
sniffing
MITM
proxy
...
attaques passives hors ligne
briser le hash via dictionnaire localement
briser le hash d’une manière distribuée
briser le hash via un rainbow table
...
autes attaques
ingénierie sociale (shouldering, authorité, etc. )
poubelle
...
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 9 / 73
Briser
Plan
1 Introduction
2 Briser
3 Voler
4 Contourner
5 Maillon faible
6 Conclusion
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 10 / 73
Briser
Le mot de passe est la clé du royaume
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 11 / 73
Briser
Briser le mot de passe : attaques actives
Parmi les services ciblés :
û SSH (Secure Shell) : port TCP 22
û FTP/SFTP (FTP sur SSH) : port TCP 21/ port TCP 22
û Telnet : port TCP 23
û SMB (Service Message Block) : ports TCP 445 et 139
û MSRPC (Microsoft Remote Procedure Call) : port TCP 135
û TS (Terminal Service) : port TCP 3389
û PC Anywhere (contrôler une machine à distance ) : port TCP 5631 (données)
+ UDP 5632 (état)
û VNC (contrôler une machine à distance ) : port TCP 5900 (par défaut)
û SQL : ports TCP 1433 et UDP 1434
û Sharepoint et d’autres services Web : port TCP 80 et 443
û Etc.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 12 / 73
Briser
Briser le mot de passe : attaques actives
û La réussite dépend des messages d’erreurs, de la facilité de deviner un
nom d’utilisateur, de nombre de tentatives avant de bloquer un compte
(ex. 5 tentatives erronées par heure), la complexité du mot de passe.
Source : http ://thehackernews.com
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 13 / 73
Briser
Briser le mot de passe : attaques actives
û Hydra est l’un des outils les plus utilisés (TOP 10)
û Il permet d’attaquer une large variété de services tels que : SSH, TELNET,
VNC, LDAP, MYSQL, POP3, IMAP, FTTPS, etc.
û Medusa est un autre bon outil disponible sur Kali et qui permet d’attaquer des
services comme FTP, IMAP, MYSQL, PC Anywhere, POP3, SNMP, SSHv2.
VNC. Il est capable de tester 2 000 mots de passe par minute.
û La liste de noms d’utilisateurs vient de l’énumération et de footprinting : Entre
autres, à partir des adresses courriel collectées via Harvester. Par exemple,
si [email protected] est collectée, alors bob.tremblay, bobtremblay,
bobtrembl, bobtremb, bobtro1, etc. sont des noms plausibles.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 14 / 73
Briser
Briser le mot de passe : attaques actives
û Burpsuite : attaquer l’authentification sur un site web
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 15 / 73
Briser
Briser le mot de passe : attaques actives
û Mots de passe : les 10 mots de passe les plus utilisés en 2022.
1 password
2 123456
3 123456789
4 guest
5 qwerty
6 12345678
7 111111
8 12345
9 col123456
10 123123
(Source : https ://nordpass.com/most-common-passwords-list/)
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 16 / 73
Briser
Briser le mot de passe : attaques actives
û Mots de passe
Source : http ://thehackernews.com/2015/09/ashley-madison-password-cracked.html
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 17 / 73
Briser
Briser le mot de passe : attaques actives
û Mots de passe
Source : http ://thehackernews.com/2017/03/gmail-yahoo-password-hack.html
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 18 / 73
Briser
Briser le mot de passe : attaques actives
û Il y en a eu pire que Ashley Madisson
Source : web.facebook.com/thehackernews
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 19 / 73
Briser
Briser le mot de passe : attaques actives
û Mots de passe
Source : http ://thehackernews.com/2015/09/ashley-madison-passwords.html
û Au lieu de faire plusieurs tentatives sur un même compte en utilisant différents
mots de passe, il vaut mieux faire plusieurs tentatives sur plusieurs comptes
en utilisant un seul mot de passe parmi les Top 10.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 20 / 73
Briser
Briser le mot de passe : attaques actives (construire un dictionnaire)
û Force brute (n’est pas pratique)
û Force brute guidée par des règles : taille de mot de passe, type de caractères,
emplacement des caractères, etc.
Des ”pattern” très utilisés : u (majuscule), l (minuscule) et d (chiffre). Top 5
patterns crack 48% of passwords
ullllldd (8 caractères) (exemple Loveme12)
ulllllldd (9 caractères) (exemple Loveyou77)
ullllldds (9 caractères) (exemple Loveme77 !)
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 21 / 73
Briser
Briser le mot de passe : attaques actives (construire un dictionnaire)
û Footprinting (wordlist) : Noms, prénoms, sport, films, etc.
û Plusieurs dictionnaires peuvent être téléchargés à partir de :
packetstormsecurity.com/Crackers/ ou www.openwall.com (payant)
û Rockyou list (vrais mots de passe) disponible sur kali (/user/share/wordlists)
Source : security-is-just-an-illusion.blogspot.ca
û Attaques hybride : dictionnaire + Règles d’enrichissement :
changement (a → @, o → 0 , etc.)
Ajouter des chiffres vers la fin, le début, etc.
û Autres : mots de passe par défaut, choisir l’ordre de parcourir les mots du diction-
naire, etc.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 22 / 73
Briser
Briser le mot de passe : attaques actives (construire un dictionnaire)
Un outil comme cewl (disponible sous kali) permet de construire un wordlist à
partir d’une URL
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 23 / 73
Briser
Briser le mot de passe : attaques actives (construire un dictionnaire)
Crunch : un outil, disponible sous Kali, permettant de générer automatiquement
une liste de mots en suivant certaines règles (min, max, charset, pattern, etc.) .
I Générer des mots de taille entre 1 et 2 en utilisant les caractères abc :
I Les patrons avec l’option ”-t”. Exemple : générer la liste des mots passwd00,
passwd01, ..., passwd99. Remarque : ”@” représente un minuscule, ”,” pour
les majuscules, ”%” pour les pour nombres, ”ˆ” pour les symboles.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 24 / 73
Briser
Briser le mot de passe : attaque passive
LM (Lan Manager) : un protocole d’authentification de type défi/réponse
û LM est aussi le nom de la fonction de hachage utilisée dans ce protocole
û Les mots de passe de moins de 14 caractères sont complétés par des Null (
code ASCII 00 )
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 25 / 73
Briser
Briser le mot de passe : attaque passive
LM (Lan Manager) : un protocole d’authentification de type défi/réponse
û Le client s’authentifie via son mot de passe pwd
1. Client −→ Server : Demande de négociation
2. Server −→ Client : Ns
3. Client −→ Server : Ek1 (Ns ).Ek2 (Ns ).Ek3 (Ns )
4. Server −→ Client : Résultat (oui/non)
Ns : 8 bytes :
E = DES
k1 .k2 .k3 = LM(pwd)|5 bytes 0 = (3x56 − bits)
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 26 / 73
Briser
Briser le mot de passe : attaque passive
LM (Lan Manager) : un protocole d’authentification de type défi/réponse
û Le mot de passe utilise les caractères ANSI : alphanumériques et les symboles
( 95 caractères possibles)
‘ ~ ! @ # $ % ^ & * ( ) _ - + = { } [ ] \ | : ; " ’ < >
, . ? / space
Remarque : certains systèmes n’autorisent qu’un sous ensembles de cette liste
(Oracle permet 23 caractères spéciales seulement)
û Le mots de passe a une taille maximale de 14 caractères : 9514 ≈ 292 possi-
bilités
û Les minuscules sont transformés en majuscules : 6914 ≈ 284 possibilités
û Le mot de passe de 14 caractères sera divisé en deux clés de 7 caractères
chaque
û Chercher une clés de 7 caractères demande le parcours d’un espace de 697 ≈
243 possibilités : cela est possible dans quelques heures (avec des équipements
spécialisés)
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 27 / 73
Briser
Briser le mot de passe : attaque passive
LM (Lan Manager) : un protocole d’authentification de type défi/réponse
û Pas de salt : ne protège pas contre les attaques par dictionnaire où les calculs
sont préparés à l’avance
û Un intrus peut déterminer rapidement si la taille du mot de passe dépasse 7
caractères
û Si le générateur aléatoire des ”défis” utilisé par le serveur est prévisible, l’at-
taque est plus facile
û DES n’est plus sécuritaire : un espace de clés de 56 bits peut être parcouru
dans un temps raisonnable
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 28 / 73
Briser Briser le mot de passe : attaquer NTLM
Attaquer l’authentification : attaque passive
NTLM (New Technology Lan Manager) : un protocole d’authentification de type
défi/réponse
û Différentes versions : NTLMv1, NTLMv2, NTLM2
û NTLMv1 :
1. Client −→ Server : Demande de négociation
2. Server −→ Client : Ns
3. Client −→ Server : Ek1 (Ns ).Ek2 (Ns ).Ek3 (Ns )
4. Server −→ Client : Résultat (oui/non)
Ns : 8 bytes
E = DES
k1 .k2 .k3 = NT hash(unicode(pwd))|5 bytes 0 = (3x56 − bits)
NT hash = MD4
Remarque : celui qui vole un mot de passe haché à partir d’une machine
Windows, il peut l’utiliser directement (sans connaitre le mot de passe
correspondant en clair) pour se connecter à des serveurs du réseau via LM ou
NTLM.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 29 / 73
Briser Briser le mot de passe : attaquer NTLMv1
Attaquer l’authentification : attaque passive
NTLMv1 :
û+ La taille de mot de passe n’est pas limitée à 14
û+ Les minuscules ne sont pas transformées en majuscules
û+ Difficile de faire le lien entre un partie du hash et une partie du mot de passe.
û+ Parcourir les mots de passe possibles n’est pas raisonnable
û- Pas de salt : ne protège pas contre les attaques par dictionnaire où les calculs
sont préparés à l’avance
û- Il suffit de trouver k1 , k2 et k3 pour attaquer : Pas besoin de trouver le mot
de passe en soit
û- Pour trouver k1 , k2 et k3 , il suffit d’attaquer DES simple : cela est faisable
dans un temps raisonnable
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 30 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Attaquer l’authentification : attaque passive
NTLM (New Technology Lan Manager) : un protocole d’authentification de type
défi/réponse
û NTLMv2 :
1. Client −→ Server : Demande de négociation
2. Server −→ Client : Ns
3. Client −→ Server : Hk (Ns .Nc ).Nc
4. Server −→ Client : Résultat (oui/non)
Ns , Nc : 8 bytes (chaque)
Hk = HMAC MD5(k) : MD5 utilisée pour construire un MAC (avec k)
k = Hk0 (user name.domain name)
k0 = NT Hash(unicode(pwd))
NT hash = MD4
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 31 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser le mot de passe : attaque passive
NTLMv2 :
û+ La taille de mot de passe n’est pas limitée à 14
û+ Les minuscules ne sont pas transformées en majuscules
û+ Difficile de faire le lien entre un partie du hash et une partie du mot de passe.
û+ Parcourir les mots de passe possibles n’est pas raisonnable
û+ Nc joue le rôle d’un salt : protège contre les attaques par dictionnaire où les
calculs sont préparés à l’avance
û+ HMAC MD5 à la place de DES : plus sécuritaire
û- Pour l’utiliser, il faut avoir un nom de domaine
û- Aucune preuve de correction de protocole : comme tous les autres
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 32 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser le mot de passe : accès aux mots de passe hachés
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 33 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser le mot de passe : accès aux mots de passe hachés
(Ordinateur éteint et BIOS non protégé )
û Pour Windows ce fichier est nommé SAM et se trouve dans
C :\Windows\System32\Config
û On peut contourner cette protection en redémarrant la machine avec un autre
système d’exploitation comme Kali à partir d’un CD live ou d’une clé USB
û Appuyer sur F12 pour choisir le média du démarrage
û Des outils comme Kon-Boot permet de les récupérer, d’ajouter ou de modifier
le hash d’un mot de passe
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 34 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser le mot de passe : accès aux mots de passe hachés dans une
base de données
û Mots de passe hachés récupérés suite à une attaque d’une base de données
d’un serveur web
source : slideplayer.com/slide/8747056/
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 35 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un mot de passe haché
û Des outils comme John the Ripper, Cain & Abel, LCP, Brutus et L0pthcrack
peuvent facilement retrouver les mots de passe faibles
û John the Ripper (Top 10) est capable de tester des millions de mots de passe
par seconde avec un ordinateur ”normal”. Le temps dépend de la vitesse de
la machine et de la fonction de hachage.
û Hashcat : plus récent que John the Ripper et il réclame être le plus rapide
û oclHashcat : Fonctionne en parallèle sur plusieurs GPU
û Hashcat : Exemple
source : slideplayer.com/slide/8747056/
Le calcul est fait sur une machine virtuelle Kali
Les mots de passe recherchés sont dans un WordList de 500 000 mots
donné en entrée
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 36 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un mot de passe haché
Source : https ://hashcat.net/hashcat/
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 37 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un mot de passe haché : Exemples de commandes hashcat
option -a option -m
I (-a 0) Briser les hachages MD5 (-m 0) qui se trouvent dans le fichier
hash.txt en utilisant les mots de passe dans le fichier wordlist.txt.
hashcat -m 0 -a 0 hash.txt wordlist.txt
I (-a 3) Les mots de passe se composant de six caractères commençant par
”Pa” poursuivi de quatre chiffres :
hashcat -m 0 -a 3 hash.txt ’Pa?d?d?d?d’
?u = minuscule, ?l = majuscule, ?d = nombre, ?s = caractère spécial
I (-a 6) Les mots de passe commençant par des mots dans wordlist.txt et
se terminant par deux chiffres suivis d’un caractère spécial :
hashcat -m 0 -a 6 hash.txt wordlist.txt ’?d?d?s’
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 38 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un mot de passe haché
Mot de passe haché
û Remarque : En 2003, on a constaté qu’avec un cluster de 25 ordinateurs, on
peut essayer 350 milliards de mots de passe par seconde. On peut ”brutforcer”
100 mots de passe, de 12 chiffres chaque, en moins d’une minute.
Source http ://thehackernews.com/2013/05/cracking-16-character-strong-passwords.html
û Rainbow Table
Source : https ://www.trek10.com/blog/strong-passwords-and-LastPass-part1/
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 39 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un mot de passe haché
Mot de passe haché
û rainbowcrack (http://project-rainbowcrack.com) : un outil, dispo-
nible sur kali, qui permet de générer des rainbow table pour différentes
fonctions de hachage (LM, NTLM, MD5, SHA1, SHA256, etc.) et de les
utiliser pour briser de mots de passe.
û rainbow table : exemples (http://project-rainbowcrack.com/table.
htm)
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 40 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un mot de passe haché
Le service d’un botnet peut aussi accélérer considérablement l’attaque d’un mot
de passe haché
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 41 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un mot de passe Kerberos
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 42 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un PIN WPS : Authentification WiFi
source : http ://www.microchip.com/pagehandler/en-us/technology/wifi/technology/wps.html
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 43 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un PIN WPS : Authentification WiFi
û Le Pin est de 8 chiffres : force brute 108 = 230 possibilités
û Le dernier chiffre est utilisé comme checksum : 107 < 224 possibilités
û Encore mieux (pour un pirate), via une demande de connexion, la réponse de
AP permet de savoir si les 4 premiers chiffres ou les 4 derniers chiffres sont
erronés : 104 + 103 =11000 possibilités ! !
û Ce n’est pas trop grave si le AP bloque l’accès (pour un certain temps) après
un nombre de tentatives erronées, mais plusieurs ne le font pas de tout ou ne
le font pas bien.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 44 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un mot de passe : Mitiger l’attaque
û Mot de passe fort :
taille : au moins 10 (12 est souvent recommandée)
espace : majuscules, minuscules, caractères spéciaux, chiffres
û JavaScript Password ”meters” (métriques) : évalue un mot de passe (mauvais,
moyen, bon, etc.)
I Éviter les formes (pattern : ullllllldds, etc.) les plus utilisées
û Liste noire : empêcher les mots de passe les plus utilisés
û Limiter la durée de vie : garder l’historique pour empêcher la réutilisation
û salt : permet de lutter contre le rainbow table et autres
û Éviter d’utiliser le même mot de passe avec différents comptes
û Fonctions de hachage lentes : PBKDF2 (utilisée dans WPA2), Bcrypt, Scrypt
(recommandée par le OWASP) , etc.
Pour un ordinateur de 2000$ (3 cartes GPU) : Le temps pour hacher toutes
les chaı̂nes de 8 caractères
Fonction NTLM MD5 SHA1 SHA256 Scrypt
Durée 3.7 jours 8 jours 24 jours 64 jours 999 999 999 années
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 45 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un mot de passe : Mitiger l’attaque
û On a dépassé une vitesse de 350 milliards de mots de passe par seconde
û Avec cette vitesse, on peut explorer un espace de 8 caractères (958 possibilités)
dans moins de 6 heures
û Tout mot de passe LM peut être brisé dans moins que 6 minutes
source : https ://arstechnica.com/information-technology/2012/12/25-gpu-cluster-cracks-every-standard-windows-
password-in-6-hours/
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 46 / 73
Briser Briser le mot de passe : attaquer NTLMv2
Briser un mot de passe : Mitiger l’attaque
û Utilisation d’un gestionnaire de mots de passe
Une base de mots de passe chiffrée par une clé (mot de passe) connue
par l’utilisateur
À chaque nouveau compte, le gestionnaire génère un mot de passe com-
pliqué (difficile à briser et difficile à s’en rappeler)
L’utilisateur n’a besoin de retenir qu’un seul mot de passe
Tous les comptes utilisent des mots de passe différents, si un est com-
promis, cela n’affectera pas les autres.
û Authentifications via de clés privées/clés publiques à la place de mots de
passe : Fido, WebAuthn, etc.
û Authentifications multifacteurs (MAF)
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 47 / 73
Voler
Plan
1 Introduction
2 Briser
3 Voler
4 Contourner
5 Maillon faible
6 Conclusion
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 48 / 73
Voler
Voler un mot de passe : Accès physique à l’ordinateur + keylogger
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 49 / 73
Voler
Voler un mot de passe : Accès physique à l’ordinateur + keylogger
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 50 / 73
Voler
Voler un mot de passe : un outil qui intercepte la communication entre
un clavier sans-fil et un ordinateur
source : http ://thehackernews.com/2016/05/usb-charger-keylogger.html
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 51 / 73
Voler
Voler un mot de passe : utiliser Mimikatz pour lire des mots de passe
en clair à partir du RAM. Windows met des mots de passe des utilisateurs
connectés dans le RAM.
source : www.oreilly.com
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 52 / 73
Voler
Voler un mot de passe : Man In The Middle
I Rogue DHCP
I ARP Spoofing
I DNS Spoofing
I SLAAC Attack (DHCP IPv6)
I Rogue AP (Wifi)
I SPAM
I Proxy : pour une connexion anonyme
I TOR : créer un nœud dans le réseau
I Etc.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 53 / 73
Voler
Voler un mot de passe sous SSL : Man In The Middle
û Faux points d’accès (Rogue Access Points)
û Proxy
source : eliteproxy.altervista.org
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 54 / 73
Voler
Voler un mot de passe sous SSL : Man In The Middle
Contourner SSL avec sslstrip
Transformer https en http
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 55 / 73
Voler
Voler un mot de passe sous SSL : Man In The Middle
Contourner SSL
Envoyer un certificat auto-certifié (Self Certified
Certificat)
Remarque : Pour contrôler tout le trafic qui entre et qui sort dans leurs réseaux, certaines compagnies vont forcer leurs
utilisateurs à accepter leurs certificats pour se faire passer pour un MITM pour qu’elles les laissent utiliser SSL. Cela brise la
sécurité ! du client, aux yeux de la compagnie tout circule en clair, y compris les mots de passe Google, Facebook, compte
bancaire, etc.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 56 / 73
Voler
Voler un mot de passe sous SSL : Man In The Middle
Contourner SSL avec sslstrip
Créer un certificat valide pour cibler les programmes SSL
qui ne vérifient pas si une clé peut être utilisée pour signer
un certificat
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 57 / 73
Voler
Voler un mot de passe sous SSL : Man In The Middle
Contourner SSL
Demander un certificat portant un nom très proche d’un
autre très utilisé
En 2005, Eric Johason a enregistré un certificat ”pЦ :ypal.com” qui donne
en affichage paypal.com avec le caractère ”a” de type Cyclic difficile de le
distinguer d’un ”a” normal
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 58 / 73
Voler
Voler un mot de passe sous SSL : Man In The Middle
Faux points d’accès (Rogue Access Points) + MITM
Contourner SSL
Demander un certificat pour un domaine et signer
d’autres qui commence par des noms connus
Je demande un certificat pour le domaine *.toto.com puis je crée des certificats
pour d’autres sous-domaines comme :
www.paypal.com.toto.com
www.mabanque.com.toto.com
www.facebook.com.toto.com
Rare les personnes qui regardent le lien au complet : on regarde juste le début
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 59 / 73
Contourner
Plan
1 Introduction
2 Briser
3 Voler
4 Contourner
5 Maillon faible
6 Conclusion
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 60 / 73
Contourner
Contourner la connaissance de mot de passe : Attaque NTLM v1, v2
(Manque d’entropie)
H. Ochoa et A. Azubel : BlackHat 2010
I Observation 1 : Les défis générés par le serveur se répètent assez souvent dans
des courts intervalles de temps
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 61 / 73
Contourner
Contourner la connaissance de mot de passe : Attaque NTLM v1, v2
(Manque d’entropie)
H. Ochoa et A. Azubel : BlackHat 2010
I Observation 2 : Les défis générés par le serveur sont prévisibles
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 62 / 73
Contourner
Contourner la connaissance de mots de passe : Injection SQL
Select login, prenom from utilisateur where login=’user’ and
password=’pwd’;
source : www.jres.org/ media/tuto/tuto12
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 63 / 73
Contourner
Contourner l’authentification : Cross Site Scripting
û Mettre un script sur un serveur web
source : www.jres.org/ media/tuto/tuto12
û Attendre que le client l’exécute et passer à l’attaque
source : www.jres.org/ media/tuto/tuto12
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 64 / 73
Contourner
Contourner l’authentification : Accès direct
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 65 / 73
Contourner
Contourner l’authentification : Changement de paramètres
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 66 / 73
Maillon faible
Plan
1 Introduction
2 Briser
3 Voler
4 Contourner
5 Maillon faible
6 Conclusion
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 67 / 73
Maillon faible
Plusieurs chemins, différents niveaux de sécurité ...
û Plusieurs chemins : ordinateur, mobile, centre d’appels, etc.
source : https ://www.owasp.org/index.php/Testing for authentication
û Certains chemins ne limitent pas le nombre de tentatives erronées, etc.
û Surface d’attaque importante : Register, Login, logout, Password reset,
etc.
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 68 / 73
Maillon faible
Plusieurs chemins, différents niveaux de sécurité ...
û Fonctionnalité de ”mots de passe oublié” : défis portent souvent sur
des informations publiques
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 69 / 73
Maillon faible
Plusieurs chemins, différents niveaux de sécurité ...
û Fonctionnalité de ”ré-initialisation de mots de passe”
source https ://motherboard.vice.com/en us/article/bmjwea/hackers-release-alleged-ssn-numbers-stolen-from-cia-directors-aol-account
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 70 / 73
Maillon faible
L’être humain est le maillon le plus faible : En 2015, il y a eu
divulgation par erreur d’un ”login” et d’un ”mot de passe” d’un système
de gestion de railles à Londres dans un documentaire TV
Source : thehackernews.com
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 71 / 73
Conclusion
Plan
1 Introduction
2 Briser
3 Voler
4 Contourner
5 Maillon faible
6 Conclusion
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 72 / 73
Conclusion
Conclusion : Leçons à retenir
û L’authentification est au cœur de la sécurité
û L’authentification utilise la cryptographie
û La cryptographie est compliquée
Systèmes cryptographiques défaillants : DES, MD4, rtc.
Protocoles défaillants : WEP
Système cryptographie parfait ne suffit pas pour construire un protocole
cryptographique correct : problème indécidable
Implantations défaillantes : un mauvais PRNG, un mauvais Seed, un
mauvais traitement (SSL HeartBleed)
Mauvaises utilisations : mauvais mots de passe, mauvaise vérification
d’un certificat, etc.
La sécurité n’est pas compositionnelle (si A et B sont sécuritaires, A+B
ne l’est pas forcément)
û La cryptographie ne suffit pas : cheval de Troie, etc.
û Éviter les mots de passe faibles, les points d’accès publics, les ”proxies”
û Suivre les recommandations du OWASP pour intégrer l’authentification
dans un site web (https ://www.owasp.org/index.php/Testing for authentication)
Mohamed Mejri (Université Laval) Cyberattaques et tests d’intrusions 3 septembre 2023 73 / 73