¿Zoom utiliza el cifrado de extremo a extremo? – Algunas reflexiones sobre la ingeniería criptográfica.


TL; DR: Es complicado.

Ayer Zoom (la compañía de videoconferencia, no la telecomunicaciones fallecidas) publicó un mensaje de aclaración describiendo sus prácticas de encriptación. Este es un buen ejemplo de una empresa que proporciona las aclaraciones técnicas necesarias durante un período difícil, aunque esto viene después crítica generalizada de la sociedad en su explicación anterior, y francamente un poco engañoso.

Desgraciadamente, Citizenlab acaba de lanzar algunos de sus propios resultados que se basan en la ingeniería inversa del software Zoom. Esto plantea preocupaciones adicionales de que Zoom no está 100% seguro del nivel de seguridad de extremo a extremo que su servicio realmente ofrece.

Esta situación deja a los usuarios de Zoom con un poco de enigma: ahora que todos en el mundo confían en este software para muchos objetivos críticos, ¿debemos confiar en él? En esta publicación esencialmente no técnica, voy a hablar sobre lo que sabemos, lo que no sabemos y por qué es importante.

Cifrado de extremo a extremo: el explicador más corto del mundo

La controversia en torno a Zoom proviene del material de marketing engañoso que podría haber llevado a los usuarios a creer que Zoom ofrece "cifrado de extremo a extremo", o E2E. La idea básica del cifrado E2E es que cada punto final: por ejemplo., un cliente Zoom que se ejecuta en un teléfono o computadora: mantiene sus propias claves de cifrado y solo envía datos cifrados a través del servicio.

En un sistema verdaderamente E2E, los datos se cifran para que el proveedor de servicios realmente no puedo descifrarlo, incluso si él quiere. Esto garantiza que el proveedor de servicios no pueda leer sus datos, ni a nadie que piratee el proveedor de servicios o su proveedor de servicios en la nube, etc. Idealmente, esto incluiría varias agencias de inteligencia nacionales, lo cual es importante en el improbable caso de que comencemos a usar el sistema de conducción. asuntos gubernamentales sensibles.

Aunque el cifrado de extremo a extremo no necesariamente detiene todos los ataques posibles, es la mejor manera de crear sistemas de comunicación seguros. También tiene un buen historial en la práctica. Videoconferencia como Apple FaceTimey las aplicaciones de mensajería como WhatsApp y Signal ya usan regularmente este tipo de cifrado para proteger su tráfico, y funciona.

Zoom: las buenas noticias

La buena noticia de la reciente publicación del blog de Zoom es que, si tomamos la palabra de la compañía, Zoom ya ha hecho algunas el progreso hacia la construcción de una aplicación de videoconferencia cifrada de extremo a extremo real. Específicamente, Zoom quejas este:

