Contraseñas temporales enviadas por correo electrónico como texto sin formato

7

¿Es este un problema de seguridad? Muchas compañías de grandes plataformas de comercio electrónico usan esta característica. Donde si olvidó su contraseña, le envían una contraseña temporal por correo electrónico.

¿Podría alguien potencialmente averiguar el algoritmo que utilizan para generar estas contraseñas? también estas contraseñas temporales deben almacenarse en algún lugar en texto sin formato, ¿correcto?

    
pregunta marcwho 13.03.2013 - 21:48
fuente

4 respuestas

10

Cualquier cosa que envíes por correo electrónico es potencialmente espiada. Así es como funciona la seguridad del correo electrónico (no hay ninguno). Por lo tanto, el envío de datos confidenciales por correo electrónico es un problema. Todavía lo hacemos de vez en cuando, pero eso es porque no tenemos una mejor opción. Pero aplicamos mitigaciones:

  • La contraseña es "de una sola vez", lo que significa que si se la intercepta y se usa, el destinatario real ya la usó (y luego el atacante queda frustrado), o el destinatario real note el problema cuando intente usarlo (y luego se revela el ataque)

  • El único uso permitido de la contraseña temporal es llegar a una página o pantalla que permita el registro de una contraseña más permanente, elegida por el propio usuario (es decir, una contraseña que no viaja en un correo electrónico).

  • Estas contraseñas se generan de forma aleatoria, de modo que son sólidas individualmente, y no es posible "adivinar" la siguiente contraseña temporal, incluso después de haber observado muchas contraseñas anteriores.

No es necesario almacenar las contraseñas en texto sin formato en cualquier lugar, ya sean temporales o permanentes. Lo que el servidor debe almacenar es algo que permita verificar una contraseña determinada, es decir, una hash de contraseña .

Las contraseñas temporales por correo electrónico también suelen denominarse "enlaces de restablecimiento de contraseña". Esa es la misma funcionalidad, solo con un https:// adicional para que la contraseña temporal se pueda "escribir" con un clic del ratón.

    
respondido por el Tom Leek 13.03.2013 - 21:59
fuente
4

Usted tiene razón al decir que esto no es estrictamente seguro, pero también es lo mejor que podemos hacer. Las contraseñas deben usarse una sola vez y requieren que el usuario cambie su contraseña al usarlas. Entonces, si el usuario realmente lo solicita, sabrá si alguien más lo usa antes que ellos.

Si no lo solicitaron, a menos que haya un medio más seguro para comunicarse con ellos que no sea el correo electrónico, el correo electrónico es la única opción disponible para comunicarse con ellos. Es posible que el correo electrónico pueda ser interceptado y ellos no sabrían que un atacante solicitó el cambio, pero la próxima vez que inicie sesión, no podrán y descubrirán la violación de esa manera.

No es ideal, pero es la mejor opción disponible la mayor parte del tiempo.

    
respondido por el AJ Henderson 13.03.2013 - 21:51
fuente
1
  

¿Podría alguien potencialmente averiguar el algoritmo que utilizan para generar estas contraseñas?

Eso depende. Mi enfoque sería simplemente generar un resultado legible para el usuario a partir de /dev/urandom , en cuyo caso esto no es probable?

  

también estas contraseñas temporales deben almacenarse en algún lugar en texto sin formato, ¿correcto?

En realidad, no. Si el sitio en cuestión utiliza esquemas de almacenamiento seguro de contraseñas, es decir, hash lentos con sal, como bcrypt o PBKDF2, lo que deben hacer es almacenar el hash derivado de la contraseña. En esencia, es lo mismo que si le hubiera ordenado al servidor que cambie su contraseña, excepto que el servidor lo hizo en su nombre.

La ventana para mantener esa contraseña en la memoria es, por lo tanto, tan larga como la genera, la envía en un correo electrónico, la hash y la almacena.

Ahora, la verdadera cuestión de la pregunta es realmente ¿es esta una forma segura de enviar una contraseña a alguien? La respuesta no es realmente, pero las alternativas son:

La segunda opción es probablemente prohibitiva. Este último no es un buen almacenamiento de contraseñas. La primera opción es "tan mala" en el sentido de que todo lo que necesita para secuestrar la cuenta es el acceso a ese correo electrónico.

Creo que, combinada con una ventana de tiempo limitado para este restablecimiento de contraseña, en la actualidad esta es la mejor solución posible para los sitios web de uso general que no cuentan con la infraestructura para admitir otros métodos de restablecimiento de contraseña.

Toda esta respuesta supone que obtener un correo electrónico / enlace para restablecer la contraseña requiere saber algo sobre la cuenta que no sea solo la dirección de correo electrónico. Las preguntas secretas son otra lata de gusanos, por lo que supongamos que obtener el enlace / correo electrónico para restablecer la contraseña es al menos más difícil que saber la dirección de correo electrónico.

    
respondido por el user2213 13.03.2013 - 21:58
fuente
0

No creo que sea un riesgo para la seguridad, ya que si está utilizando un buen proveedor de correo electrónico como Gmail, aplicará el cifrado (SSL / TLS) en todas sus comunicaciones.

Mientras el único que tenga acceso a la cuenta de correo electrónico sea usted, y nadie esté mirando por encima de su hombro mientras lee sus correos electrónicos, la seguridad de las contraseñas enviadas en el correo electrónico es igual a enviar su contraseña en texto claro sobre un Conexión HTTPS.

Sin embargo, si la contraseña se envía en texto sin cifrar, debe cambiarla lo antes posible, ya que una contraseña en texto sin cifrar en un mensaje de correo electrónico podría ser un riesgo de seguridad más adelante.

    
respondido por el sharp12345 14.03.2013 - 02:23
fuente

Lea otras preguntas en las etiquetas