Vous êtes sur la page 1sur 40

Découverte

des mots de
passe

ECOLE
ECOLE IT
IT –– 5SOA
5SOA -- Année
Année Académique
Académique 2023-2024
2023-2024 –– ©
© Tous
Tous droits
droits réservés
réservés
Résumé
• Généralités
• Génération d’empreintes
• Méthodes et outils

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Découverte
des mots de
passe
Généralités

ECOLE IT – 5SOA- Année Académique 2023-2024 – © Tous droits réservés


Généralités

Les techniques de cracking de mots de passe sont utilisées pour


récupérer les mots de passe des systèmes informatiques

Les attaquants utilisent des techniques de cracking de mot de


passe pour obtenir un accès non autorisé au système vulnérable

La plupart des techniques de cracking de mots de passe sont


réussies parce que les mots de passe sont faibles ou faciles à
deviner

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Les attaques de mot de passe non-électroniques

Espionner un
utilisateur (écran,
clavier...)

Convaincre les Espionnage


personnes de révéler Fouiller les corbeilles
À la recherche

dans les poubelles


leur mot de passe
d’informations

Récupération
sensibles

Ingénierie
sociale

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Les attaques on-line

Attaque par dictionnaire : l’outil de crack utilise une liste pré-


établie de mots de passe
Attaque par brute force : on essaie toutes les combinaisons de
caractères jusqu’à trouver le mot de passe
Actives
Attaque basée sur des règles : cette attaque s’appuie sur des
informations connues sur le mot de passe

Attaque utilisant les Chevaux de Troie/Logiciels espion/Keylogger

Les écoutes réseau


Passives
Attaques Man-In-The-Middle et Attaque par Rejeu

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Mots de passe par défaut

• Un mot de passe par défaut est un mot de passe défini en usine pour de nouveaux équipements
• (switches, routers, IoT, produits logiciel sur étagère, etc.) ;
• Les hackers utilisent l’attaque avec des mots de passe par défaut à partir d’une liste de mots ou un
• dictionnaire de mots de passe qui sont utilisés pour une attaque de type « password guessing ».

• http://cirt.net/passwords
• http://default-password.info
• http://www.defaultpassword.us
• http://www.passwordsdatabase.com
• http://open-sez.me
• http://www.routerpasswords.com
• http://www.fortypoundhead.com

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Les attaques offline

Attaque avec une table Rainbow

Attaque réseau distribué (Distributed Network Attack)

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Découverte
des mots de
passe
Génération d’empreintes

ECOLE IT – 5SOA- Année Académique 2023-2024 – © Tous droits réservés


Le hachage de mot de passe

Les hashes de mot de passe ne nous servent pas à grand-chose….

1) En tant qu'utilisateur, il ne vous sera pas demandé d'envoyer un hachage de mot


de passe lors de l'authentification. Le hachage est généré chaque fois qu'un mot
de passe est saisi par un utilisateur ;
2) Le hachage obtenu est ensuite comparé au hachage stocké. Le fait de transmettre
le hachage aurait pour effet de le hacher, de sorte que le hachage résultant de ce calcul
ne correspondrait pas à ce qui a été stocké ;
3) La seule façon de faire correspondre le hachage stocké est d'utiliser le mot de
passe, ou au moins d'utiliser une valeur qui produira le même résultat de hachage.

Lorsqu'il s'agit de déchiffrer des mots de passe, nous essayons d'identifier une valeur
qui générera le hachage cryptographique correspondant.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Salage de mot de passe

Le salage est une technique où une chaîne de caractères aléatoires est ajoutée
au mot de passe avant la génération de son Hash.

Avantage : la technique du salage complexifie le cassage des Hashes pour


retrouver les mots de passe en clair.

Pour le même mot de passe « admin », on a des valeurs de hash MD5 distinctes
avec des sels différents :

123456 : b9d11b3be25f5a1a7dc8ca04cd310b28
regis : b8a98b91d8197ddd4aa56d331b17faf0

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


La table Rainbow

Une table Rainbow est une liste contenant des couples de mots de passe
et leurs hashes pré-calculés

La découverte d’un mot de passe à partir de son hash consiste à trouver


dans la table Rainbow le mot de passe dont le hash correspond au hash à
découvrir

Il est facile de récupérer les mots de passe en comparant les hachages de


mots de passe capturés aux tables pré-calculées

Exemples de hashes avec l’algorithme SHA-1


