Comment faire pour désactiver l'authentification LM sous Windows NT

Traductions disponibles Traductions disponibles
Numéro d'article: 147706 - Voir les produits auxquels s'applique cet article
Ancien nº de publication de cet article : F147706
Cet article peut contenir des liens vers des informations en langue anglaise (pas encore traduites).


IMPORTANT : cet article contient des informations sur la modification du Registre. Avant de modifier le Registre, pensez à le sauvegarder et assurez-vous que vous savez le restaurer en cas de problème. Pour plus d'informations sur la sauvegarde, la restauration et la modification du Registre, cliquez sur le numéro ci-dessous pour afficher l'article correspondant de la Base de connaissances Microsoft.
256986 Description du Registre de Microsoft Windows
Agrandir tout | Réduire tout

Sommaire

Résumé

Avant le Service Pack 4 Windows NT 4.0, Windows NT prenait en charge deux types d'authentification stimulation/réponse :
  • Stimulation/réponse LAN Manager (LM)
  • Stimulation/réponse Windows NT (également appelée stimulation/réponse NTLM)
Windows NT prenait également en charge les mécanismes de sécurité de session qui fournissaient la confidentialité et l'intégrité des messages.

Pour autoriser l'accès aux serveurs qui prennent en charge uniquement l'authentification LM, les clients Windows NT antérieurs au Service Pack 4 utilisaient toujours les deux types, même pour les serveurs Windows NT qui prenaient en charge l'authentification NTLM.

L'authentification LM n'étant pas aussi forte que l'authentification Windows NT, certains clients peuvent souhaiter désactiver son utilisation, car un intrus qui espionne le trafic réseau attaque toujours le protocole le plus faible. Une attaque réussie peut mettre en danger le mot de passe de l'utilisateur.

Microsoft a apporté une amélioration à NTLM appelée NTLMv2, qui améliore considérablement les mécanismes d'authentification et de sécurité de sessions.

De plus, l'implémentation du Fournisseur de services de sécurité (SSP, Service Security Provider) NTLM a été améliorée pour permettre aux clients de contrôler les variantes de NTLM utilisées, et aux serveurs de contrôler les variantes qu'ils acceptent, en définissant une nouvelle clé de Registre adéquate. Elle permet également aux clients et aux serveurs de requérir la négociation de la confidentialité des messages (cryptage), l'intégrité des messages, le cryptage 128 bits et la sécurité de session NTLMv2.

Ces modifications concernent les composants Windows NT suivants : Toute application qui utilise l'appel de procédure distante Microsoft (RPC, Remote Procedure Call) ou le Fournisseur de services de sécurité NTLM, fit appel à l'authentification et à la sécurité de session décrites dans ce document. Les services de station de travail et de serveur utilisent l'authentification, mais prennent en charge leur propre sécurité de session.

Contexte

L'authentification LM n'est pas aussi forte que l'authentification NTLM ou NTLMv2, car l'algorithme autorise l'attaque des mots de passe d'une longueur supérieure à 7 caractères en segments de 7 caractères. Cela limite la force des mots de passe à 7 caractères provenant du jeu de majuscules alphabétiques, numériques et des signes de ponctuation, plus 32 caractères ALT spéciaux. Souvent, les utilisateurs ne se servent pas de caractères autres qu'alphabétiques.

L'authentification NTLM, quant à elle, tire parti des 14 caractères du mot de passe et autorise les minuscules. Par conséquent, même si un intrus espionnant le protocole d'authentification Windows NT peut l'attaquer de la même façon que le protocole d'authentification LM, l'attaque mettra plus de temps à réussir. Si le mot de passe est assez fort, il faudra à un seul ordinateur Pentium Pro 200 MHz en moyenne 2 200 ans pour trouver les clés dérivées et 5 500 ans pour trouver le mot de passe (soit 2,2 ans et 5,5 ans avec 1 000 ordinateurs, et ainsi de suite).

REMARQUE : Cette estimation s'appuie sur la vitesse à laquelle le code de RSA Laboratories « DES Challenge » teste les clés DES sur un Pentium Pro 200 MHz : 1 000 000/seconde ; et le nombre de clés DES : 2**56 ou 7,2*10**16. Pour plus d'informations sur « DES Challenge », consultez le site Web (en anglais) à l'adresse suivante :
http://www.rsasecurity.com/
En revanche, si un mot de passe n'est pas assez fort, une recherche dans un dictionnaire peut le trouver en quelques secondes.

