De
nuevo, se ha creado algo de confusión con una supuesta vulnerabilidad en
Windows que permitía "conocer las
contraseñas" del usuario. Lo cierto es que no es para tanto, y que lo
único que se ha automatizado es un método
para sacar en texto claro los indicios de contraseñas de Windows.
Jonathan Claudio de SpiderLab,
detectó una entrada en el registro en Windows 7 y 8 (que se puede ver con los
privilegios de SYSTEM). Se llama UserPasswordHint y está en:
HKLM\SAM\SAM\Domains\Account\Users\<clavedeusuario>\UserPasswordHint
Esta clave almacena la frase de indicio
de contraseña que Windows muestra al usuario, por si se le ha olvidado y
necesita "una pista". La
frase que se usa para inspirar al usuario, está "codificada" (que no cifrada), y el sencillo método de
descodificación, es lo que principalmente, ha descubierto Claudio.
En realidad, es una codificación
muy sencilla. De hecho, por ejemplo, en mi equipo personal la "pista"
para adivinar la contraseña es "a"
(por supuesto, algo que está lejos de dar alguna pista). Si se lanza el registro
con permisos de SYSTEM (abajo en la imagen se observa el comando) y se navega
hacia la rama del registro correspondiente, se comprueba que la codificación es
"00 61", lo que
inmediatamente lleva al valor hexadecimal de la letra "a" minúscula. La decodificación, por tanto, es trivial.
Además, la pista está diseñada
para ser pública. Cualquiera con acceso físico puede observarla si se "equivoca" una vez al introducir la contraseña.
Por tanto, el valor de lo que ha
descubierto SpiderLabs es más una "curiosidad"
que una debilidad real, pero que tiene utilidad. Lo que ha descubierto permite
a un atacante remoto, conocer esa "pista".
Por supuesto, este atacante ya habrá obtenido acceso al sistema ejecutando código
para poder extraer la información. Lo relevante, es que si esa pista es real y
además el atacante obtiene los hashes de las contraseñas, quizás le permita
acotar el diccionario y conocer las contraseñas de manera más sencilla. O
incluso, si la pista es lo suficientemente explícita, no sea necesario crackear
nada. Con ese objetivo, se ha añadido a mestasploit el módulo que permite
volcar los hashes de las contraseñas y las pistas.
Así que parece que en realidad no
es una vulnerabilidad grave, sino una pequeña
facilidad para los atacantes que quieran conocer las contraseñas de
víctimas sobre las que ya tienen todo el poder.
En definitiva, utilizar pistas para recordar la contraseña
es una mala idea, igual que utilizar el recordatorio de contraseñas de los
correos y, en general, cualquier ventaja que se le pueda dar a un usuario que quiera
atacar un sistema protegido por contraseña.
Más información:
All Your Password
Hints Are Belong to Us
Sergio de los Santos
Twitter: @ssantosv




Hola Sergio, pues totalmente de acuerdo contigo en el último párrafo.
ResponderEliminarPero seguro que tú, yo y muchas personas que trabajamos en Informática alguna vez nos olvidamos una contraseña.
Supongo que uno de los poquitos métodos no tan inseguros sea el "reseteo" de contraseña. ¿Cómo lo ves?
Por cierto, una de las opciones de publicación aquí es hacer login con mi cuenta de Google, cosa que no hago.
Un saludo.
¿Por qué no usar un gestor de contraseñas? Así no se olvida ninguna y pueden contener caracteres suficientes para considerarse segura ;)
Eliminar...una pequeña observacion: Muchos usuarios usan como pista de la contraseña la contraseña misma. No se si existira una forma (via politicas de sistema?) de desactivar esto, pero pinta muy mal y no es una buena idea...
ResponderEliminarEn https://www.owasp.org/index.php/Forgot_Password_Cheat_Sheet dan algunas ideas sobre cómo se puede hacer de forma razonable. Es una lectura interesante. Las preguntas-recordatorio se consideran seguras si no las elige el usuario y son suficientemente diversas. Habría que ver si la cultura de EEUU es directamente trasladable a nuestras costumbres (allí hay más movilidad, más desapego de la familia, con lo que es más difícil saber en qué colegio estudió alguien y esas cosas...).
ResponderEliminar¿Opiniones?