Cómo deshabilitar la autenticación LM en Windows NT

Seleccione idioma Seleccione idioma
Id. de artículo: 147706 - Ver los productos a los que se aplica este artículo


IMPORTANTE
Este artículo contiene información sobre cómo modificar el Registro. Antes de modificar el Registro, asegúrese de hacer una copia de seguridad de él y de que sabe cómo restaurarlo si ocurre algún problema. Para obtener información sobre cómo realizar una copia de seguridad, restaurar y modificar el Registro, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
256986 Definición del Registro de Microsoft Windows
Expandir todo | Contraer todo

En esta página

Resumen

Antes de Windows NT 4.0 Service Pack 4 (SP4), Windows NT admitía dos tipos de autenticación por desafío y respuesta:
  • Desafío/respuesta de LanManager (LM)
  • Desafío/respuesta de Windows NT (también se conoce como desafío/respuesta NTLM)
Windows NT también admitía mecanismos de seguridad de sesión que aportaban confidencialidad e integridad a los mensajes.

Para permitir el acceso a los servidores que sólo admiten la autenticación LM, los clientes de Windows NT anterior a SP4 siempre utilizan ambos tipos de autenticación, incluso en el caso de los servidores de Windows NT que admitían la autenticación NTLM.

La autenticación LM no es tan firme como la autenticación de Windows NT, por lo que algunos clientes pueden desear deshabilitar su uso porque el espionaje del tráfico de red atacará el protocolo más débil. Un ataque eficaz puede poner en peligro la contraseña del usuario.

Microsoft ha desarrollado una mejora de NTLM denominada NTLMv2 que mejora de manera significativa la autenticación y los mecanismos de seguridad de sesión.

Además, se ha mejorado la implementación del proveedor de servicios de seguridad (SSP) NTLM para que los clientes puedan controlar qué variantes de NTLM van a utilizar y para que los servidores puedan controlar qué variantes van a aceptar, estableciendo de manera adecuada una nueva clave del Registro. También permite a los clientes y servidores requerir la negociación de la confidencialidad de los mensajes (cifrado), la integridad de los mensajes, el cifrado de 128 bits y la seguridad de sesión NTLMv2.

Estos cambios afectan a los siguientes componentes de Windows NT: cualquier aplicación que use la llamada a procedimiento remoto (RPC) de Microsoft o use el proveedor SSP NTLM, utiliza la autenticación y la seguridad de sesión que se describen en el presente artículo. Los servicios de la estación de trabajo y del servidor utilizan la autenticación pero admiten su propia seguridad de sesión.

Antecedentes

La autenticación LM no es tan firme como la autenticación NTLM o NTLMv2 porque el algoritmo permite ataques a las contraseñas de más de 7 caracteres en fragmentos de 7 caracteres. Esto limita la longitud de una contraseña eficaz a 7 caracteres del conjunto de caracteres mayúsculas alfabéticos, numéricos y de puntuación, más 32 caracteres ALT especiales. A menudo, los usuarios sólo se sirven de los caracteres alfabéticos.

Por el contrario, la autenticación NTLM aprovecha íntegramente los 14 caracteres de la contraseña y permite el uso de minúsculas. Por consiguiente, incluso si el espionaje en el protocolo de autenticación de Windows NT ataca de la misma manera que en el caso del protocolo de autenticación LM, el ataque tardará bastante más tiempo en llevarse a cabo. Si la contraseña es suficientemente eficaz, un solo equipo Pentium Pro de 200 MHz tardará una media de 2.200 años en determinar las claves derivadas de la misma y unos 5.500 años en determinar la propia contraseña (o bien, 2,2 años y 5,5 años con 1.000 equipos de esas características, etc.)

NOTA
Esta estimación se basa en la velocidad a la que el código del reciente "Desafío DES" de la compañía RSA comprueba las claves DES en un equipo Pentium Pro de 200 MHz: 1.000.000/segundo; y el número de claves DES: 2**56 ó 7,2*10**16. Para obtener más información sobre el "Desafío DES", vea el siguiente sitio Web:
http://www.rsasecurity.com/
Por otra parte, si una contraseña no es suficientemente eficaz, una búsqueda mediante diccionario puede determinarla en cuestión de segundos.

