Nous utilisons des cookies et d’autres technologies sur notre site web pour vous proposer l’ensemble de nos fonctionnalités. Ils peuvent également être mis en place à des fins d’analyse. En continuant à utiliser notre site web, vous acceptez l’utilisation de cookies. Pour plus d’informations, notamment sur la manière de les désactiver, veuillez consulter notre politique de confidentialité.
Comment changer la méthode de hachage des mots de passe dans Active Directory
Table of Contents
Les mots de passe sont généralement associés à tous les aspects de la sécurisation des systèmes informatiques. Dans la plupart des environnements, ils sont protégés à l’aide d’un hachage de mot de passe. La méthode de hachage utilisée peut influencer la vulnérabilité des mots de passe d’une organisation face à un hacker ou en cas de fuite de données contenant des mots de passe hachés. Voyons un aperçu du hachage des mots de passe et pourquoi la méthode de hachage utilisée dans Active Directory est cruciale pour votre environnement.
Qu’est-ce qu’un hachage de mot de passe ?
Prenons un peu de recul et commençons par la forme la plus simple d’enregistrement d’un mot de passe : le texte en clair. Nous connaissons tous les dangers liés au stockage de mots de passe en clair. Un mot de passe en clair est enregistré tel quel, sans aucune transformation des caractères, ce qui le rend lisible et exploitable immédiatement par n’importe qui. Vous vous souvenez peut-être d’un moment où vous avez soulevé un clavier et découvert qu’un collègue avait noté son mot de passe sur un post-it collé dessous. C’est un exemple très basique d’un mot de passe en texte clair.
Les mots de passe en texte en clair peuvent également être stockés de manière numérique. Ils peuvent être visibles sans protection dans un fichier texte, une base de données, un tableur ou tout autre fichier numérique. Lorsqu’un mot de passe est en clair, aucune mesure de sécurité n’empêche quelqu’un de le consulter et de l’utiliser.
Lorsque les mots de passe sont protégés à l’aide d’un hachage, il subit une transformation à sens unique : les caractères d’origine sont convertis en une autre chaîne de caractères, appelée mot de passe haché. Cette transformation repose sur des algorithmes mathématiques qui calculent la valeur hachée à partir de la saisie de l’utilisateur. Il s’agit bien d’un processus irréversible, car il est impossible de “déhacher” ou de retrouver le mot de passe d’origine à partir de sa version hachée.
Lorsqu’un utilisateur saisit son mot de passe pour se connecter, le système génère un hachage à partir de la saisie, puis le compare à la valeur de hachage enregistrée. Cette comparaison est effectuée à l’aide de la même formule mathématique. Si les deux hachages sont identiques, cela signifie que le mot de passe entré est correct. S’ils ne correspondent pas, l’utilisateur a saisi un mot de passe erroné.
Lorsqu’un hacker réussit une attaque et extrait des bases de données ou des fichiers contenant des mots de passe hachés, ces derniers ne sont pas dans leur format d’origine. Le cybercriminel doit alors tenter de retrouver le mot de passe original ayant servi à générer chaque hachage. Comme mentionné précédemment, le hachage transforme les données en une valeur apparemment aléatoire, différente du mot de passe initial. Il est donc crucial de rappeler que le hachage est un processus à sens unique : il transforme le mot de passe en une valeur de hachage, sans possibilité de revenir en arrière.
Bien qu’un hacker ne puisse pas procéder à un “déhachage” d’une valeur hachée, rien ne l’empêche d’essayer différentes combinaisons de mots de passe pour obtenir le même résultat de hachage. Les systèmes utilisant le hachage de mots de passe produisent toujours la même valeur à partir du même mot de passe (même entrée = même sortie). Fort de cette information, un hacker peut formuler des hypothèses ou utiliser des outils automatisés pour tenter de découvrir le mot de passe original ayant généré ce hachage.
Tous les hachages de mots de passe se valent-ils ?
Il existe aujourd’hui de nombreux types d’algorithmes de hachage de mots de passe. Certaines sont clairement plus robustes que d’autres. Pour mieux comprendre les différences entre ces algorithmes, examinons les trois ci-dessous :
- MD5 : Signifie Message Digest et produit un condensé (empreinte) de 128 bits. C’est un algorithme rapide, mais il offre un faible niveau de sécurité pour le hachage de mots de passe. Il suffit d’environ 2^64 opérations à un hacker pour obtenir un hachage identique produit avec MD5.
- Un exemple de mot de passe haché avec MD5 (iloveyou) : 8f3e13ff103d826b03821e53ce7ab05a
- SHA-1 : Signifie Secure Hash Algorithm, avec une taille de condensée de message de 160 bits. SHA-1 est un algorithme plus lent que MD5, mais il offre une meilleure sécurité.
- Un exemple de mot de passe haché avec SHA-1 (iloveyou) : EE8D8728F435FD550F83852AABAB5234CE1DA528
- bcrypt : L’algorithme de hachage bcrypt utilise une technique appelée salting (ou salage) pour calculer la valeur hachée d’un mot de passe. Le salage ajoute des caractères aléatoires aux données initiales fournies par l’utilisateur avant la création du hachage. Bcrypt protège efficacement contre les attaques par rainbow tables (tables arc-en-ciel).
- Un exemple de mot de passe haché avec bcrypt (iloveyou) : $2y$12$nRhqyj7F4XMKotj4GQ5nheExNUnT/Xnne7ithBy3EzM83zbYNM13m
Comparé à MD5 et SHA-1, bcrypt est exponentiellement plus sécurisé en tant qu’algorithme de hachage de mot de passe. La création d’un hachage avec bcrypt est volontairement beaucoup plus lente en raison de l’ajout de salage, ce qui le rend bien plus résistant aux attaques que MD5 ou SHA-1. Cette lenteur, bien que pénalisante pour les cybercriminels, constitue un avantage majeur en matière de sécurité : un hacker tentant de générer des hachages bcrypt pour comparer des mots de passe compromis rencontrera des difficultés nettement plus importantes que face à des hachages MD5 ou SHA-1.
Comme l’a souligné l’expert en sécurité Troy Hunt, les hackers peuvent générer des dizaines de milliards de hachages de mots de passe par seconde lorsqu’il s’agit d’algorithmes comme MD5 ou SHA-1. Bien que bcrypt soit sans conteste bien plus sécurisé, il n’en reste pas moins vulnérable : le hachage exact d’un mot de passe peut toujours, en théorie, être retrouvé, quel que soit l’algorithme utilisé.
Autrement dit, aussi robuste que soit l’algorithme de hachage, la force du mot de passe lui-même reste essentielle. Comme nous l’avons vu, le hachage d’un mot de passe donné reste identique à chaque fois : utiliser un mot de passe faible ou trop courant représente donc un risque, peu importe l’algorithme de hachage.
Les hackers disposant de vastes bases de données de mots de passe compromis possèdent ainsi une véritable mine d’or. Ils peuvent réutiliser ces mots de passe dans des attaques de credential stuffing (ou bourrage d’identifiants) contre différents services en ligne. Ils peuvent aussi les exploiter dans le cadre d’attaques par password spraying (ou pulvérisation de mots de passe), ciblant de nombreux comptes avec quelques mots de passe connus.
La méthode de hachage des mots de passe dans Active Directory
Un autre aspect important à prendre en compte concerne la façon dont Windows gère les mots de passe dans Active Directory, notamment en matière de hachage. Lorsque l’utilisateur choisit un mot de passe de moins de 15 caractères, Windows génère deux types de hachages distincts :
- Hachage LAN Manager (LM hash) : limité à 14 caractères maximum. Tous les caractères sont convertis en majuscules et les mots de passe plus courts sont complétés par des caractères nuls pour atteindre 14 caractères. Cette chaîne est ensuite divisée en deux blocs de 7 octets.
- Hachage Windows NT (NT hash) : une méthode de hachage plus moderne et plus robuste, utilisée par défaut pour stocker les mots de passe dans les systèmes Windows récents.
Ces deux types de hachages sont stockés soit dans la base de données SAM (Security Accounts Manager) locale, soit dans Active Directory. Le hachage LM est bien connu pour sa faiblesse cryptographique. Il est principalement maintenu pour assurer la compatibilité avec d’anciens systèmes d’exploitation, comme Windows 95 ou Windows 98. Toutefois, certains clients macOS dépendent encore du hachage LM pour s’authentifier, ce qui peut provoquer des problèmes d’accès si ce type de hachage est désactivé dans le domaine Active Directory.
- Dans l’Éditeur de Stratégie de Groupe, développez Configuration Ordinateur > Paramètres Windows > Paramètres de Sécurité > Stratégies Locales, puis cliquez sur Options de Sécurité.
- Dans la liste des stratégies disponibles, double-cliquez Sécurité réseau : ne pas stocker la valeur de hachage LAN Manager lors du prochain changement de mot de passe.
- Cliquez sur Activé, puis sur OK.
Microsoft a officiellement désactivé LAN Manager à partir de Windows Server 2008. Toutefois, ce point reste pertinent dans les environnements utilisant encore des versions Windows obsolètes, en raison de la compatibilité avec des applications héritées ou pour d’autres raisons. Vous pouvez en savoir plus sur le hachage LM et sa désactivation en consultant l’article officiel de Microsoft.
Le moyen le plus simple d’éviter le stockage d’un hachage LAN Manager est d’imposer l’utilisation de mots de passe d’au moins 15 caractères. Lorsque des mots de passe de 15 caractères ou plus sont utilisés, Windows génère une valeur de hachage LM inutilisable pour authentifier un utilisateur final.
Identifier les mots de passe faibles ou compromis est essentiel
Quel que soit l’algorithme de hachage utilisé par votre organisation pour ses systèmes critiques, détecter les mots de passe faibles ou compromis est une étape indispensable pour sécuriser votre environnement. Microsoft Active Directory, utilisé par la majorité des entreprises dans le monde pour la gestion des identités, ne dispose pas nativement de fonctions permettant de détecter les mots de passe courants, réutilisés ou compromis.
Disposer des bons outils pour identifier ce type de mots de passe dans votre environnement permet de corriger les failles liées aux mots de passe vulnérables ou compromis avant qu’un hacker ne les exploite. Specops Password Auditor est un outil gratuit qui offre une visibilité sur les mots de passe à risque configurés dans votre environnement Active Directory.

