Flexible Security for Your Peace of Mind
Specops Software - an Outpost24 company logo

[Nouvelle étude] À quel point est-il difficile de craquer bcrypt ? Et peut-il garantir la sécurité des mots de passe ?

En début d’année, l’équipe de recherche de Specops partageait des données sur le temps nécessaire aux pirates informatiques pour déchiffrer les mots de passe des utilisateurs en utilisant l’algorithme MD5 et en exploitant des équipements informatiques de pointe. Aujourd’hui, nous nous penchons sur l’évaluation de la robustesse de l’algorithme de hachage bcrypt en exposant ses mots de passe chiffrés à une puissance de calcul équivalente. Cette étude intervient en parallèle à l’intégration de 49 millions de mots de passe compromis dans le service Specops Breached Password Protection.

Différents types d’algorithmes de hachage

Le stockage des mots de passe en texte brut ne devrait jamais être envisagé, car il expose des informations à toute personne non autorisée ayant accès à la base de données. De nos jours, la majorité des systèmes utilisent des algorithmes de hachage pour sécuriser les mots de passe stockés, réduisant ainsi le risque que représente un attaquant qui pourrait accéder à la base de données de mots de passe du système. En raison de la nature unidirectionnelle de ces algorithmes de hachage, la seule manière de retrouver le mot de passe réel à partir de son hachage est de tenter de le deviner à l’aide de techniques de force brute.

Qu’est-ce que bcrypt et comment cela fonctionne-t-il ?

bcrypt a été conçu en 1999 en utilisant l’algorithme de chiffrement Blowfish comme base. Il transforme le mot de passe d’un utilisateur en une chaîne de caractères de longueur fixe au sein d’une fonction de hachage unidirectionnelle, ce qui garantit qu’il ne peut pas être inversé pour retrouver le mot de passe original. Lorsque l’utilisateur se connecte, bcrypt ré-hache le mot de passe et compare cette nouvelle valeur à celle stockée dans la mémoire du système pour vérifier leur correspondance. En cas de mots de passe en texte brut de courte longueur, ce processus peut les étendre pour les rendre plus longs et plus complexes.

Pour renforcer la sécurité, bcrypt incorpore également une valeur aléatoire à chaque hachage de mot de passe, garantissant ainsi son caractère unique et le rendant extrêmement difficile à deviner par des attaques de type dictionnaire ou force brute. Cette technique est appelée “salage“, et le résultat est une chaîne de 22 caractères ajoutée en amont du hachage du mot de passe, ce qui le rend encore plus résistant à la tentative de déchiffrement par force brute. Le salage renforce considérablement la sécurité des mots de passe en les rendant plus impénétrables aux attaques de force brute et de dictionnaire.

De plus, bcrypt se distingue des autres algorithmes de hachage grâce à l’utilisation d’un “facteur de coût“. Ce paramètre indique combien d’itérations de mot de passe ont été effectuées avant que le hachage ne soit généré, et il est ajouté en amont du salage. Le facteur de coût permet de déterminer le nombre d’itérations de mot de passe et de tours de hachage à effectuer, ce qui a pour effet d’augmenter considérablement le temps, les efforts et les ressources de calcul nécessaires pour obtenir la valeur de hachage finale. Cette caractéristique ralentit de manière significative le processus de déchiffrement par force brute.

Le temps requis pour déchiffrer les mots de passe hachés avec bcrypt est significatif. La création d’un hachage bcrypt prend du temps, et il en va de même pour son déchiffrement. Un acteur malveillant peut être amené à abandonner, manquer de puissance de calcul, ou cela peut donner aux équipes de sécurité le temps nécessaire pour détecter une activité suspecte. Même avec des ordinateurs plus puissants, le processus de déchiffrement par force brute de bcrypt reste long en raison du nombre variable d’itérations de mot de passe.

Est-ce que le hachage bcrypt peut empêcher la compromission des mots de passe ?

En bref, non. Bien qu’il offre un moyen de protéger les mots de passe stockés contre les devinettes, HaveIBeenPwned comporte de nombreux exemples où les hachages bcrypt ont été exposés lors de violations de données. Par exemple, en février 2018, l’application de régime et d’exercice MyFitnessPal a subi une violation de données. L’incident a exposé 144 millions d’adresses e-mail uniques ainsi que des noms d’utilisateur, des adresses IP et des mots de passe stockés sous forme de hachages SHA-1 et bcrypt (les premiers pour les comptes plus anciens, les seconds pour les comptes plus récents).Comme le montre le tableau ci-dessous, un algorithme de hachage de mot de passe solide n’a plus de sens une fois qu’un mot de passe a été compromis. Bloquer l’utilisation de mots de passe compromis connus est une partie essentielle de la défense contre les attaques de devinettes de mots de passe.

