¿Existe algún riesgo al enviar el nombre de usuario en un correo electrónico de restablecimiento de contraseña?

8

Estamos usando un CMS que tiene una función de restablecimiento de contraseña que funciona de acuerdo con las mejores prácticas listas para usar.

  • Las contraseñas se almacenan como hashes con sal
  • La contraseña olvidada funciona así:
    • El usuario ingresa el nombre de usuario o la dirección de correo electrónico en el cuadro de texto
    • El sistema genera un correo electrónico con un enlace "restablecer contraseña"
    • El usuario tiene x minutos para seguir el enlace y restablecer la contraseña, o está deshabilitado.

(Nota al margen, nos gustaría agregar autenticación de dos factores, y la compañía que desarrolla este CMS está trabajando para proporcionar eso, pero aún no está disponible).

Opcionalmente, podemos incluir el nombre de usuario en el correo electrónico en caso de que el usuario haya olvidado su nombre de usuario.

¿Incluir el nombre de usuario en el correo electrónico de restablecimiento de contraseña supone un riesgo de seguridad adicional?

Claramente, es un dato más que un atacante tiene en sus manos, pero la verdad es que si un atacante logra interceptar este correo electrónico, ya puede hacer clic en el primer enlace para iniciar sesión como usuario, así que no lo hago. Ver realmente un riesgo añadido. ¿Me estoy perdiendo algo?

    
pregunta David Stratton 20.06.2013 - 16:00
fuente

2 respuestas

15

No, no debería haber ningún riesgo de seguridad con este enfoque.

Los nombres de usuario son información pública y deben tratarse como tales.

EDIT

@Polynomial señaló un hecho clave que omití. Mi consejo no se aplica si el nombre de usuario en cuestión es parte de información confidencial como un número de SS.

    
respondido por el Ayrx 20.06.2013 - 16:01
fuente
0

Esto no es un riesgo de seguridad significativo, aunque aumenta ligeramente la superficie de ataque. Es probable que la ganancia de usabilidad al permitirlo supere en gran medida el riesgo minúsculo.

Sin embargo, es útil tener en cuenta que un atacante ganaría dos cosas si de alguna manera pudiera interceptar muchos de tus correos electrónicos de reinicio:

  • El atacante podría crear una lista de nombres de usuario válidos para atacar mejor los ataques de fuerza bruta o cumpleaños en su sitio.
  • El atacante podría usar el token de restablecimiento que le envías al usuario por correo electrónico, o una contraseña temporal o lo que sea.

El segundo de estos solo aumentaría el riesgo si se exigiera al usuario que proporcione su nombre de usuario durante el inicio de sesión, y de todos modos los nombres de usuario con frecuencia se pueden adivinar desde las direcciones de correo electrónico.

Además, ninguno de estos es un problema en absoluto hasta que un atacante puede husmear en su correo electrónico saliente, que puede ser un problema en sí mismo. Sin embargo, la entrega de SSL / TLS puede ayudar a evitar esto.

    
respondido por el Falcon Momot 27.11.2013 - 09:44
fuente

Lea otras preguntas en las etiquetas