Identifique los correos electrónicos registrados en una aplicación web en línea

2

Estamos desarrollando una aplicación web donde los usuarios pueden registrarse utilizando su dirección de correo electrónico. Durante el proceso de inicio de sesión, solíamos tener un mensaje de error "el correo electrónico no está registrado". Ya que necesitamos mantener la privacidad de nuestros usuarios, cambiamos este mensaje a "nombre de usuario o contraseña no válidos".

¿Hay otras formas en que un atacante pueda identificar si un correo electrónico está registrado en nuestro sitio o no?

    
pregunta Rithu Bimasha 18.01.2017 - 02:14
fuente

1 respuesta

1

Este es un buen cambio que hiciste para reforzar la filtración de privacidad en tu aplicación. Desde un punto de un atacante, hay otra manera de identificar si el correo electrónico está registrado en su sitio o no. Pero esto depende de cómo haya implementado su proceso de autenticación, el rendimiento de sus servidores web, etc.

Normalmente, almacenamos la contraseña de usuario como un hash en la base de datos junto con el valor de sal (¿Espero que hayas hecho lo mismo?). Por lo tanto, si el proceso de inicio de sesión identifica un correo electrónico existente en su base de datos, se calcula el hash de la contraseña dada y se intenta comparar los hashes. Calcular el hash de una contraseña dada lleva un poco de tiempo. Entonces, lo que el atacante puede hacer es comparar los tiempos de respuesta de su página de inicio de sesión e identificar los correos electrónicos, lo que lleva más tiempo responder.

Como un remedio para este tipo de ataque. Tienes que controlar manualmente tu tiempo de respuesta en tu página de inicio de sesión a una constante.

    
respondido por el user3496510 18.01.2017 - 03:24
fuente

Lea otras preguntas en las etiquetas