Acabo de leer este artículo sobre cómo desenmascarar contraseñas en el signo por razones de usabilidad. En la superficie me parece razonable, pero me pregunto qué preocupaciones adicionales de seguridad podrían generar, si las hay.
Acabo de leer este artículo sobre cómo desenmascarar contraseñas en el signo por razones de usabilidad. En la superficie me parece razonable, pero me pregunto qué preocupaciones adicionales de seguridad podrían generar, si las hay.
Los campos de contraseña de enmascaramiento están diseñados para evitar la navegación por los hombros, donde un atacante te observa escribir una contraseña. Desenmascarar es una mala idea en público, pero no es tan malo en los escenarios de registro cuando el usuario está solo en la sala. Si bien personalmente no estoy de acuerdo con la afirmación de que los usuarios son incapaces de escribir una contraseña correctamente dos veces seguidas, la aceptaré con el propósito de esta pregunta.
Creo que los problemas de seguridad están bien cubiertos en algunos de los comentarios.
Luca Rosaldi dijo:
Otro buen enfoque (IMHO) sería incluir la casilla de verificación "mostrar contraseña", pero activada de forma predeterminada. De esta manera, si estoy solo, podría verificar mi contraseña sin preocupaciones de seguridad, o si no, podría desactivar la casilla y escribir mi contraseña.
A lo que Ray McCord respondió:
Debería ser exactamente lo contrario.
Se debe estar enmascarado de forma predeterminada y el usuario debe debe realizar una acción explícita para desenmascararlo, e incluso entonces esa opción solo debe respetarse muy temporalmente antes de volver a enmascarado.
¿Por qué?
Debido a que este formulario de contraseña actúa como su agente y, por lo tanto, debe hacerse actuar en su interés superior primero , como un guardaespaldas.
Este es un compromiso decente: el valor predeterminado es proporcionar al usuario la máxima seguridad posible. Si el usuario decide que es demasiado difícil poner la contraseña correctamente, puede optar por sacrificar la seguridad por la facilidad de uso. Esto tiene la ventaja adicional de no patrocinar a los usuarios que son perfectamente capaces de escribir correctamente.
El mayor problema no es realmente de seguridad, sino de confianza. Tesmond lo puso perfectamente:
El simple hecho de mostrar el campo de la contraseña es un comportamiento poco común, crea una disonancia cognitiva instantánea e incluso un pánico instantáneo, ya que su contraseña "secreta" se muestra para todos los usuarios. Es posible que se preocupe de que su contraseña sea visible en todos los lugares dentro de la aplicación e incluso puede hacer que cambie su contraseña por una menos memorable.
Esto en realidad crea un problema de seguridad. Si viera que su contraseña aparecía desenmascarada, estaría un poco confundido en cuanto a por qué el sitio decidió contrarrestar la tendencia. Tal vez no les importa la seguridad? Tal vez lo almacenan en texto plano ?! Tal vez tu contraseña sea visible en todas las pantallas !! El usuario elegirá una contraseña terrible que no le importa haber comprometido, lo que pone en riesgo su cuenta.
Para ser honesto, diría que el artículo, en combinación con los comentarios, cubre la mayoría de las posibles preocupaciones de seguridad.
Como se indicó, el problema de seguridad habitual para mostrar las contraseñas es un ataque "de hombro" en el que alguien puede pasar por alto a un usuario y obtener acceso no autorizado a su contraseña.
Obviamente, este riesgo solo está presente en entornos donde se puede pasar por alto al usuario (por ejemplo, oficinas, cafeterías, etc.).
En gran medida, estoy de acuerdo con la opinión expresada por algunos de los comentaristas de que hay un equilibrio entre seguridad y utilidad. Yo diría que un enfoque que requiere que el usuario descubra activamente la contraseña (y que solo funciona temporalmente) es una compensación razonable. esto podría ser similar al enfoque de Windows 8 donde se puede hacer clic en un icono en el campo de contraseña para revelar la contraseña, pero la contraseña solo se muestra mientras el usuario mantenga presionado el botón del mouse sobre ese icono.
La principal preocupación es la gente que espía por encima del hombro, como dice correctamente el artículo. En teoría, la única diferencia, cuando se usa el enmascaramiento de contraseñas, es la forma en que la contraseña se muestra al usuario, aparte de eso, en el nivel de software que debe tener, no es una diferencia real. Sin embargo, si el navegador no sabe que un campo contiene una contraseña u otros datos confidenciales, podría comportarse de manera diferente, por ejemplo, almacenar la contraseña de forma no segura, como parte de la función de llenado automático de formularios.