Cet article examine comment les cyberattaquants d'aujourd'hui tentent de déchiffrer les mots de passe hachés, explore les algorithmes de hachage courants et leurs limites, et présente les mesures que vous pouvez adopter afin de protéger vos mots de passe hachés, quel que soit l'algorithme que vous utilisez.

Techniques modernes de craquage de mots de passe

Les acteurs malveillants disposent d'un large éventail d'outils et de méthodes pour déchiffrer les mots de passe hachés. Parmi les méthodes les plus utilisées, on peut citer les attaques par force brute, les attaques par dictionnaire de mots de passe, les attaques hybrides et les attaques par masque.

Les attaques par force brute

Une attaque par force brute implique des tentatives d'essais et d'erreurs excessives et obstinées pour obtenir l'accès à un compte. Les acteurs malveillants utilisent des outils spécialisés pour tester systématiquement des variantes de mots de passe jusqu'à ce qu'une combinaison efficace soit découverte. Bien que peu sophistiquées, les attaques par force brute sont très efficaces si l'on utilise des logiciels de craquage de mots de passe et du matériel informatique très puissant comme les unités de traitement graphique (GPU). 

Les attaques de mots de passe par dictionnaire

Comme son nom l'indique, une attaque par dictionnaire extrait systématiquement des mots d'un dictionnaire pour forcer brutalement les variations de mot de passe jusqu'à trouver une combinaison qui fonctionne. Le contenu du dictionnaire peut contenir tous les mots courants, des listes de mots spécifiques, des combinaisons de mots, ainsi que des dérivés et des permutations de mots ( avec des caractères alphanumériques et non alphanumériques (par exemple en remplaçant un « a » par un « @ »). Les attaques par dictionnaire peuvent également contenir des mots de passe ou des phrases clés précédemment divulgués lors de compromissions de données.

Les attaques hybrides

Une attaque hybride de mot de passe combine la force brute et les méthodes basées sur le dictionnaire afin d'améliorer l'agilité et l'efficacité de l'attaque. Par exemple, un acteur malveillant peut utiliser une liste de mots de dictionnaire d'informations d'identification couramment utilisées avec des techniques qui intègrent des combinaisons numériques et de caractères non alphanumériques .

Les attaques par masque

Dans certains cas, les acteurs malveillants peuvent avoir connaissance de modèles de mots de passe ou de paramètres/exigences spécifiques. Cette connaissance leur permet d'utiliser des attaques par masque et ainsi réduire le nombre d'itérations et de tentatives dans leurs efforts de piratage. Les attaques par masque utilisent la force brute pour vérifier les tentatives de mots de passe qui correspondent à un modèle spécifique (par exemple, huit caractères, commençant par une lettre majuscule et se terminant par un chiffre ou un caractère spécial).

Comment les algorithmes de hachage protègent contre les méthodes de craquage

Les algorithmes de hachage sont un pilier d'une myriade d'applications de sécurité, du contrôle de l'intégrité des fichiers aux signatures numériques en passant par le stockage des mots de passe. Bien qu'il ne s'agisse pas d'une méthode de sécurité infaillible, le hachage est nettement préférable au stockage des mots de passe en texte brut. Avec les mots de passe hachés, vous pouvez être assurés que si des cyber-attaquants accèdent aux bases de données de mots de passe, ils ne pourront pas facilement les lire ou les exploiter.

De par sa conception, le hachage entrave considérablement la capacité d'un attaquant à déchiffrer des mots de passe. Il joue un rôle dissuasif essentiel en rendant le déchiffrage de mots de passe si gourmand en temps et en ressources que les attaquants risquent de se tourner vers des cibles plus faciles à atteindre.

Les pirates informatiques peuvent-ils décrypter les algorithmes de hachage ?

Les algorithmes de hachage étant des fonctions à sens unique, la seule méthode permettant de compromettre les mots de passe hachés consiste à utiliser des techniques de force brute. Les cyberattaquants utilisent du matériel spécial comme les GPU et des logiciels de craquage (par exemple : Hashcat, L0phtcrack, John The Ripper) pour exécuter des attaques par force brute à grande échelle - généralement des millions, des milliards ou des combinaisons à la fois.

Même avec ces outils sophistiqués conçus à cet effet, les temps de craquage des mots de passe peuvent varier considérablement en fonction de l'algorithme de hachage utilisé et de la combinaison longueur/caractère du mot de passe. Par exemple, les mots de passe longs et complexes peuvent nécessiter des milliers d'années pour être déchiffrés, tandis que les mots de passe courts et simples peuvent être déchiffrés immédiatement.

