Logotipo de Zephyrnet

Google filtra secretos de 2FA: los investigadores desaconsejan la nueva función de "sincronización de cuenta" por ahora

Fecha:

La google Authenticator La aplicación 2FA ha aparecido con fuerza en las noticias de seguridad cibernética últimamente, con Google agregando una función que le permite hacer una copia de seguridad de sus datos 2FA en la nube y luego restaurarlos en otros dispositivos.

Para explicar, un 2FA (autenticación de dos factores) es uno de esos programas que ejecuta en su teléfono móvil o tableta para generar códigos de inicio de sesión únicos que ayudan a proteger sus cuentas en línea con algo más que una contraseña.

El problema con las contraseñas convencionales es que hay muchas formas en que los delincuentes pueden rogarlas, robarlas o tomarlas prestadas.

Hay hombro-surf, donde un pícaro en medio de ti se asoma por encima del hombro mientras lo escribes; hay conjeturas inspiradas, donde ha utilizado una frase que un ladrón puede predecir en función de sus intereses personales; hay suplantación de identidad, donde se le atrae para que entregue su contraseña a un impostor; y ahí está keylogging, donde el malware ya implantado en su computadora realiza un seguimiento de lo que escribe y comienza a grabar en secreto cada vez que visita un sitio web que parece interesante.

Y debido a que las contraseñas convencionales suelen ser las mismas de un inicio de sesión a otro, los delincuentes que descubren una contraseña hoy en día a menudo pueden simplemente usarla una y otra vez en su tiempo libre, a menudo durante semanas, tal vez durante meses y, a veces, incluso durante años.

Entonces, las aplicaciones 2FA, con sus códigos de inicio de sesión únicos, aumentan su contraseña habitual con un secreto adicional, generalmente un número de seis dígitos, que cambia cada vez.

Tu teléfono como segundo factor

Los códigos de seis dígitos comúnmente generados por las aplicaciones 2FA se calculan directamente en su teléfono, no en su computadora portátil; se basan en una "semilla" o "clave de inicio" que está almacenada en su teléfono; y están protegidos por el código de bloqueo de su teléfono, no por ninguna contraseña que escriba habitualmente en su computadora portátil.

De esa manera, los delincuentes que suplican, toman prestada o roban su contraseña habitual no pueden acceder directamente a su cuenta.

Esos atacantes también necesitan acceso a su teléfono y deben poder desbloquearlo para ejecutar la aplicación y obtener el código único. (Los códigos generalmente se basan en la fecha y la hora al medio minuto más cercano, por lo que cambian cada 30 segundos).

Mejor aún, los teléfonos modernos incluyen chips de almacenamiento seguro a prueba de manipulaciones (Apple llama al suyo Enclave seguro; Google se conoce como Titan) que guardan sus secretos incluso si logras desconectar el chip e intentas extraer datos fuera de línea a través de sondas eléctricas en miniatura o mediante grabado químico combinado con microscopía electrónica.

Por supuesto, esta "solución" trae consigo un problema propio, a saber: ¿cómo haces una copia de seguridad de esas semillas 2FA tan importantes en caso de que pierdas tu teléfono, o compres uno nuevo y quieras cambiarlo?

La forma peligrosa de hacer una copia de seguridad de las semillas

La mayoría de los servicios en línea requieren que configure una secuencia de código 2FA para una nueva cuenta ingresando una cadena de 20 bytes de datos aleatorios, lo que significa escribir laboriosamente 40 caracteres hexadecimales (base-16), uno por cada medio byte, o ingresando cuidadosamente 32 caracteres en codificación base-32, que usa los caracteres A a Z y los seis digitos 234567 (El cero y el uno no se usan porque se parecen a O de Oscar y I de India).

Excepto que generalmente tiene la oportunidad de evitar la molestia de tocar manualmente su secreto inicial escaneando un tipo especial de URL a través de un código QR.

Estas URL 2FA especiales tienen el nombre de la cuenta y la semilla inicial codificada en ellas, así (limitamos la semilla aquí a 10 bytes, o 16 caracteres de base 32, para mantener la URL corta):

Probablemente puedas adivinar a dónde va esto.

Cuando enciende la cámara de su teléfono móvil para escanear códigos 2FA de este tipo, es tentador tomar una foto de los códigos primero, para usarlos como respaldo...

…pero le instamos a que no lo haga, porque cualquiera que obtenga esas imágenes más tarde (por ejemplo, desde su cuenta en la nube, o porque usted las reenvía por error) conocerá su semilla secreta, y trivialmente podrá generar la información correcta. secuencia de códigos de seis dígitos.

Cómo, por lo tanto, hacer una copia de seguridad de sus datos 2FA de manera confiable sin guardar copias de texto sin formato de esos molestos secretos de varios bytes?

Autenticador de Google en el caso

Bueno, Google Authenticator recientemente, aunque con retraso, decidió comenzar a ofrecer un servicio de "sincronización de cuenta" 2FA para que pueda hacer una copia de seguridad de sus secuencias de código 2FA en la nube y luego restaurarlas en un nuevo dispositivo, por ejemplo, si pierde o reemplaza su teléfono.

