Iniciar sesión de usuario automáticamente después de hacer clic en Correo electrónico de activación de cuenta

3

Escenario: registros de la cuenta del foro, el usuario debe hacer clic en un correo electrónico de activación después de registrarse, por ejemplo. crean una cuenta con nombre de usuario, correo electrónico, contraseña y se envía un correo electrónico al correo electrónico que seleccionan. Deben hacer clic para "activar" la cuenta.

Supongamos que todos los pasos hasta el clic del correo electrónico son seguros para el caso de uso / propósito del sitio.

Entiendo que la cuenta de correo electrónico de los usuarios podría verse comprometida, pero esto no está bajo nuestro control.

¿Qué problemas de seguridad están presentes en el escenario en el que iniciamos sesión automáticamente cuando el usuario hace clic en el enlace de activación en el correo electrónico (y la activación es exitosa)?

He leído las respuestas en la pregunta Iniciar sesión en un usuario después de restablecer la contraseña a través de un enlace , y parece que la razón más fuerte para NO registrar automáticamente al usuario serían las mencionadas por Tom Leek, por ejemplo: el usuario no sabe que ha iniciado sesión automáticamente, y potencialmente deja el dispositivo sin supervisión con una sesión autenticada aún abierta, etc.

    
pregunta GWR 06.11.2015 - 13:58
fuente

2 respuestas

3

Para muchos sitios, el modelo es que las cuentas están controladas por cualquier persona que tenga la contraseña o control sobre la cuenta de correo electrónico. Un inicio de sesión automático es solo una extensión de ese modelo. El enlace solo debe estar disponible para esa cuenta de correo electrónico y esa cuenta solo debe estar disponible para el titular de la cuenta.

Dicho esto, SMTP es un canal bastante malo para confiar en el secreto. Su mensaje se moverá a través de las redes de manera clara y rebotará a través de múltiples servidores de correo donde podría almacenarse. Además, el enlace de activación puede ser procesado por un proxy donde se almacena en los registros. Puede decidir que confía en el correo electrónico lo suficiente para el paso de verificación, pero no para la autenticación o el restablecimiento de la contraseña.

Puede probar un enfoque híbrido en el que obtenga los beneficios del inicio de sesión automático y minimice los riesgos de seguridad. Cuando el usuario crea una cuenta, usted crea una sesión para él en un estado de prueba. Sabes quiénes son pero no les permites acceder a ninguna función. Una vez que se activan, cambia su estado de probatorio a activo y pueden acceder a las funciones. El solo hecho de tener el enlace ya no le dará acceso al sitio.

Si sigue el modelo propuesto, debe enlazar en el tiempo el token de inicio de sesión automático, hacer que sea difícil de adivinar y verificar que el token de activación coincida con la cuenta del usuario. No desea que la gente adivine tokens y obtenga acceso a sus cuentas de usuario.

    
respondido por el u2702 06.11.2015 - 17:41
fuente
2

Otro problema es iniciar sesión csrf. Algunos investigadores dicen que es un tema de baja prioridad, pero otros dicen que no lo es. El inicio de sesión csrf es una vulnerabilidad en la que un atacante inicia sesión con su cuenta en una computadora víctima. Considere la posibilidad de que un pirata informático agregue el enlace de activación en el SRC de una etiqueta IMG y envíe a la víctima. Al ver la página, inicie sesión como atacante y él podrá hacer un seguimiento de la actividad del usuario.

    
respondido por el haseeb 06.11.2015 - 14:58
fuente

Lea otras preguntas en las etiquetas