En el marco de la cursada de una diplomatura de desarrollo seguro en UNSTA donde soy docente también, alguien avisó que:
Reporte inicial |
Bueno, no es tan terrible, no es una credencial transacccional, es para facilitar el onboarding, hay mucha gente que si le complicás la cosas no va.
Pero, está claro que dista de lo ideal, se me ocurren un montón de mitigaciones, pueden ser superpuestas o incoherentes, sin ningún orden en particular, apoyándome en la información que tengo hasta ahora
- Avisarle al usuario que entre y cambie la contraseña lo antes posible, disminuís el tiempo de exposición y ya le estás enseñando algo.
- Forzar el cambio de crendencial al entrar. Con ello disminuís el tiempo de exposición y de paso cumplís con una buena práctica.
- Enviar la clave en otro mail, le permite al usuario borrarlo sin perder el link original, le estás tirando la responsabilidad al usuario.
- Enviar la clave con fondo del mismo color, al menos protege de shoulder surfing. Shoulder surfing es que te saquen información mirando por encima del hombro. Debería existir alguna expresión para la pérdida de información debido a mostrarla en pantalla al compartirla en una videoconferencia. De hecho, he fallado y varias veces.
Hasta aquí, medidas de seguridad pura, contemplando un poco la usabilidad y sin prestar atención a las necesidades de negocio.
Para replicar el escenario, fuí al sitio:
Situación TLS, excelente |
Luego me convertí en asistente a una charla y tener más información del contexto, veamos:
Me inscribí, me preguntó lo de siempre, incluso ingresar la clave, mmmh, interesante, en el reporte no decía que la clave la habías ingresado vos, se deducía que la había generado el sistema para vos.
Ok, te pide una contraseña más fuerte que la que autogenera firefox. Ahora ya sabés parte de mi contraseña: ****************-
Ufa, tiene errores de usabilidad, se olvida de mi país y las preguntas si/no, tras varios intentos debido a que no le atinaba a agregar el "-" a la clave casi desisto... esta es una denegación involuntaria de servicio.
Hice logout y falló la redirección, ahí noté, no lo había hecho antes, que es un wordpress. No voy a ejecutar un wpscan pues ya estaríamos entrando en el terreno de un Ethical Hacking y si le pido permiso a ML no voy a terminar nunca esta nota que comenzó como un comentario en un grupo de whatsapp. Además es trabajo y ahora no estoy trabajando.
Mmmh, peor aún, no puedo cerrar sesión, voy a compartir esta nota con ML. Para continuar, voy a entrar en modo incógnito.
Auń no me llegó el mail que inició todo esto, un problema pues no anoté la clave, voy a cambiarla... y sí, me autocompleta la clave. Mirando muy rápido con devtools no veo que esté el valor a la vista, pero si ha circulado, con burp o más paciencia lo encontraría si está, quizás sólo sea que firefox la recordó por que le pedí, sólo voy a cambiarla, no me la toma. Ni dice ok ni se manifiesta al entrar por el login.
Voy a recuperar... pruebo con un usuario inexistente y no puedo ver el mensaje pues se ha roto en maquetamiento, pero es:
No existe un usuario con este nombre de usuario
o correo electrónico. Por favor verifica tus datos
e intenta de nuevo.
Mal, esto es un oráculo, fuga de información.
El mail de recuperación es un link, parece ok, pero se ha roto completamente la interfaz, ya se está convirtiendo en trabajo. Hasta acá llegué, no me toma la nueva clave. Más que problemas de seguridad, hay problemas previos de calidad. La cosas primero deben funcionar, luego ser seguras.
Volviendo al problema original, no lo pude reproducir. De ser así indicaría que la clave podría estar siendo almacenada en lugar de hasheada.
Voy a reportar... no funciona el "sobre" (about), me puse a buscar en ML si había algo donde reportar... suficiente, es sábado AM, tengo muchas cosas que hacer, me está tomando más trabajo reportar que lo que ya hice, si vos sabés a quién avisar, hacelo por favor.
Y esto nos lleva nuevamente al asunto original, habiendo supuesto una clave autogenerada que te la envíe. Podría mandártela por otro canal, esa es un buena excusa para pedirte el teléfono y mejorar su base de datos de usuarios/clientes.
No hay comentarios:
Publicar un comentario