Una posible manera de obtener una "contraseña eficaz" consiste en darle una longitud mínima de 11 caracteres, con al menos 4 caracteres mayúsculas, numéricos o de puntuación. Incluso si los 7 caracteres restantes son minúsculas de baja aleatoriedad con 3 bits de aleatoriedad por carácter, esto dará lugar a un número de posibles combinaciones mayor que el valor 7,2*10**16 de las claves DES y la contraseña no figurará en los diccionarios.

No obstante, se han creado aceleradores de hardware que cuestan 250.000 dólares americanos y que son capaces de determinar la clave derivada de la contraseña LM o NTLM en 3 a 6 días, independientemente de la longitud de la contraseña. Estos números cambiarán a medida que vaya mejorando la tecnología. Para obtener números actuales e información detallada, visite el siguiente sitio Web:
http://www.eff.org/
Si un atacante dispone de la clave derivada de la contraseña de un usuario, esto no significa que pueda conectarse de manera interactiva pero, con software especial, es suficiente para que pueda obtener acceso a los recursos de red como dicho usuario.

En el caso de NTLMv2, el espacio para las claves derivadas de contraseñas es de 128 bits. Esto hace que sea imposible realizar búsquedas, incluso con aceleradores de hardware, si la contraseña es suficientemente eficaz.

Si tanto el cliente como el servidor usan SP4, se negocia la seguridad de sesión NTLMv2 mejorada. Proporciona claves separadas para la integridad y la confidencialidad de los mensajes, permite especificaciones por parte del cliente en el desafío para evitar los ataques de texto sin formato seleccionados y usa el logaritmo HMAC-MD5 (vea RFC 2104) para comprobar la integridad de los mensajes.

Dado que la variante de datagrama de NTLM no tiene un paso de negociación, es preciso configurar el uso de opciones que se negocian de otro modo, como la seguridad de sesión NTLMv2 y el cifrado de 128 bits para la confidencialidad de los mensajes.

Más información

ADVERTENCIA
Si utiliza incorrectamente el Editor del Registro, puede causar serios problemas que tal vez requieran volver a instalar el sistema operativo. Microsoft no garantiza que pueda solucionar problemas que resulten del uso incorrecto del Editor del Registro. Utilice el Editor del Registro bajo su responsabilidad.


La seguridad de NTLM se controla a través de la siguiente clave del Registro:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\control\LSA
NOTA
En Win9x, la clave del Registro válida es LMCompatibility mientras que en Windows NT es LMCompatibilityLevel.

La selección de las variantes del protocolo de autenticación utilizadas y aceptadas se realiza a través del siguiente valor de dicha clave:
   Value: LMCompatibilityLevel
   Value Type: REG_DWORD - Number
   Valid Range: 0-5
   Default: 0
   Description: This parameter specifies the type of authentication to be
   used.

   Level 0 - Send LM response and NTLM response; never use NTLMv2 session
             security
   Level 1 - Use NTLMv2 session security if negotiated
   Level 2 - Send NTLM authenication only
   Level 3 - Send NTLMv2 authentication  only
   Level 4 - DC refuses LM authentication
   Level 5 - DC refuses LM and NTLM authenication (accepts only NTLMv2)
				
NOTA
La autenticación se utiliza para establecer una sesión (nombre de usuario/contraseña). La seguridad de sesión se utiliza una vez establecida una sesión mediante el tipo de autenticación apropiado. Además, las horas del sistema no pueden tener una diferencia de más de 30 minutos. La autenticación puede generar un error porque el servidor creerá que el desafío del cliente ha caducado.