Beckett2302! 9323aeb8d9ac22b6550218e1c9f664c1741107fd
Rainbow1999$ 1b942ed6164479ac4f7097d78919039e413d0dbe
RegisDeldicque!! 68b6d2dc71b48bd92d28eb82650bbd130091d081

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Générer des tables Rainbow

https://freerainbowtables.com/

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Générer des tables Rainbow

-RainbowCrack est un outil qui permet de casser des mots de passe ;


-RainbowCrack se distingue des programmes utilisant les attaques par force brute
puisqu'il utilise les tables arc-en-ciel pour réduire drastiquement le temps nécessaire
pour casser un mot de passe ;

Les trois outils RainbowCrack pour retrouver un mot de passe sont :


• rtgen : génère les tables Rainbow. Cette étape peut être très lente. Mais une fois ce
• calcul effectué, l’outil de hack est beaucoup plus rapide. Il supporte plusieurs algorithmes
• de hash ;
• rtsort : est utilisé pour trier les tables Rainbow générée par rtgen ;
• rcrack : est utilisé pour rechercher dans les tables Rainbow le hash du mot de passe.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Générer une table Rainbow avec rtgen

La commande rtgen nécessite plusieurs paramètres pour générer un Rainbow table.


Les hashes pris en compte sont LM, NTLM, MD5, SHA-1, SHA-256.

La syntaxe de la commande est :


sudo rtgen hash_algorithm charset plaintext_len_min plaintext_len_max table_index chain_len chain_num part_index

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Générer une table Rainbow avec rtgen

Paramètres Signification
hash_algorithm Type de hachage utilisé pour générer des tables
charset Caractères qui seront utilisés dans le texte clair choisi aléatoirement pour le
hachage
plaintext_len_min Longueur minimale des mots de passe
plaintext_len_max Longueur maximale des mots de passe
table_index Discriminateur de tables
chain_len Nombre de hachages représentés par une seule chaîne. En règle générale,
plus les chaînes sont longues, plus le taux de réussite est élevé
chain_num Nombre de chaînes dans un fichier. En règle générale, plus il y a de
chaînes, plus la couverture de l'espace-clé est importante, mais aussi
l'utilisation du disque et donc le temps d'accès au disque.
part_index Nombre de fichiers à générer : la taille de chaque fichier doit être en
dessous des 2 Go, vous avez la possibilité de créer plus de fichiers.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Types de hashes communs avec rtgen

Type de hash Description Type de hash Description


sha256 SHA256 hashes sha256 SHA256 hashes

sha384 SHA384 hashes sha384 SHA384 hashes

sha512 SHA512 hashes sha512 SHA512 hashes

oracle ORACLE hashes oracle ORACLE hashes

sha1 SHA-1 hashes ciscopix cisco pix firewall


hashes
mysql323 Mysql323 hashes

mysqlsha1 Mysqlsha1 hashes

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Générer une table Rainbow avec Winrtgen

L’outil Winrtgen est similaire à l’outil rtgen mais avec une interface graphique
facilitant sont utilisation sous Windows. Il est possible de générer une RT via
Template de table existant :

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Générer une table Rainbow avec Winrtgen

La création de table se fait ainsi :

Nombre de Nombre de chaînes


Algorithme hachages par table

Index table Nombre


de tables
Longueur min et max
mot de passe

Évaluation du temps pris pour


générer les tables

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Générer une table Rainbow avec Winrtgen

Les charset des tables sont définis dans le fichier charset (ihm charset > edit) :

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Découverte
des mots de
passe
Méthodes et outils

ECOLE IT – 5SOA- Année Académique 2023-2024 – © Tous droits réservés


Méthodes de détermination des mots de passe

Attaque par brute force:


-Méthode la plus simple mais la moins rapide
-Teste toutes les combinaisons possibles de caractères dans une plage
possible et dans un jeu de caractères défini

Attaque par dictionnaire:


-Permet de spécifier un ou plusieurs fichiers texte contenant un mot ou
une expression par ligne considéré comme un mot de passe

Attaque par table Rainbow:


-Utilisation de table Rainbow pour rechercher une correspondance de hash
-Technique très rapide mais il faut une table Rainbow par salage, ce qui
explique son utilisation quasi exclusive pour Windows

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Attaque on-line vs Attaque Off-line

Password Guessing (online):


-Tente de se connecter sur un système cible
-Reste source de fort trafic réseau et de logs Pomme ?
-Peut bloquer les comptes testés Banane ?
Orange ?
-Plus lent qu’un cracking de mot de passe

Password Cracking (offline):


