Vulnerabilidad de restablecimiento de contraseña en texto sin formato

11

Si recibo un correo electrónico con una contraseña generada en texto sin formato (en respuesta a una solicitud de restablecimiento de contraseña), ¿es esto una vulnerabilidad? La contraseña caduca después de un uso, en otras palabras, el usuario debe cambiar su contraseña tan pronto como se registre.

Podría imaginar que tal esquema de restablecimiento de contraseña sería al menos vulnerable a un hombre en el ataque central. El hombre en el medio podría obtener la contraseña temporal y luego bloquear al usuario con una nueva contraseña. Pero, ¿hay tal vez otra vulnerabilidad?

    
pregunta dasPing 15.05.2013 - 23:52
fuente

2 respuestas

10

Suponiendo que la contraseña se genera aleatoriamente y no es fácil de adivinar, como usted dice, la forma principal en que un atacante podría comprometer este sistema es realizar un ataque MITM.

Sin embargo, cualquier sistema de restablecimiento de contraseña basado en una dirección de correo electrónico es vulnerable al mismo tipo de problema (por ejemplo, enlaces de una sola vez) si el atacante puede interceptar el tráfico entre el usuario y su cuenta de correo electrónico.

Aunque definitivamente no es perfectamente seguro o algo en lo que confiaría para una aplicación de alto riesgo (como la banca en línea) tampoco veo las contraseñas de un solo uso como un sistema particularmente deficiente.

la recomendación principal sería asegurarse de que accede a su cuenta de correo electrónico solo a través de canales encriptados (por ejemplo, SSL o IMAP (S))

    
respondido por el Rоry McCune 16.05.2013 - 00:27
fuente
5

No creo que sea una vulnerabilidad. Cuando lo piensas como una contraseña enviada en texto sin formato, entonces sí es comprensible pensar que hay una vulnerabilidad aquí, pero no es una contraseña.

El envío de un enlace como https://example.com/reset.php?code=97fy978y39fny39478fyn3 , que es un enlace de una sola vez en el que hace clic para acceder a un formulario de restablecimiento de contraseña en el que escribe su nueva contraseña, es básicamente lo mismo que enviarle una contraseña de un solo uso. simplemente tomaron el code del enlace y lo llamaron una contraseña temporal. La idea en sí misma no es vulnerable, pero la implementación incorrecta en su mayoría lo es.

¿Qué podría salir mal aquí?

  1. El code o la contraseña podrían ser muy cortos o no generados con un criptográficamente seguro PRNG .

  2. El code o la contraseña podrían dar acceso a áreas de la cuenta por un período prolongado de tiempo antes de establecer una nueva contraseña.

  3. El code o la contraseña podrían permanecer válidos durante mucho tiempo, haciendo que su exposición final sea un riesgo.

  4. No usar HTTPS, lo que le da a MitM la oportunidad de interceptarlos.

Actualización: Tienes razón, el correo electrónico está fuera del alcance de la implementación, pero luego nos saldríamos completamente del tema. podemos discutir que todo el sistema está roto , pero no hay otra opción. Ellos podrían enviarte el código en un SMS, pero ¿qué pasaría si tu amigo estuviera sosteniendo tu móvil? Podrían enviarlo a su buzón (un poco tonto) pero ¿qué pasa si alguien abrió su buzón? La única opción segura que queda es que envíen a un representante de la compañía para que vaya a su dirección y le solicite su identificación y tome sus huellas dactilares (que proporcionó en el formulario de registro) y luego reinicie tu contraseña.

Verás, el correo electrónico es una manera de facto de contactar al propietario de la cuenta original, por lo que es lo mejor que pueden hacer.

En general, solo estaba tratando de mostrarle que la seguridad de la contraseña única de texto simple es exactamente la misma que la del enlace único utilizado por casi todos los servicios web (Facebook, Twitter, StackExchange, ... )

    
respondido por el Adi 16.05.2013 - 00:30
fuente

Lea otras preguntas en las etiquetas