El control de la seguridad mínima negociada para las aplicaciones que utilizan NTLMSSP se realiza a través de la siguiente clave:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\control\LSA\MSV1_0
Los valores de esta clave son:
   Value: NtlmMinClientSec
   Value Type: REG_DWORD - Number
   Valid Range: the logical 'or' of any of the following values:
      0x00000010
      0x00000020
      0x00080000
      0x20000000
   Default: 0

   Value: NtlmMinServerSec
   Value Type: REG_DWORD - Number
   Valid Range: same as NtlmMinClientSec
   Default: 0
   Description: This parameter specifies the minimum security to be used.
      0x00000010  Message integrity
      0x00000020  Message confidentiality
      0x00080000  NTLMv2 session security
      0x20000000  128 bit encryption
				

LMCompatibilityLevel - Clientes

IMPORTANTE
Para que un cliente de SP4 pueda elegir el nivel 3 o mayor, los controladores de dominio correspondientes a los dominios de cuenta de todos los usuarios que usen el cliente (de ahora en adelante, "los controladores de dominio de los usuarios") DEBEN haberse actualizado a SP4.

Si un cliente de SP4 elige el nivel 0, que es el valor predeterminado, interoperará con los servidores anteriores de la misma manera que con Service Pack 3 (SP3).

Si un cliente de SP4 elige el nivel 1, interoperará con los servidores anteriores de la misma manera que con Service Pack 3 (SP3). Además, negociará la seguridad de sesión NTLMv2 con los servidores de SP4.

IMPORTANTE
Cuando se usa el nivel 1 o mayor, si el último cambio de contraseña viniera de un cliente de Windows para Trabajo en Grupo o de LanManager 2.x o anterior en MS-DOS, los datos requeridos para la autenticación NTLM y NTLMv2 no estarán disponibles en el controlador de dominio y los clientes de SP4 no podrán conectarse a los servidores de SP4. La solución temporal consiste en usar el nivel 0 o cambiar siempre las contraseñas de un cliente de Windows NT, Windows 95 o Windows 98.

Si un cliente de SP4 elige el nivel 2, no podrá conectarse a los servidores que sólo admitan la autenticación LM, como Windows 95, Windows 98, Windows para Trabajo en Grupo y versiones anteriores (de ahora en adelante, clientes/servidores de LM de nivel inferior), a menos que se hayan actualizado los controladores de dominio de los usuarios.

Si un cliente de SP4 elige el nivel 3 o mayor, siempre enviará la nueva respuesta de NTLMv2. Esta respuesta puede pasar por servidores de LM de nivel inferior y servidores de SP3 o de Windows NT anteriores y sus controladores de dominio siempre y cuando se hayan actualizado a SP4 los controladores de dominio de los usuarios. Por ejemplo, si un cliente de SP4 elige el nivel 3 o mayor, los controladores de dominio de los usuarios también DEBEN haberse actualizado a SP4. Sin embargo, esta respuesta no funcionará con los servidores de LM de nivel inferior en el modo de seguridad de recursos compartidos con contraseñas que no sean nulas. La solución temporal consiste en configurarlos de modo que usen la seguridad a nivel de usuario.

LMCompatibilityLevel - Servidores/Controladores de dominio

Si un servidor de SP4 elige el nivel 4 o mayor, un usuario con una cuenta local en ese servidor no podrá conectarse a él desde un cliente de LM de nivel inferior que use esa cuenta local.

Si un controlador de dominio de SP4 elige el nivel 4 o mayor, un usuario con una cuenta en ese dominio no podrá conectarse a ningún servidor miembro desde un cliente de LM de nivel inferior que use su cuenta de dominio. Por consiguiente, el nivel 4 significa que todos los usuarios con cuentas en un servidor o dominio deben usar Windows NT para conectarse.

Si un servidor de SP4 elige el nivel 5 o mayor, un usuario con una cuenta local en ese servidor no podrá conectarse a él desde un cliente de SP3 o cliente de Windows NT anterior que use esa cuenta local.

Los clientes de SP4 que elijan el nivel 0 ó 1 podrán conectarse a los servidores de SP4, incluso con el nivel 1 ó 3 configurado, pero usarán el protocolo Windows NT y el protocolo de LM más débil. También podrán conectarse a los servidores de LM de nivel inferior, incluso si no se han actualizado los controladores de dominio de los usuarios.