Il est possible d'obtenir un mot de passe « assez fort » en faisant en sorte qu'il compte au moins 11 caractères, 4 au moins de ces caractères étant des majuscules, des chiffres ou des signes de ponctuation. Même si les 7 caractères restants sont du texte en minuscules à caractère aléatoire faible avec (par exemple) 3 bits de caractère aléatoire par caractère, cela donne plus de 7,2*10**16 combinaisons possibles de l'espace de clé DES, et le mot de passe ne se trouve pas dans les dictionnaires.

Toutefois, il existe des accélérateurs matériels coûtant environ 200 000 ?, capables de trouver la clé dérivée d'un mot de passe LM ou NTLM en 3 à 6 jours, quelle que soit la longueur du mot de passe. Ces nombres changent à mesure que la technologie s'améliore. Pour plus d'informations sur les statistiques actuelles, reportez-vous au site Web (en anglais) à l'adresse suivante :
http://www.eff.org/
Le fait de détenir la clé dérivée du mot de passe d'un utilisateur ne permet pas à un intrus de se connecter de manière interactive mais, grâce à un logiciel spécial, suffit pour accéder aux ressources réseau comme s'il était cet utilisateur.

Dans le cas de NTLMv2, l'espace de clé pour les clés dérivées d'un mot de passe est de 128 bits. Cela rend impossible une recherche brutale, même avec les accélérateurs matériels, si le mot de passe est assez fort.

Si client et le serveur utilisent tous deux le Service Pack 4, la sécurité de session NTLMv2 améliorée est négociée. Elle fournit des clés séparées pour l'intégrité et la confidentialité des messages, et une entrée cliente dans la stimulation pour empêcher des attaques de texte brut choisies et utilise l'algorithme HMAC-MD5 (voir le document RFC 2104) pour le contrôle d'intégrité des messages.

La variante datagramme de NTLM n'ayant pas d'étape de négociation, l'utilisation d'options négociées autrement, telles que la sécurité de session NTLMv2 et le cryptage 128 bits pour la confidentialité des messages, doit être configurée.

Plus d'informations

AVERTISSEMENT : toute mauvaise utilisation de l'Éditeur du Registre peut générer des problèmes sérieux, pouvant vous obliger à réinstaller votre système d'exploitation. Microsoft ne peut pas garantir que les problèmes résultant d'une mauvaise utilisation de l'Éditeur du Registre puissent être résolus. Vous assumez l'ensemble des risques liés à l'utilisation de cet outil.


Le contrôle de sécurité NTLM se fait par le biais de la clé de Registre suivante :
HKEY_LOCAL_MACHINE\System\CurrentControlSet\control\LSA
REMARQUE : Sous Win9x, la clé de Registre valide est LMCompatibility, alors que sous Windows NT il s'agit de LMCompatibilityLevel.

Le choix des variantes de protocole d'authentification utilisées et acceptées se fait par le biais de la valeur suivante de cette clé :
   Valeur : LMCompatibilityLevel
   Type de valeur : REG_DWORD - Nombre
   Valeurs possibles : 0-5
   Par défaut : 0
   Description : Ce paramètre spécifie le type d'authentification à
   utiliser.

   Niveau 0 - Envoyer la réponse LM et la réponse NTLM ; ne jamais utiliser la sécurité de session
             NTLMv2
   Niveau 1 - Utiliser la sécurité de session NTLMv2 si négociée
   Niveau 2 - Envoyer uniquement l'authentification NTLM
   Niveau 3 - Envoyer uniquement l'authentification NTLMv2 
   Niveau 4 - Le contrôleur de domaine refuse l'authentification LM
   Niveau 5 - Le contrôleur de domaine refuse l'authentification LM et NTLM (accepte uniquement NTLMv2)
				
REMARQUE : L'authentification sert à établir une session (nom d'utilisateur/mot de passe). La sécurité de session est utilisée une fois qu'une session est établie à l'aide du type adéquat d'authentification. De plus, les heures système doivent se situer à 30 min d'intervalle les unes des autres. L'authentification peut échouer si le serveur pense que la stimulation du client a expiré.

