Esta publicación se aplica solo a Firefox y Chromium / Google Chrome. No puedo comentar en Internet Explorer, Opera o navegadores móviles. Además, mis matemáticas más abajo podrían estar equivocadas, pero la idea básica es correcta.
Por supuesto, esto es posible, sin embargo, en el caso de Firefox y Chrome / Chromium, es poco probable.
¿Son seguras mis contraseñas (que están almacenadas en el navegador)?
Esta respuesta es una de mis favoritas: depende. Las contraseñas guardadas por el navegador deben cumplir una condición importante y, desde un punto de vista de seguridad, una pesadilla, condición: deben ser texto sin formato o reversible a texto sin formato.
Texto sin formato vs. Cifrado vs. Hashed
¿Por qué es eso malo? Bueno, imagina que alguien entra en un servidor y roba la base de datos de contraseñas. Hay dos resultados posibles:
- Las contraseñas son de texto sin formato (o fácilmente reversibles), por lo que el cracker ahora tiene acceso completo a todas las cuentas.
- Las contraseñas son hash (o encriptadas), sería necesario un ataque de fuerza bruta contra los hashes para obtener las contraseñas y acceder a las cuentas. Incluso ahora que le robaron su nombre de usuario y contraseña, su cuenta aún está segura.
Dado que el navegador necesita poder enviar la contraseña a los sitios web, no puede usar contraseñas hash , solo puede cifrarlas (o incluso almacenarlas como texto sin formato). Esto es algo que siempre se debe tener en cuenta (lo mismo ocurre con los clientes de correo electrónico, las aplicaciones de chat, etc.).
El hecho de que esté encriptado no significa que sea seguro
Firefox, por defecto, le permite guardar contraseñas. También los encripta . Lo mismo se aplica al cromo (ver anexo "Bueno, depende ..." ). El problema con esto es que la clave para el descifrado también se almacena con las contraseñas. Esto hace que el cifrado sea un inconveniente menor para alguien que quiere sus contraseñas y no las detiene de ninguna manera.
¡Entonces no almacene la clave con las contraseñas!
Así es, para que las contraseñas sean más seguras , necesitamos quitar la clave de las contraseñas cifradas. Esto se hace en Firefox configurando una contraseña maestra , que luego se usa para cifrar y descifrar todas sus contraseñas. Al utilizar esta técnica, separa la clave de los datos cifrados, lo que siempre es una buena idea (después de todo, no está manteniendo la llave de la puerta delantera en un gancho frente a su puerta en el exterior, ¿verdad?).
Las contraseñas son tan seguras como las crea
Entonces, ¿por qué dije antes que sus contraseñas ahora son más seguras y no seguras ? Porque ahora la seguridad de sus contraseñas depende de la contraseña que haya elegido. Es decir, la contraseña "asdf" no debe considerarse segura de ninguna manera; tampoco lo es "12345". Las buenas contraseñas son largas , porque forzarlas con fuerza bruta lleva una cantidad considerable de tiempo. La contraseña "VioletIsAnotherColor" es técnicamente más segura que "D0! L4riZe" debido a su longitud, a pesar de que el segundo contiene caracteres especiales. Echemos un vistazo a eso.
"VioletIsAnotherColor"
Longitud: 20
Caracteres posibles: 52 (26 minúsculas + 26 mayúsculas)
"D0! L4riZe"
Longitud: 9
Caracteres posibles: 77 (26 inferior + 26 superior + 10 dígitos + 15 especiales)
Especiales :! " @ $% & / () =? * + # -
Entonces, ¿cuántos intentos necesitamos para romper esas contraseñas, sabiendo sus conjuntos de caracteres y longitud?
"VioletIsAnotherColor"
52 20 = ~ 20 decillion (~ 2 × 10 34 )
"D0! L4riZe"
77 9 = ~ 95 billones (~ 9 × 10 16 )
Como vemos, la última contraseña, a pesar del conjunto de caracteres más amplio, es más fácil de aplicar fuerza bruta que la larga con su conjunto limitado. Esto se debe a la longitud. (Otra ventaja es que la primera es más fácil de recordar). Consulte esta pregunta de seguridad de TI para obtener detalles al respecto.
Entonces, si es posible, use una frase de contraseña, no una contraseña .
Volviendo al tema, ¿qué tan seguras están mis contraseñas de un complemento de suplantación de identidad?
Ellos no están. Esto se debe a que los complementos tienen acceso al sitio web que acaba de visitar. Pueden extraer información de él, incluidas las contraseñas ingresadas. Los complementos son un riesgo de seguridad como cualquier otro software instalado. Instale solo complementos en los que confíe.
¡Excelente! ¿Cómo sé eso?
Instale solo complementos de fuentes de confianza. Para Firefox es la página de complementos y para Chromium es Chrome Web Store , o si confía en el autor / distribuidor. Ambos garantizan que los complementos estén controlados y sean seguros.
Ni la página de complementos de Mozilla ni Chrome Web Store garantizan de ninguna manera que el complemento sea seguro. Emplean procesos de revisión automatizados que pueden o pueden detectar complementos maliciosos. Al final del día, todavía queda un riesgo.
Sólo instalar complementos de fuentes que se confía.
Espera un momento; ¿mencionaste otro software instalado?
¡Por supuesto! Nada impide que otro software instalado tome sus contraseñas del navegador, realice ataques de intermediario o incluso sirva un proxy que falsifique sus sitios web bancarios. Lo mismo ocurre con los complementos del navegador. La regla general es: no instale software en el que no pueda confiar.
Conclusión
¿Qué deberías quitar de esto?
- Nunca instales software / complementos / complementos en los que no confíes.
- Si aún tiene dudas, configure una contraseña maestra.
- Si aún tiene dudas, no confíe en su navegador con contraseñas, nunca las guarde.
- Si aún tiene dudas, nunca instale complementos / complementos.
- Si aún tiene dudas, use un sistema en vivo , que no pueda ser manipulado.
Anexo: "Bueno, depende ..."
Como aprendí, mis suposiciones en este párrafo no son 100% correctas, y me gustaría corregir eso. La siguiente información se aplica solo al almacenamiento de las contraseñas en el disco.
Google Chrome / Chromium
De hecho , guarda sus contraseñas de manera segura en el disco, dependiendo del sistema operativo en el que se ejecuta:
Microsoft Windows
La API de Microsoft Windows CryptProtectData
/ CryptUnprotectData
se usa para cifrar / descifrar la contraseña. Esta API funciona con la contraseña de su cuenta del sistema operativo, por lo que solo es tan segura como esa contraseña.
Mac OS
La capa para MacOS genera una clave aleatoria basada en la contraseña del llavero del usuario actual y agrega esa clave al llavero. Nuevamente, esto solo es tan seguro como la contraseña del usuario.
Linux
Bueno ... no hablemos de eso.
De acuerdo, si tiene que saber, hace exactamente lo que asumí: almacena los datos con una contraseña codificada. ¿Por qué es este el caso? Simplemente porque no existe una infraestructura común para manejar los datos encriptados de manera similar a los otros dos sistemas. No, no solo dije que Linux carece de sistemas de encriptación o seguridad; Hay muchas soluciones de almacenamiento de llavero / llavero y contraseña disponibles en el espacio de usuario . Como parece, los desarrolladores de Chrome decidieron no usar uno de esos. "¿Por qué?" No es una pregunta que pueda responder.
Firefox
Siempre usa una clave generada que se almacena junto con las contraseñas. La excepción es si establece una contraseña maestra, entonces esto también se usará.
VioletIsAnotherColor
vsD0!l4riZe
para la seguridad de la contraseña. El primero técnicamente es más fuerte ... cuando estás usando un ataque de fuerza bruta . Sin embargo, otro tipo de ataque es el ataque del diccionario , donde el atacante realiza metódicamente, en lugar de letras y números aleatorios, palabras en el diccionario y combinaciones de esas palabras.VioletIsAnotherColor
podría romperse dentro de ~ 1.2 mil millones de posibilidades. Solo para ser técnico y todo, pero vale la pena señalar. (+1 de todos modos, por cierto) :)