Implementación

Debido a las anteriores consideraciones y si es preferible implementar NTLMv2, se han de dar los pasos siguientes:
  1. Actualice los controladores de dominio en el lugar donde están almacenadas las cuentas de todos los usuarios que deben usar NTLMv2.
  2. Incluso antes de finalizar la actualización de los controladores de dominio, los clientes y servidores pueden actualizarse a SP4 y obtendrán seguridad mejorada cuando SP4 se conecte a SP4 estableciendo el nivel 1.
  3. Tras el paso 1, los sistemas individuales que ya se hayan actualizado a SP4 podrán iniciarse estableciendo el nivel 3 o mayor.
  4. Si los usuarios de un determinado dominio de cuenta no necesitan tener acceso a los recursos de los clientes de LM de nivel inferior, los controladores de dominio de dicho dominio pueden tener su nivel establecido en 4 y, tras actualizarse a SP4 los sistemas de todos esos usuarios, los controladores de dominio de dicho dominio pueden tener su nivel establecido en 5.

NtlmMinClientSec y NtlmMinServerSec

Si el bit con el valor 0x00000010 se establece en el valor NtlmMinClientSec o NtlmMinServerSec, se generará un error en la conexión si no se negocia la integridad de los mensajes.

Si el bit con el valor 0x00000020 se establece en NtlmMinClientSec o NtlmMinServerSec, se generará un error en la conexión si no se negocia la confidencialidad de los mensajes.

Si el bit con el valor 0x00080000 se establece en NtlmMinClientSec o NtlmMinServerSec, se generará un error en la conexión si no se negocia la seguridad de sesión NTLMv2.

Si el bit con el valor 0x20000000 se establece en NtlmMinClientSec o NtlmMinServerSec, se generará un error en la conexión si no se negocia el cifrado de 128 bits.

NOTA
Estos valores de configuración no garantizan que cada aplicación use realmente el proveedor SSP NTLM o que una aplicación use realmente la integridad o la confidencialidad de los mensajes, incluso si se han negociado.

Solución

Para solucionar este problema, obtenga el último Service Pack de Windows NT Server 4.0 o Windows NT Server 4.0, Terminal Server. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
152734 Cómo obtener el Service Pack más reciente para Windows NT 4.0



Después de instalar SP4, siga estos procedimientos para configurar el nivel de compatibilidad de LM en las estaciones de trabajo y los servidores de Windows NT:
  1. Ejecute el Editor del Registro (Regedt32.exe).
  2. Desde el subárbol HKEY_LOCAL_MACHINE, vaya a la clave siguiente:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\
  3. Haga clic en Agregar valor del menú Edición.
  4. Agregue los siguientes valores:
          Value Name: LMCompatibilityLevel
          Data Type: REG_DWORD
          Data:  0 (default) to 5 as defined above
    					
  5. Desde el subárbol HKEY_LOCAL_MACHINE, vaya a la clave siguiente:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\MSV1_0
  6. Haga clic en Agregar valor del menú Edición.
  7. Agregue los siguientes valores:
          Value Name: NtlmMinClientSec
          Data Type: REG_DWORD
          Data:  0 (default) or as defined above
    
          Value Name: NtlmMinServerSec
          Data Type: REG_DWORD
          Data:  0 (default) or as defined above
    					
  8. Haga clic en Aceptar y, a continuación, salga del Editor del Registro.
  9. Cierre y reinicie Windows NT.

Propiedades

Id. de artículo: 147706 - Última revisión: jueves, 17 de noviembre de 2005 - Versión: 3.1
La información de este artículo se refiere a:
  • Microsoft Windows NT Server 4.0 Terminal Server
  • Microsoft Windows NT Workstation 3.51
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft LAN Manager 4.2 Standard Edition
  • Microsoft Windows para Trabajo en Grupo 3.2
  • Microsoft Windows 95
Palabras clave: 
kbhotfixserver kbqfe kbbug kberrmsg kbfea kbfile kbfix KB147706

Enviar comentarios

 

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