Les benchmarks de piratage suivants ont tous été trouvés par les chercheurs de Specops sur un GPU Nvidia RTX 4090 et utilisaient le logiciel Hashcat.

MD5

Autrefois considéré comme un algorithme de hachage de qualité industrielle, MD5 est aujourd'hui considéré comme un algorithme cryptographique déficient en raison de ses diverses failles de sécurité ; cela dit, il reste l'un des algorithmes de hachage  les plus largement utilisés. Par exemple, le célèbre CMS Wordpress utilise toujours MD5 par défaut ; cela représente environ  43,7% des  sites web alimentés par un CMS.

Grâce aux GPU et aux logiciels de craquage facilement disponibles, les attaquants peuvent déchiffrer instantanément des mots de passe numériques de 13 caractères ou moins sécurisés, par le hachage 128 bits de MD5 ; en revanche, un mot de passe de 11 caractères composé de chiffres, de caractères majuscules/minuscules et de symboles demanderait 26 500 ans avant d'être craqué. 

SHA256

L' algorithme de hachage SHA256 appartient au groupe de fonctions de hachage Secure Hash Algorithm 2 (SHA-2) conçu par la National Security Agency (NSA) et publié par le National Institute of Standards and Technology (NIST). En tant que mise à jour de l'algorithme défectueux SHA-1, SHA256 est considéré comme un algorithme robuste et hautement sécurisé adapté aux exigences de sécurité actuelles. 

Lorsqu'il est utilisé avec des mots de passe longs et complexes, SHA256 est quasiment impénétrable par des méthodes de force brute. 2 052 ans sont nécessaires pour craquer un mot de passe SHA256 de 11 caractères composé de chiffres, de majuscules, de minuscules et de symboles à l'aide de GPU et de logiciels de craquage. Cependant, les attaquants sont capables de déchiffrer instantanément des mots de passe SHA256 à neuf caractères, composés uniquement de caractères numériques ou minuscules.

Bcrypt

Les experts en sécurité considèrent que SHA256 et bcrypt sont des algorithmes de hachage suffisamment puissants pour les applications de sécurité modernes. Cependant, contrairement à SHA256, bcrypt renforce son mécanisme de hachage en utilisant le salage - c'est-à-dire en ajoutant un élément de données aléatoire à chaque hachage de mot de passe pour en garantir l'unicité - bcrypt rend ainsi les mots de passe très résistants aux tentatives d'attaques par dictionnaire ou force brute. De plus, bcrypt utilise un facteur de coût qui détermine le nombre d’itérations nécessaires à l’exécution de l’algorithme. 

Cette combinaison de sel et de factorisation des coûts rend bcrypt extrêmement résistant aux attaques par dictionnaire et par force brute. Un cyber-attaquant utilisant des GPU et des logiciels de craquage mettrait 27 154 ans pour craquer un mot de passe de huit caractères composé de chiffres, de lettres majuscules et minuscules et de symboles hachés par bcrypt. Cependant, les mots de passe bcrypt de moins de huit caractères, numériques ou en minuscules uniquement, sont faciles à déchiffrer, et leur compromission prend entre quelques heures et quelques secondes.

Comment les pirates informatiques contournent-ils les algorithmes de hachage ?

Quel que soit l'algorithme de hachage, la vulnérabilité partagée réside dans l'utilisation de mots de passe courts et simples. Les mots de passe longs et complexes qui intègrent des chiffres, des lettres majuscules et minuscules et des symboles constituent la formule idéale pour la solidité et la résilience des mots de passe. Cependant, la réutilisation des mots de passe reste un problème important ; un seul mot de passe partagé, aussi fort soit-il, stocké en texte brut sur un site web ou un service mal sécurisé, peut donner à des cyber-attaquants, l'accès  à des comptes sensibles. 

Par conséquent, les cyberattaquants sont plus susceptibles d'obtenir des informations d'identification et des listes de mots de passe sur le dark web plutôt que d'essayer de déchiffrer des mots de passe longs et complexes sécurisés par des algorithmes de hachage modernes. Craquer un long mot de passe haché avec bcrypt est pratiquement impossible, même avec du matériel et des logiciels spécialisés. Mais craquer un mot de passe compromis connu est instantané.

Afin de protéger votre organisation contre les compromissions de mots de passe, Specops Password Policy scanne continuellement votre Active Directory et le confronte à une base de données croissante de plus de 4 milliards de mots de passe uniques compromis. Contactez-nous pour un essai gratuit.