Le contrôle sur la sécurité minimale négociée pour les applications utilisant NTLMSSP se fait par le biais de la clé suivante :
HKEY_LOCAL_MACHINE\System\CurrentControlSet\control\LSA\MSV1_0
Les valeurs suivantes correspondent à cette clé :
   Valeur : NtlmMinClientSec
   Type de valeur : REG_DWORD - Nombre
   Valeurs possibles : le « ou » logique de chacune des valeurs suivantes :
      0x00000010
      0x00000020
      0x00080000
      0x20000000
   Par défaut : 0

   Valeur : NtlmMinServerSec
   Type de valeur : REG_DWORD - Nombre
   Valeurs possibles : les mêmes que NtlmMinClientSec
   Par défaut : 0
   Description : Ce paramètre spécifie la sécurité minimale à utiliser.
      0x00000010  Intégrité de message
      0x00000020  Confidentialité de message
      0x00080000  Sécurité de session NTLMv2
      0x20000000  Cryptage 128 bits
				

LMCompatibilityLevel - Clients

IMPORTANT : Pour qu'un client Service Pack 4 choisisse le niveau 3 ou supérieur, les contrôleurs de domaine pour les domaines de compte de l'utilisateur de tous les utilisateurs qui utiliseront le client (ci-après, les « contrôleurs de domaine des utilisateurs ») DOIVENT être mis à niveau au Service Pack 4.

Si un client Service Pack 4 choisit le niveau 0, qui est la valeur par défaut, il interagit avec les serveurs antérieurs de la même manière qu'avec le Service Pack 3.

Si un client Service Pack 4 choisit le niveau 1, il interagit avec les serveurs antérieurs de la même manière qu'avec le Service Pack 3. De plus, il négocie la sécurité de session NTLMv2 avec les serveurs Service Pack 4.

IMPORTANT : Lors de l'utilisation du niveau 1 ou supérieur, si la dernière modification du mot de passe provient d'un client Windows pour Workgroups ou MS-DOS LanManager 2.x ou version antérieure, les données nécessaires à l'authentification NTLM et NTLMv2 ne sont pas disponibles sur le contrôleur de domaine, et les clients Service Pack 4 ne parviennent pas à se connecter aux serveurs Service Pack 4. La solution de contournement consiste à utiliser le niveau 0, ou à toujours modifier les mots de passe provenant d'un client Windows NT, Windows 95 ou Windows 98.

Si un client Service Pack 4 choisit le niveau 2, il ne peut pas se connecter aux serveurs qui prennent en charge uniquement l'authentification LM, comme Windows 95, Windows 98, Windows pour Workgroups et les versions antérieures (ci-après appelés « clients/serveurs LM de niveau inférieur »), à moins que les contrôleurs de domaine des utilisateurs aient été mis à niveau.

Si un client Service Pack 4 choisit le niveau 3 ou supérieur, il envoie toujours la nouvelle réponse NTLMv2. Cette réponse peut passer par des serveurs LM de niveau inférieur et Service Pack 3 ou par des serveurs Windows NT de version antérieure et leurs contrôleurs de domaine, si les contrôleurs de domaine des utilisateurs ont été mis à niveau au Service Pack 4. Par exemple, si un client Service Pack 4 choisit le niveau 3 ou supérieur, les contrôleurs de domaine des utilisateurs DOIVENT être mis à niveau au Service Pack 4. Toutefois, cette réponse ne fonctionne pas avec les serveurs LM de niveau inférieur dans le mode de sécurité de niveau partage avec des mots de passe non Null. La solution de contournement consiste à les configurer pour utiliser la sécurité de niveau utilisateur.

LMCompatibilityLevel - Serveurs/Contrôleurs de domaine

Si un serveur Service Pack 4 choisit le niveau 4 ou supérieur, un utilisateur avec un compte local sur ce serveur ne peut pas s'y connecter à partir d'un client LM de niveau inférieur à l'aide de ce compte local.

Si un contrôleur de domaine Service Pack 4 choisit le niveau 4 ou supérieur, un utilisateur avec un compte dans ce domaine ne peut pas se connecter à un serveur membre d'un client LM de niveau inférieur qui utilise son compte de domaine. Par conséquent, le niveau 4 signifie que tous les utilisateurs dotés de comptes sur un serveur ou un domaine doivent utiliser Windows NT pour se connecter.

Si un serveur Service Pack 4 choisit le niveau 5 ou supérieur, un utilisateur avec un compte local sur ce serveur ne peut pas s'y connecter à partir d'un client Service Pack 3 ou Windows NT d'une version antérieure à l'aide de ce compte local.

Les clients Service Pack 4 choisissant le niveau 0 ou 1 peuvent toujours se connecter aux serveurs Service Pack 4, même si les niveaux 1 ou 3 sont configurés, mais en utilisant le protocole Windows NT et le protocole LM plus faibles. Ils peuvent également se connecter aux serveurs LM de niveau inférieur, même si les contrôleurs de domaine des utilisateurs n'ont pas été mis à niveau.

