¿Windows realmente sigue usando MD4 sin sal para el almacenamiento de contraseñas?

16

Me resulta bastante difícil creer que las contraseñas en Active Directory para Windows 2008 R2 aún se almacenan utilizando el algoritmo sin sal MD4 (también conocido como "hash NT").

¿Puede realmente ser verdad?

Recientemente he revisado mi comprensión del almacenamiento de contraseñas y he aprendido a usar PKDBF2 correctamente. Entonces pensé en buscar lo que usaban las principales organizaciones comerciales. ¡En qué punto pongo mi cabeza en mis manos! Sin sal MD4 en Windows. Y eso es una mejora en el hash de LM. Y hay muchos otros malos ejemplos. / etc / shadow con una criptografía decente es casi la única buena implementación en las principales fuentes comerciales / opensource.

OLD_PASSWORD de MySQL es terrible, incluso la nueva PASSWORD es SHA-1 dos veces sin sal.

¿El sector comercial general / de código abierto es realmente tan malo?

    
pregunta Richard Gadsden 07.07.2011 - 19:26
fuente

1 respuesta

15

NTLMv1 usa MD4, v2 usa MD5 y la implementación de Kerberos para Windows (creo que no tengo el libro con las especificaciones que se encuentran frente a mí) usa otra cosa. Active Directory puede almacenar múltiples tipos de hashes de contraseñas en función de lo que desea que haga y de las versiones de los protocolos habilitados.

Sí, Active Directory usa contraseñas sin sal. ¿Es este un problema de seguridad? Teóricamente sí, pero en la práctica probablemente no. La base de datos de AD fue diseñada para ser almacenada en un entorno protegido donde solo las personas de confianza tienen acceso al archivo real, y solo los sistemas de confianza pueden leer los datos en el archivo. Una sal realmente solo agrega valor si la tienda en particular que contiene la contraseña es accesible por personas potencialmente no confiables y / o sistemas no confiables, como una base de datos SQL que también contiene contenido. Si permite que cualquiera y todos accedan a la base de datos de AD, tiene más problemas que las sales de contraseña.

Luego, por supuesto, el otro lado de esto también va hacia la compatibilidad con versiones anteriores. Microsoft tiene que asegurarse de que la versión actual de AD sea compatible con las versiones anteriores. ¿Esto es bueno para la seguridad? En realidad no, pero serían crucificados si las versiones no fueran compatibles. ¿Están cambiando los hashes a algo más seguro? Sí, aunque lentamente.

    
respondido por el Steve 07.07.2011 - 20:41
fuente

Lea otras preguntas en las etiquetas