Como un medio de comunicación descrito eso, "Google Authenticator agrega una característica crítica largamente esperada después de 13 años".

Pero, ¿con qué seguridad se lleva a cabo esta transferencia de datos de sincronización de cuenta?

¿Se cifran sus datos semilla secretos en tránsito a la nube de Google?

Como puede imaginar, la parte de carga en la nube de la transferencia de sus secretos 2FA está cifrada, porque Google, como todas las empresas conscientes de la seguridad, ha utilizado HTTPS y solo HTTPS para todo su tráfico basado en la web durante varios años. .

Pero, ¿pueden cifrarse sus cuentas 2FA con una frase de contraseña que sea exclusivamente suya? incluso antes de que dejen tu dispositivo?

De esa manera, no pueden ser interceptados (ya sea legalmente o no), citados, filtrados o robados mientras están almacenados en la nube.

Después de todo, otra forma de decir "en la nube" es simplemente "guardado en la computadora de otra persona".

¿Adivina qué?

Nuestros amigos programadores independientes y expertos en ciberseguridad en @mysk_co, sobre quien hemos escrito varias veces antes en Naked Security, decidió averiguarlo.

¿ ellos informaron no suena terriblemente alentador.

Como puede ver arriba, @mysk_co afirmó lo siguiente:

  • Los detalles de su cuenta 2FA, incluidas las semillas, no estaban encriptados dentro de sus paquetes de red HTTPS. En otras palabras, una vez que se elimina el cifrado de nivel de transporte después de que llega la carga, sus semillas están disponibles para Google y, por lo tanto, por implicación, para cualquier persona con una orden de búsqueda de sus datos.
  • No hay una opción de frase de contraseña para cifrar su carga antes de que salga de su dispositivo. Como señala el equipo de @mysc_co, esta función está disponible cuando se sincroniza información de Google Chrome, por lo que parece extraño que el proceso de sincronización 2FA no ofrezca una experiencia de usuario similar.

Aquí está la URL inventada que generaron para configurar una nueva cuenta 2FA en la aplicación Google Authenticator:

 otpauth://totp/Twitter@Apple?secret=6QYW4P6KWAFGCUWM&issuer=Amazon

Y aquí hay una captura de paquetes del tráfico de red que Google Authenticator sincronizó con la nube, sin el cifrado de seguridad de nivel de transporte (TLS):

Tenga en cuenta que los caracteres hexadecimales resaltados coinciden con los 10 bytes de datos sin procesar que corresponden al "secreto" de base 32 en la URL anterior:

 $ luax Lua 5.4.5 Copyright (C) 1994-2023 Lua.org, PUC-Rio __ ___( o)> <_. ) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~ Se agregaron los módulos favoritos de Duck en package.preload{} > b32seed = '6QYW4P6KWAFGCUWM' > rawseed = base.unb32(b32seed) > rawseed:len() 10 > base.b16(rawseed) F4316E3FCAB00A6152CC

¿Qué hacer?

Estamos de acuerdo con la sugerencia de @mysk_co, que es, "Recomendamos usar la aplicación sin la nueva función de sincronización por ahora".

Estamos bastante seguros de que Google agregará una función de frase de contraseña a la función de sincronización 2FA pronto, dado que esta función ya existe en el navegador Chrome, como se explica en las propias páginas de ayuda de Chrome:

Mantén tu información privada

Con una frase de contraseña, puede usar la nube de Google para almacenar y sincronizar sus datos de Chrome sin permitir que Google los lea. […] Las frases de contraseña son opcionales. Sus datos sincronizados siempre están protegidos por encriptación cuando están en tránsito.

Si ya ha sincronizado sus semillas, no se asuste (no se compartieron con Google de una manera que facilite que alguien más los husmee), pero deberá restablecer las secuencias 2FA para cualquier cuenta que ahora decida que probablemente debería haber guardado para usted .

Después de todo, es posible que haya configurado 2FA para servicios en línea, como cuentas bancarias, donde los términos y condiciones requieren que guarde todas las credenciales de inicio de sesión, incluidas las contraseñas y las semillas, y que nunca las comparta con nadie, ni siquiera con Google.

Si tiene la costumbre de tomar fotos de los códigos QR para sus semillas 2FA de todos modos, sin pensarlo demasiado, te recomendamos que no lo hagas.

Como nos gusta decir en Naked Security: En caso de duda / No lo des.

Los datos que guarda para usted no se pueden filtrar, robar, citar ni compartir con terceros de ningún tipo, ya sea de forma deliberada o por error.


Actualización. Google tiene respondió en Twitter al informe de @mysk_co al admitir que lanzó intencionalmente la función de sincronización de cuenta 2FA sin el llamado cifrado de extremo a extremo (E2EE), pero afirmó que la empresa ha "planea ofrecer E2EE para Google Authenticator en el futuro". La empresa también afirmó que “la opción de usar la aplicación sin conexión seguirá siendo una alternativa para aquellos que prefieren administrar ellos mismos su estrategia de copia de seguridad”. [2023-04-26T18:37Z]


punto_img

Información más reciente

punto_img