LM
| Fiche express | |
|---|---|
| Type | Format de hachage de mot de passe (Windows) |
| Algorithme | DES (mode ECB) |
| Statut | Obsolète — désactivé par défaut depuis Vista / 7 |
| Successeur | NTLM |
Le LM hash (LAN Manager hash) est l'un des formats historiques utilisés par Windows pour stocker les mots de passe utilisateurs de moins de 15 caractères. Il est aujourd'hui considéré comme faible : sa conception facilite grandement le cassage par force brute ou par rainbow tables.
Comparatif LM / NTLMv1 / NTLMv2
| Attribut | LM | NTLMv1 | NTLMv2 |
|---|---|---|---|
| Mot de passe sensible à la casse | Non | Oui | Oui |
| Longueur de la clé de hash | 56b + 56b | - | - |
| Algorithme de hachage | DES (ECB) | MD4 | MD5 |
| Longueur de la valeur de hash | 64b + 64b | 128 bits | 128 bits |
| Longueur de clé challenge/réponse | 56 + 56 + 16 bits | 56 + 56 + 16 bits | 128 bits |
| Algorithme challenge/réponse | DES (ECB) | DES (ECB) | HMAC-MD5 |
| Longueur de valeur challenge/réponse | 64 + 64 + 64 b | 64 + 64 + 64 b | 128 bits |
Fonctionnement du hachage
Lors du chiffrement d'un mot de passe avec cet algorithme, toutes les lettres sont converties en
majuscules (ex. 123456789AZERTYUIOP). Le mot de passe est ensuite complété par
des caractères blank jusqu'à atteindre 14 caractères.
Avant chiffrement, les 14 caractères sont coupés en deux moitiés de 7 caractères. Chaque moitié est hachée séparément, puis les deux hashs sont concaténés :
123456Q = 6BF11E04FAB197F
WERTY_ = F1E9FFDCC75575B15
HASH = 6BF11E04FAB197FF1E9FFDCC75575B15
Autrement dit :
- Les 8 premiers octets sont dérivés des 7 premiers caractères du mot de passe.
- Les 8 derniers octets sont dérivés des 7 caractères suivants.
Si le mot de passe fait moins de 7 caractères, le second hash vaut toujours :
0xAAD3B435B51404EE
Chiffrement : le hash est chiffré en DES.
Cassage du hash
La faiblesse du LM hash (majuscules forcées, découpage en deux blocs de 7 caractères) réduit drastiquement l'espace de recherche. Des outils comme LC5 exploitent ces propriétés.
Désactivation du LM hash
Sur Windows Vista et Windows 7, le LM hash est désactivé par défaut. Pour le désactiver explicitement :
- Politique de sécurité via
secpol.msc: « Sécurité réseau : ne pas stocker de valeur de hachage LAN Manager… » (NoLMHash). - Clé de registre :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
Ajouter une clé de type NoLMHash
- Utiliser un mot de passe de plus de 15 caractères (au-delà, aucun LM hash n'est calculé).