-Découvre des mots de passe à partir de hashes volés
-Réalisé sur la machine de l’attaquant (donc furtif)
Vole de
-Ne bloque pas les comptes testés hashes

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Méthodes de cassage de hash

Force brute: consiste à essayer toutes les combinaisons possibles jusqu'à ce que le bon
hash soit trouvé. Cette approche est très lente et inefficace pour les hachages forts ;

Dictionnaires: utilisation d’une liste de mots de passe couramment utilisés pour essayer
de casser le hash ;

Utilisation de GPU: les processeurs graphiques (GPU) sont souvent utilisés pour
accélérer les attaques par force brute en raison de leur puissance de traitement parallèle ;

Table Rainbow: base de données pré-calculée contenant des correspondances


entre des hachages et des mots de passe possibles. Elle peut accélérer considérablement
le processus de cassage.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Outils off-line

Remarque : le hachage par salage consiste à ajouter une valeur aléatoire (le "sel") au mot de passe
avant de le hacher. Les attaquants doivent alors connaître à la fois le sel et le mot de passe pour
réussir à casser le hachage.

Outils de cassage de hash: John the Ripper, rtgen/rcrack, Hashcat, Ophcrack, Cain & Abel etc...

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


John the Ripper

• John the Ripper (ou JtR, ou John) est un logiciel de cassage de mot de passe les plus
• populaires et utilisé notamment pour tester la sécurité d'un mot de passe ;

• Le programme fonctionne aujourd'hui sous des plateformes telles que Linux, BSD, DOS,
• Win32, BeOS, OpenVMS ;

• John inclut l'autodétection des tables de hachage utilisées par les mots de passe,
• l'implémentation d'un grand nombre d’algorithmes de cassage ;

• JtR supporte plusieurs modes de cracking de mot de passe. Par défaut, les trois modes
• sont exécutés dans cet ordre l'un après l'autre, bien qu'il soit possible de lancer John
• directement dans un des modes :

Mode simple (Single crack) ;

Attaque par dictionnaire (Wordlist) ;

Mode incrémental (Incremental).

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


John the Ripper : mode simple

Mode simple (Single crack) :


john --single <password file>
john -si <password file>

• Dans le mode simple, John effectue quelques transformations sur le nom d'utilisateur,
• pour casser les mots de passes les plus faibles ;

• Pour l'utilisateur toto, il essayerait "ToTo, toto123, ToTo123, etc." ;

• Ce mode est le plus rapide à effectuer, un mot de passe qui serait cassé par cette méthode
• serait un mauvais mot de passe.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


John the Ripper : attaque par dictionnaire

Attaque par dictionnaire (Wordlist) :


john –-wordlist=/usr/share/wordlists/rockyou.txt <password.lst file>
john –w=/usr/share/wordlists/rockyou.txt <password.lst file>

• John essaye un à un tous les mots d'une liste (par défaut, password.lst fournie avec
• contenant plus de 3000 mots) de mots de passe potentiels, en leur appliquant les mêmes
• transformations que dans le mode précédent.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


John the Ripper : mode incrémental

Mode incrémental (Incremental) :


john --incremental <password file>
john -i <password file>
john -i:alpha <password file>
john -i:digit <password file>
john -i:all <password file>

• John va essayer toutes les combinaisons de caractères possibles, jusqu'à trouver le


• mot de passe ;

• Tous les caractères étant testés, ce mode est techniquement infaillible, bien que la
• robustesse du mot de passe influe grandement sur le temps de calcul nécessaire à
• le trouver.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Hashcat

• Hashcat permet entre autres de réaliser une attaque par collision sur des empreintes
• cryptographiques ;

• Le logiciel permet d'utiliser un ou plusieurs CPU et GPU ;

• Hashcat supporte l'ensemble des algorithmes cryptographiques (SHA512,


• HMAC-SHA512, etc.), même ceux considérés comme obsolètes (MD4,MD5,SHA1,etc.) ;

• Hashcat permet de réaliser des attaques de mot de passe telles que :



Attaque par force brute et masque ;

Attaque par dictionnaire ;

Attaque par combinaison ;

Attaque hybride.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Hashcat : attaque par force brute et masque

Force brute et masque :


hashcat -m 0 -a 3 <password.txt> -i --increment-min 6 --increment-max 12
-m 0 : MD5
-a 3 : Brute force
-i : activation du mode masque

• L'attaque par force brute vise à essayer l'ensemble des possibilités lettre par lettre ;
• Cette méthode est de loin la plus longue et la plus gourmande en ressource de calcul.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Hashcat : attaque par dictionnaire