(En una reunión donde todos los participantes usan clientes Zoomy la reunión no está registrada, ciframos todo el contenido de video, audio, uso compartido de pantalla y chat en el cliente emisor, y no lo descifres en cualquier momento antes de que llegue a los clientes de destino.

Tenga en cuenta que el foco está en mí. Estas secciones representan advertencias importantes.

Tomado literalmente, esta declaración parece disipar cualquier preocupación sobre la seguridad de Zoom. Indica que el cliente de Zoom, es decir, el software de Zoom real que se ejecuta en un teléfono o computadora de escritorio, es capaz cifre datos de audio / video a otros clientes de Zoom en la conversación, sin exponer sus datos confidenciales a los servidores de Zoom. Este no es un problema técnico trivial para resolver, así que gracias a Zoom por hacer el trabajo de ingeniería.

Desafortunadamente, las advertencias son bastante importantes. Y ahí es básicamente donde terminan las buenas noticias.

El "inevitablemente malo"

Las advertencias más simples ya están presentes en la declaración Zoom anterior. Zoom proporciona una serie de servicios de valor agregado, que incluyen "grabación en la nube" y soporte para llamadas de conferencia entrantes. Desafortunadamente, cada una de estas características es fundamentalmente incompatible con el cifrado de extremo a extremo.

Zoom admite estos servicios de manera bastante racional. Cuando estos servicios están activos, proporcionan una serie de "puntos finales" dentro de su red. Estos puntos finales actúan como clientes normales de Zoom, lo que significa que participan en su conversación grupal y obtienen las claves para descifrar y acceder a los datos de audio / video: ya sea para guardarlos o para cambiar a Teléfonos normales.

En teoría, no es tan malo. Incluso un sistema cifrado de extremo a extremo puede eventualmente habilite estas características: un usuario (por ejemplo, el anfitrión de la conferencia) simplemente podría enviar sus claves de cifrado a un punto final de Zoom, lo que les permitirá unirse a la llamada. Esto representaría una posible pérdida de seguridad, pero al menos los usuarios tomarían la decisión ellos mismos.

Desafortunadamente, en el sistema Zoom, la decisión de compartir las claves puede no dejarse completamente en manos de los usuarios. Y ahí es donde Zoom se pone un poco aterrador.

AKA gestión de claves

La verdadera magia en un sistema cifrado de extremo a extremo no es necesariamente cifrado. Más bien, es el hecho de que las claves de descifrado nunca salen de las terminalesy, por lo tanto, nunca están disponibles para el proveedor de servicios.

(Si necesita una analogía estúpida aquí, pruebe esta: la disponibilidad clave es como la diferencia entre mí cuando no lo hagas tener acceso a un pastel de queso y a mí cuando hay un pastel de queso en mi refrigerador).

Entonces, la pregunta que todos deberíamos hacernos es: ¿Zoom tiene acceso a las claves de descifrado? Sobre este tema, la publicación del blog de Zoom se vuelve exasperante agitar:

Zoom actualmente mantiene el sistema de gestión de claves para estos sistemas en la nube. Lo más importante, Zoom ha implementado controles internos robustos y validados para evitar el acceso no autorizado a cualquier contenido que los usuarios compartan durante las reuniones, incluidos, entre otros, video, audio y chatear desde estas reuniones.

En otras palabras: se parece mucho a cómo Zoom tiene acceso a las claves de descifrado.

Afortunadamente, no tenemos que esperar a Zoom para aclarar sus respuestas a esta pregunta. Bill Marczak y John Scott-Railton en CitizenLab lo hicieron por nosotros, realizando ingeniería inversa y observando de cerca el protocolo Zoom en funcionamiento. (Trabajé con Bill y su velocidad en REing me sorprende).

Lo que encontraron debería hacer que tu cabello se rizara:

De manera predeterminada, todos los participantes de audio y video en una reunión de Zoom parecen estar encriptados y desencriptados con una sola clave AES-128 compartida entre los participantes. La clave AES parece ser generada y distribuida a los participantes de la reunión por los servidores de Zoom.

Además, durante varias llamadas de prueba en América del Norte, observamos claves de cifrado y descifrado de reuniones transmitidas a servidores en Beijing, China.

En resumen, los clientes de Zoom pueden cifrar sus conexiones, pero Zoom genera las claves de comunicación, a veces en el extranjero, y se las entrega a los clientes. Esto permite que Zoom agregue fácilmente participantes y servicios (por ejemplo, grabación en la nube, telefonía) a una conversación sin ninguna acción del usuario.

Desafortunadamente, esto también permite a los piratas informáticos o una agencia de inteligencia del gobierno acceder fácilmente a estas claves. Esto es problemático

La buena noticia

De la información limitada en los artículos de Zoom y Citizenlab, la buena noticia es que Zoom ya ha sentado las bases para crear un servicio verdaderamente cifrado de extremo a extremo. En otras palabras, muchos de los problemas difíciles ya se han resuelto.

(Nota: Zoom tiene otros defectos criptográficos, como el uso de Cifrado del BCE, eek, pero en comparación con los principales problemas de administración, esta es una infracción de tráfico menor).

Lo que Zoom necesita ahora es implementar un nuevo método muy rápidamente para acordar las claves de sesión criptográficas, de modo que solo los participantes legítimos tengan acceso a ellas. Afortunadamente, este problema de "intercambio de clave de grupo" es relativamente fácil de resolver, y se ha escrito un número casi infinito de artículos sobre el tema.

(La solución ingenua es simplemente obtener las claves de cifrado públicas de cada cliente participante y luego hacer que el anfitrión de la reunión cifre una clave de sesión AES aleatoria para cada una, cortando así los servidores Zoom del bucle.)

No será una panacea, por supuesto. Incluso el intercambio de claves de grupo seguirá sufriendo ataques potenciales si los servidores de Zoom son maliciosos. Todavía será necesario autenticar la identidad y la clave pública de los diferentes clientes que se unen al sistema, porque un proveedor malintencionado, o forzado por un gobierno, simplemente puede modificar las claves públicas o agregar clientes no autorizados a una conversación. (Algunos occidentales agencias de inteligencia ya he ofrecido hacer esto en la práctica.) Habrá muchos problemas difíciles de UX aquí, muchos de los cuales no se han resuelto incluso en sistemas E2E maduros.

También debemos asegurarnos de que el software del cliente Zoom sea confiable. Toda la encriptación de extremo a extremo en el mundo no nos salvará si hay una falla en el software de punto final. Y hasta ahora, Zoom nos ha dado algunos razones para estar preocupado sobre eso

Aún así: lo perfecto es enemigo de lo bueno, y la buena noticia es que Zoom debería poder mejorar.

¿Somos injustos con Zoom?

Me gustaría terminar diciendo que muchas personas están haciendo lo mejor que pueden en un momento muy difícil. Esto incluye a los ingenieros de Zoom, que enfrentan una ola de usuarios sin precedentes y de alguna manera logran evitar que su servicio se caiga. Se merecen mucho crédito por esto. Parece casi injusto criticar a la compañía en este momento debido a preocupaciones hipotéticas de seguridad.

Pero al final del día, esto es importante. El objetivo aquí no es ganar puntos contra Zoom, es hacer que el servicio sea más seguro. Y al final, beneficiará a Zoom tanto como a todos los demás.



Source link