¿Por qué la seguridad de contraseña de Windows está diseñada de esta manera? [duplicar]

4

Comencemos con el hash LM. El hash de LanMan tenía fallas de seguridad MONUMENTALES, como que la contraseña no distingue entre mayúsculas y minúsculas (se convierte en superior), lo que reduce el espacio de teclas para un ataque de fuerza bruta. Además de eso, las contraseñas de > 7 caracteres se dividieron en dos hashes, reduciendo exponencialmente el tiempo de fuerza bruta. Y se observa que ni siquiera es una función de una sola vía verdadera. Luego vino el hash NTLM, diseñado para corregir las fallas que tenían los hashes LM. Es mejor, pero todavía le faltan funciones básicas de seguridad de contraseña, como tiempo de cálculo y sales. Las contraseñas de Windows no tienen sal, y el hash NTLM se puede calcular realmente rápido con poca sobrecarga, lo que lo convierte en un objetivo perfecto para los ataques de fuerza bruta y tabla de arco iris, sin mencionar que se omite la contraseña completamente al pasar el hash.

Mi pregunta es, ¿por qué Microsoft diseñó la seguridad de la contraseña de esta manera? Las debilidades de LM hacen que parezca que Microsoft ha puesto deliberadamente puertas traseras. Incluso MD5 hubiera sido mucho más seguro. ¿Por qué LM todavía es compatible con algunas versiones de Windows y por qué NTLM no es más seguro?

    
pregunta Kunal Chopra 15.10.2015 - 04:37
fuente

1 respuesta

2

Bueno, primero con LanMan, debes recordar que fue diseñado e implementado en un contexto de seguridad muy diferente al que enfrentamos hoy, o incluso de lo que enfrentábamos cuando NTLM & NTML v.2 fueron diseñados e implementados. Probablemente vaya un poco lejos para decir que a Microsoft, en realidad, a la industria de la tecnología en general, no le importaba mucho la seguridad a mediados de la década de 1990 cuando se presentó LanMan. Pero como una preocupación y una prioridad, fue un momento muy, muy diferente. Windows ni siquiera tenía un modelo multiusuario en ese entonces. O los niveles de privilegio de administrador vs. cuenta de usuario. O conecte con cualquier tipo de red de Windows Server con cualquier sistema de autenticación / identidad de Active Directory / grado empresarial. Es algo así como la pregunta de por qué las primeras versiones de Internet Explorer y Netscape Navigator no tenían prácticamente ninguna protección de seguridad en comparación con los principales navegadores actuales. Diferentes circunstancias, diferentes entornos de amenazas, diferentes niveles de conocimiento tecnológico sobre cómo crear elementos de sistema más seguros.

Con respecto a NTLM (e incluso NTLM v.2), sí, es un poco más difícil de absolver a Microsoft. ¿Fue NTML un avance considerable sobre lo que vino antes? Como usted señala, absolutamente. ¿Microsoft ha intentado alejarse de NTLM al enfatizar el uso de la autenticación Kerberos como un modelo mucho más seguro (al menos donde se usa Kerberos)? Sí. Pero Microsoft ha propagado prácticas inseguras al seguir confiando en NTLM v.2 en las muchas situaciones que Kerberos no cubre ? Dadas las debilidades en el enfoque NTLM de las que habla, creo que la respuesta debe ser "Sí".

¿Por qué NTLM todavía está en uso? ¿Por qué Microsoft no lo ha reemplazado con algo más robusto para cubrir las circunstancias en las que Kerberos no se usa? Aquí estamos entrando más en territorio de especulación. Pero si tuviera que especular, diría que (1) uno tiene que recordar cuán intensamente históricamente Microsoft se ha comprometido con la compatibilidad con versiones anteriores, especialmente en las áreas de red y autenticación; y (2) en realidad hay una pregunta bastante buena sobre cuánta seguridad adicional proporcionaría realmente un reemplazo de NTLM. Como señalaste, NTLM tiene muchos problemas en términos de su resistencia a descifrar el hash, pero la mayoría de los desvíos de autenticación de Windows no se logran robando un hash de NTLM y descifrando para obtener la contraseña de texto simple. En su lugar, los atacantes a menudo toman las formas más fáciles de (a) pasar el hash, si estamos hablando de autenticación no Kerberos a una red, o (b) simplemente restablecer una contraseña de administrador a través de la línea de comandos en el entorno de recuperación si tiene local Acceso a una máquina. Teniendo en cuenta esos puntos, y que la única forma realmente segura de bloquear el contenido de su PC contra un atacante local (cifrado de disco completo con Bitlocker, con desbloqueo de TPM) no tiene nada que ver con NTLM, se puede argumentar que reemplazar NTML v .2 con algún tipo de moderno, mucho más difícil "NTLM v.3" (o como se le llame) haría menos bien de lo que uno podría pensar.

(Aún así, tengo que estar de acuerdo con tu opinión. En mi opinión, es algo que Microsoft debería haber hecho. En las eras de Windows Vista o Windows 7.)

Habiendo dicho todo lo anterior, creo que con Windows 10, Microsoft realmente ha comenzado a dar algunos primeros pasos importantes para finalmente alejarse de NTLM, y los hashes de contraseña vulnerables al robo / paso / cracking, en realidad. Credential Guard está diseñado para usar un área segura virtualizada para salvaguardar la autenticación Información - comenzando con hashes de contraseñas - contra robos o grietas incluso si el núcleo del sistema operativo principal está completamente comprometido. La combinación de Passport y Windows Hello está diseñada para eliminar la autenticación basada en hash de contraseñas por completo: ingresar una contraseña, PIN y / o usar la autenticación biométrica simplemente desbloquea una clave privada para firmar un ticket de autenticación en una parte segura del sistema operativo, que luego se envía al servidor remoto. (O, al menos, así es como se supone que funcionarán las cosas cuando todas las capacidades prometidas de Pasaporte y Guardia de credenciales se entreguen finalmente en Windows 10. En este momento, la funcionalidad de esos elementos está solo parcialmente en el SO y / o habilitada).

Por lo tanto, el cambio se acerca. Tipo de Despacio.

    
respondido por el mostlyinformed 15.10.2015 - 07:12
fuente

Lea otras preguntas en las etiquetas