¿Puede un complemento / complemento del navegador acceder a mis contraseñas?

10

Cada vez es más frecuente que muchas extensiones y complementos del navegador requieran acceso a "todos mis datos" (tanto en Chrome como en Firefox; no comentaré sobre Internet Explorer).

Me pregunto si es posible que estos complementos y complementos accedan a mis datos bancarios (por ejemplo) cuando los visito, o accedan a los datos enviados a través de formularios.

¿Cuáles son las implicaciones de seguridad de los complementos?

FloatingRock
fuente

Respuestas:

17

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:

  1. 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.
  2. 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/ CryptUnprotectDatase 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á.

Poli
fuente
Habla sobre elaborados. ¡Esa es la respuesta más completa que he visto! Gracias @Bobby
FloatingRock
Se dio cuenta de que, si bien Chrome le permite limitar el acceso a algunos complementos por URL, Firefox no tiene ningún sandboxing / permisos adicionales.
FloatingRock
2
@Bobby - Acerca de tu VioletIsAnotherColorvs D0!l4riZepara 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. VioletIsAnotherColorpodrí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) :)
Cullub
@cullub ¿Cómo se llega a mil millones de posibilidades? Incluso si asumo un diccionario "pequeño" con solo 60k entradas llego a 1.2 * 10 ^ 19, y eso no tiene en cuenta mayúsculas / minúsculas y posibles errores ortográficos.
Bobby
1
Vaya, gracias. Parece que leí mal mis números. Aún así, termino con ~ 1.2 * 10 ^ 21. Eso no tiene en cuenta las mayúsculas, como dijiste, pero incluye casi todas las palabras en inglés, incluidas 50,000 que son obsoletas. (~ 200,000 en total) Supongo que aún es más seguro que esas letras / números aleatorios uno, a menos que el atacante fuera inteligente y usara solo las palabras más comunes. La mayúscula tampoco es una gran cosa, porque la mayoría de las contraseñas como esta no tendrán mayúsculas al azar: camelCase, WordCaps y todo en minúsculas van a cubrir la mayoría.
Cullub