Signal ya no es seguro (y puede que nunca lo fuera)
En la sociedad post-Snowden, la esperanza de vida del software de seguridad es corta. Hay numerosos motivos para esta rápida renovación: un mercado extremadamente competitivo, una gran comunidad de organizaciones, instituciones y especialistas dedicados a la auditoría de este tipo de programas y otra comunidad aún más grande de agencias de inteligencia, hackers y apandadores digitales dispuestos a desmantelar cualquier cosa que tenga un cerrojo con intenciones que van desde la vigilancia de grupos terroristas al lucro más desvergonzado. Los ciclos de renovación son cada vez más cortos. El de Signal parece haber llegado a su fin.
La famosa aplicación de OpenWhisperSystems para Android y iOS era hija de dos aplicaciones anteriores, TextSecure y RedPhone. Su puesta de largo coincidió con el momento de efervescencia en torno al ex analista de la CIA Edward Snowden, que llegó a decir que todas las aplicaciones de la empresa eran de fiar. Desde el punto de vista de la comunidad infosec, ofrecía un servicio sin competencia: la comunicación estaba cifrada de terminal a terminal, la herramienta era de código abierto y la aplicación era tan fácil de instalar y de usar como WhatssApp o Telegram.
Cobertura, efectividad y sencillez. En principio, estos son los aspectos más importantes para que una herramienta criptográfica consiga la aprobación de la comunidad. Que el algoritmo sea sólido; en este caso el protocolo Perfect Forward Secrecy y un cifrado de lado a lado que precede a la conexión a la Red. Que sea software libre o -al menos- de código abierto es esencial para ser auditada por organizaciones, instituciones, especialistas, activistas y hackers de todo el mundo. Si no, no podemos saber lo que hace exactamente o si lo hace bien. Un solo error invalida la herramienta entera, porque la seguridad en las comunicaciones es binaria: una comunicación es completamente segura o es completamente insegura.
Otro aspecto esencial es la sencilez. Una herramienta puede estar blindada herméticamente pero ser tan difícil de usar que el usuario tiene que ser programador para utilizarla correctamente sin poner en peligro la seguridad de las comunicaciones, como ocurre con la criptografía de clave pública. Un software tan abierto y a la vez tan hermético es difícil de encontrar. En ese sentido, Signal parecía un unicornio. Pero otras decisiones han hecho que parte de la comunidad de activistas contra la vigilancia les haya dado la espalda.
Un problema llamado Google
El primer y principal problema es que Signal usa números de teléfono como sistema de identificación. No hay que ser hacker para entender que un número de teléfono es un dato valioso, asociado a muchos otros datos. Y en el caso de Signal, también es así porque requiere Google Play Services para ser instalado. Eso significa ya para empezar que cada usuario de Signal está registrado en una base de datos junto con mucha otra información, como su número o su geolocalización constante. Peor aún, dentro de la dependencia de Android hay una dependencia concreta de Google Cloud Messaging (GCM).
Los mensajes que se envían desde Signal no son gestionados por el servicio de mensajería en nube de Google, aunque en su versión anterior Textsecure sí que lo hacían. La relación es más indirecta. Por la arquitectura del propio Android, Signal necesita “despertar” al sistema operativo del teléfono enviando un mensaje vacío a través de GCM antes de empezar a mandar sus mensajes, usando sus propios servidores. Parece un agujero muy pequeño. Pero, en el mundo de la seguridad, ese es el agujero de la aguja por el que puede pasar un camello.
Hace unos meses, WhatsApp decidió usar el protocolo de Signal para ofrecer protección criptográfica de terminal a terminal. Esto está muy bien, porque protege los datos del usuario, el contenido de su conversación. Lamentablemente, la conversación misma queda registrada en los servidores. Los metadatos -quién habla con quién, desde dónde y durante cuánto tiempo- son tanto o más importantes que el contenido de la conversación. Por ejemplo, el registro de mensajes entre dos terminales podría delatar una conversación entre un periodista y su fuente. Dependiendo del contexto, ese metadato podría costarle la vida.
Técnicamente, los metadatos de Signal no se registran pero su integración en el sistema y su comunicación con su GCM es un vaso comunicante entre el software de Google y el de OpenWhisperSystems. Sabemos que Google tiene la llave maestra -el acceso root o de administrador- a todos los rincones del Android. Y conocemos su historial de colaboración con la NSA en proyectos como PRISM y otros casos sonados de acceso indiscriminado a los datos aparentemente protegidos de sus propios usuarios. En este artículo no vamos a hablar de los problemas de dependencia con iTunes porque nadie que tenga un iPhone está preocupado por la seguridad.
LibreSignal, la alternativa frustrada
Hasta hace poco, había una manera de evitar estas vulnerabilidades y era usar LibreSignal, una modificación de la herramienta creada fuera de la empresa y desvinculada del entorno de Google y sus dependencias. Lo que ocurre es que no es tan fácil de instalar como la herramienta primigenia y requiere un entorno especial que los teléfonos no traen de fábrica. Además, el pasado mayo, Moxie Marlinspike, comandante en jefe de WhisperSystems, dijo que no dejarían que LibreSignal usara sus servidores ni su nombre, con el argumento de que ralentizaba el desarrollo de su herramienta y su protocolo. Eso significa que LibreSignal es incompatible con Signal y que los usuarios de uno y otro no se pueden comunicar. Un planteamiento muy alejado del espíritu del software libre, amigo de las herramientas multiplataforma como Jabber/XMPP.
La segunda son las llamadas. Aunque Signal permite hacer llamadas, al igual que WhatssApp, el código que lo hace posible es el de RedPhone, y ese código no está abierto al público. Sin ver el código, no podemos saber lo que hace, ni si lo hace bien. Si un periodista usa Signal para llamar a una de sus fuentes y alguien intercepta y desencripta esas conversaciones, los interlocutores no sabrán que el software les ha fallado hasta que alguien vaya a por sus fuentes y las meta en la cárcel o las mate. No tiene sentido correr riesgos con herramientas que funcionan como una caja cerrada.
Signal es solo una de las muchas herramientas clave que han entrado en tiempo de descuento en los últimos meses. La otra es TOR, un caso mucho más sonado y complejo porque es el corazón de muchas otras tecnologías clave, cuya comunidad está en medio de una crisis que parece un culebrón. Al principio contó con la bendición y el apoyo de algunos de los expertos más respetados del medio como Edward Snowden, Laura Poitras, la oscarizada directora de CitizenFour o Bruce Schneier, jefe del Counterpane Internet Security. Hoy tendrá que extender lazos con su versión libre de Google o ver cómo sus usuarios se mudan a ChatSecure.