Attaque par dictionnaire :


hashcat -m 0 -a 0 <password.txt> <dictionnaire.txt>
-m 0 : MD5
-a 0 : Straight

• La méthode par dictionnaire vise à essayer l'ensemble des mots présents dans un
• ou plusieurs fichiers en considérant chaque ligne comme un nouveau mot de passe.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Hashcat : attaque par combinaison

Attaque par combinaison:


hashcat -m 0 -a 1 <password.txt> <dico1.txt> <dico2.txt>
-m 0 : MD5
-a 1 : Combination

• L'attaque par combinaison permet de combiner l'ensemble des mots de 2 dictionnaires


• et d'en décliner une nouvelle liste, dans laquelle chaque mot a été concaténé avec
• chaque autre mot présent dans la liste.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Hashcat : attaque hybride

Attaque hybride:
Exemple 1 : hashcat -m 0 -a 6 <password.txt> ?d?d <dictionnaire.txt>
-m 0 : MD5
-a 6 : Hybrid Wordlist + Mask

Exemple 2 : hashcat -m 0 -a 7 <password.txt> ?d?d <dictionnaire.txt>


-m 0 : MD5
-a 7 : Hybrid Mask + Wordlist

• L'attaque hybride permet d'utiliser un dictionnaire et un masque ;


• Il est possible de définir un masque avant le mot qui provient du dictionnaire ou un mot après ;
• Cette attaque est terriblement efficace sur des modèles standardisés de mot de passe.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Outils on-line

Outils: Metasploit, Medusa, Nmap, Thc-Hydra, Patator

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


THC-Hydra

• THC Hydra est un outil de crack de mots de passe online, qui supporte de nombreux
• protocoles ;

• Hydra peut mener des attaques bruteforce à partir de listes de mots de passe ;

• Même si les tests brute force ont en général peu de chance de fonctionner sur un
• système relativement sécurisé, ils sont faciles à mener et peuvent aider à déceler des
• matériels possédant encore leur mot de passe par défaut (routeurs, point d'accès WiFi…) ;

• THC-Hydra supporte de nombreux protocoles tels que les plus connus sont: asterisk
• cisco cobaltstrike cvs firebird ftp[s] http[s] icq imap[s] irc
• ldap mongodb mssql mysql nntp oracle-listener oracle-sid pcanywhere
• pcnfs pop3[s] postgres rdp redis rexec rlogin rsh sip smb smtp[s]
• snmp socks5 ssh sshkey svn telnet[s] vnc ...

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


THC-Hydra : attaque brute force

Attaque brute force:

hydra -l <login> -P <password.txt> -vV <@ip> <service>

-l : login de connexion
-P : fichier de mots de passe
-vV : mode verbose standard / mode verbose avancé
<@ip> : ip du serveur à attaquer
<service> : service à cracker

• Hydra offre 2 modes d’attaques mode Online :



Password guessing (classique) : teste un login avec plusieurs mots de passe ;

Password spray : teste un mot de passe pour plusieurs login (évite le lockout des comptes).

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Règles pour se prémunir des attaques de mots de passe

(1) Ne pas utiliser le même mot de passe


(2) Ne pas partager ses mots de passe
(3) Ne pas utiliser un mot de passe pouvant être trouvé dans un dictionnaire
(4) Échanger sur des flux sécurisés avec des algorithmes de chiffrement forts
(5) Changer de mot de passe périodiquement
(6) Sauvegarder les mots de passe dans un coffre fort électronique (Keepass)
(7) Ne jamais laisser un système avec un mot de passe par défaut

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Règles pour se prémunir des attaques de mots de passe (suite)

(8) Un sel doit préfixer ou suffixer un mot de passe avant la génération de son empreinte
(9) Ne jamais utiliser des informations personnelles facilement identifiables (date
d’anniversaire de ses enfants, nom du chat,…) pour définir un mot de passe
(10) Configurer le système afin de tracer dans les logs toute attaque par brute force des
comptes
(11) Bloquer tout compte utilisateur faisant l’objet de trop nombreuses tentatives de
connexions
(12) Définir un mot de passe de 12 caractères minimum alphabétique/numérique/symbole
(13) Les applications ne doivent pas stocker en mémoire ou sur disque en clair les mots de
passe

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Avenue Alan Turing - 59410 Anzin – France
+33 3 74 01 09 84 - contact@ecole-it.com

www.ecole-it.com

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés

Vous aimerez peut-être aussi