Déploiement

Sur la base des considérations ci-dessus, s'il est préférable de déployer NTLMv2, les étapes suivantes doivent être respectées :
  1. Mettez à niveau les contrôleurs de domaine où sont stockés les comptes de tous les utilisateurs devant utiliser NTLMv2.
  2. Même avant la fin de la mise à niveau des contrôleurs de domaine, les clients et les serveurs peuvent être mis à niveau au Service Pack 4. La sécurité est améliorée lors de la connexion du Service Pack 4 au Service Pack 4 par la définition du niveau 1.
  3. À la fin de l'étape 1, les systèmes individuels déjà été mis à niveau au Service Pack 4 peuvent commencer à définir le niveau 3 ou supérieur.
  4. Si les utilisateurs dans certains domaines de compte n'ont jamais besoin d'accéder aux ressources provenant de clients LM de niveau inférieur, le niveau des contrôleurs de ce domaine peut être défini à 4, et une fois que tous les systèmes de ces utilisateurs ont été mis à niveau au Service Pack 4, le niveau des contrôleurs de ce domaine peut être défini à 5.

NtlmMinClientSec et NtlmMinServerSec

Si le bit dont la valeur est 0x00000010 est défini dans la valeur NtlmMinClientSec ou NtlmMinServerSec, la connexion échoue si l'intégrité des messages n'est pas négociée.

Si le bit dont la valeur est 0x00000020 est défini dans la valeur NtlmMinClientSec ou NtlmMinServerSec, la connexion échoue si la confidentialité des messages n'est pas négociée.

Si le bit dont la valeur est 0x00080000 est défini dans la valeur NtlmMinClientSec ou NtlmMinServerSec, la connexion échoue si la sécurité de session NTLMv2 n'est pas négociée.

Si le bit dont la valeur est 0x20000000 est défini dans la valeur NtlmMinClientSec ou NtlmMinServerSec, la connexion échoue si le cryptage 128 bits n'est pas négocié.

REMARQUE : Ces paramètres ne garantissent pas que le Fournisseur de services de sécurité NTLM est utilisé par toutes les applications, ni que l'intégrité ou la confidentialité des messages est utilisée par une application, même lorsqu'elle est négociée.

Résolution

Pour résoudre ce problème, obtenez le Service Pack le plus récent pour Windows NT 4.0 ou Windows NT Server 4.0, Édition Terminal Server. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant de la Base de connaissances Microsoft.
152734 Comment faire pour obtenir le dernier Service Pack Windows NT 4.0



Après avoir installé le Service Pack 4, exécutez les étapes suivantes pour configurer le niveau de compatibilité LM sur les stations de travail et les serveurs Windows NT :
  1. Exécutez l'Éditeur du Registre (Regedt32.exe).
  2. À partir de la sous-arborescence HKEY_LOCAL_MACHINE, accédez à la clé suivante :
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\
  3. Dans le menu Edition, cliquez sur Ajouter une valeur.
  4. Ajoutez les valeurs suivantes :
          Nom de la valeur : LMCompatibilityLevel
          Type de données : REG_DWORD
          Données :  0 (valeur par défaut) à 5 comme défini ci-dessus
    					
  5. À partir de la sous-arborescence HKEY_LOCAL_MACHINE, accédez à la clé suivante :
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
  6. Dans le menu Edition, cliquez sur Ajouter une valeur.
  7. Ajoutez les valeurs suivantes :
          Nom de la valeur : NtlmMinClientSec
          Type de données : REG_DWORD
          Données :  0 (valeur par défaut) ou comme défini ci-dessus
    
          Nom de la valeur : NtlmMinServerSec
          Type de données : REG_DWORD
          Données :  0 (valeur par défaut) ou comme défini ci-dessus
    					
  8. Cliquez sur OK, puis quittez l'Éditeur du Registre.
  9. Fermez et redémarrez Windows NT.

Propriétés

Numéro d'article: 147706 - Dernière mise à jour: mardi 22 novembre 2005 - Version: 3.2
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Windows NT Server 4.0 Terminal Server
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Édition Développeur
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft LAN Manager 4.2 Standard Edition
  • Microsoft Windows for Workgroups 3.2
  • Microsoft Windows 95
Mots-clés : 
kbhotfixserver kbqfe kbbug kberrmsg kbfea kbfile kbfix KB147706
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com