Noé Mantel, Spécialiste Produit chez Specops commente : “Les attaquants ont généralement tendance à éviter de forcer un algorithme de hachage tel que bcrypt, pour les raisons que nous avons évoquées dans cette recherche. Ils préfèrent cibler des vulnérabilités plus faciles, comme les mots de passe d’Active Directory qui ont déjà été compromis lors de violations de données. L’une des plus grandes menaces pour les organisations réside dans la réutilisation de mots de passe par les utilisateurs. Même si les mots de passe professionnels de vos employés sont stockés de manière sécurisée, dès lors qu’ils les réutilisent sur un site moins sécurisé qui subit une violation de données, les attaquants pourraient potentiellement accéder à votre réseau.”

Le tableau présente les temps nécessaires pour briser des hachages en utilisant une méthode de force brute avec des équipements modernes, en tenant compte des hypothèses suivantes. Cette configuration est identique à celle que nous avons employée pour nos recherches sur le craquage de MD5. Elle est réalisable pour la plupart des acteurs malveillants cherchant à déchiffrer les mots de passe d’une organisation. Cependant, pour obtenir des résultats optimaux, il serait préférable de disposer d’une puissance de calcul supérieure à celle que nous utilisons ici :

Hardware : la Nvidia RTX 4090. À date, il s’agit du matériel le plus rentable généralement disponible pour effectuer des attaques de craquage de mots de passe. Il s’agit d’une carte graphique gaming phare qui peut être achetée par les consommateurs et qui est largement abordable avec un prix de vente conseillé d’environ 1599 dollars. Pour générer ces données, nous utilisons une Nvidia RTX 4090 hypothétique.

Software : Hashcat. En général, une RTX 4090 standard atteindra environ 164 GH/s dans Hashcat (ce qui peut être considéré comme l’équivalent de 164 000 000 000 de tentatives de mot de passe par seconde).

Les hypothèses matérielles ci-dessus peuvent sembler coûteuses, cependant, compte tenu des paiements de rançon dans les millions, les coûts peuvent sembler minimes. Cependant, certains attaquants peuvent trouver des résultats plus rapides et moins chers avec des services cloud.”

“Lorsque nous parlons aux équipes informatiques, elles comprennent généralement les risques de la réutilisation de mots de passe”, poursuit Noé Mantel, “mais il n’est pas toujours facile de convaincre les décideurs de voir ce qui est essentiellement un danger caché. Espérons que ces tableaux de craquage de mots de passe peuvent aider les équipes informatiques à obtenir l’adhésion à la gestion des mots de passe compromis. Il s’agit d’un risque qui ne devrait vraiment pas être négligé dans tout programme de sécurité des mots de passe.”

Détectez les mots de passe compromis dans votre réseau dès aujourd’hui

La mise à jour de ce mois-ci du service Breached Password Protection comprend l’ajout de plus de 21 millions de mots de passe compromi  à la liste utilisée par Specops Password Auditor. Vous pouvez découvrir combien de vos mots de passe sont compromis ou identiques grâce à une analyse en lecture seule de votre Active Directory par Specops Password Auditor. Vous obtiendrez un rapport gratuit et personnalisable relatif aux vulnérabilités liées aux mots de passe, y compris les politiques faibles, les mots de passe compromis et les comptes inactifs ou périmés. Téléchargez votre outil d’audit gratuit ici.

Défense automatisée continue contre les mots de passe compromis

Specops Password Auditor offre un excellent point de départ pour évaluer les risques actuels liés aux mots de passe, mais ce point de départ n’est valable qu’à un instant T. Avec Specops Password Policy et Breached Password Protection, les organisations peuvent se protéger en permanence contre plus de 3 milliards de mots de passe compromis uniques et connus. Ces mots de passe compromis comprennent ceux qui sont utilisés dans des attaques réelles en cours ou qui figurent sur des listes de mots de passe compromis connus, ce qui facilite la mise en conformité avec les réglementations comme celles du NIST ou du NCSC.

Les systèmes de collecte de données de surveillance des attaques de notre équipe de recherche mettent le service à jour quotidiennement et garantissent que les réseaux sont protégés contre les attaques par mot de passe actuellement en cours dans le monde réel. Le service Breached Password Protection bloque ces mots de passe interdits dans Active Directory avec des messages personnalisables à l’intention des utilisateurs finaux, ce qui permet de réduire les appels auprès du helpdesk.

La mise à jour quotidienne de l’API de protection contre les violations de mots de passe, associé à des scans continus de l’utilisation de ces mots de passe dans votre réseau, constitue une défense beaucoup plus complète contre la menace d’une attaque par mot de passe et le risque de réutilisation des mots de passe. Vous souhaitez découvrir comment cela pourrait fonctionner dans votre organisation ? Vous avez des questions sur la manière dont vous pourriez adapter ce système à vos besoins ? Contactez-nous ou découvrez comment cela fonctionne avec une démonstration ou un essai gratuit.

(Dernière mise à jour le 16/11/2023)

Revenir sur le blog