Étant donné qu’aucun algorithme de hachage ne peut vous protéger contre les mots de passe faibles ou faciles à deviner, il est essentiel de les identifier et de les corriger dans votre environnement.
Réflexions finales
Le hachage des mots de passe est une technique couramment utilisée pour les protéger. Cependant, toutes les technologies de hachage ne se valent pas. Comparé aux algorithmes relativement peu sécurisés comme MD5 et SHA-1, le hachage bcrypt offre une bien meilleure protection du mot de passe original. De plus, il est beaucoup plus long à reproduire ou à compromettre. Quel que soit le type de technologie de hachage utilisée, les mots de passe faibles ou trop répandus restent des cibles pour les hackers. Ces derniers s’appuient sur de vastes listes de mots de passe lors d’attaques de password spraying (ou pulvérisation de mots de passe) ou de credential stuffing, où une simple supposition bien placée peut suffire à compromettre un compte.
Les organisations doivent donc s’équiper des bons outils pour détecter les mots de passe faibles ou à risque dans leurs environnements Active Directory. Specops Password Auditor propose un outil performant permettant de repérer un large éventail de mots de passe dangereux utilisés dans Active Directory, ainsi que d’auditer efficacement les politiques de mots de passe en place par rapport aux bonnes pratiques de sécurité.
Découvrez-en plus sur Specops Password Auditor et téléchargez l’outil gratuitement.