
El software que utiliza la policía para entrar en tu smartphone ha sido examinado por un equipo dirigido por el fundador de Signal, Moxie Marlinspike. Han encontrado graves agujeros de seguridad y quizá estrategias ilegales.
Moxie Marlinspike, creador de Signal y hacker de sombrero blanco, afirma en una entrada de su blog en la que promociona su comunicador Signal que surgió de la nada (Google Android y Apple iOS). Se refiere a un kit de análisis elaborado por la empresa de software Cellebrite que ha generado una gran polémica. Moxie y su grupo examinaron a fondo el software. Han descubierto importantes agujeros de seguridad en el proceso. Signal amenaza ahora con utilizar estas lagunas en su beneficio.
Fundada en Petah Tikva, Cellebrite es una empresa israelí de software. Fundada en 1999 por Avi Yablonka, Yaron Baratz y Yuval Aflalo, la empresa es conocida por su experiencia en el seguimiento y la gestión de dispositivos móviles. Policías y gobiernos de todo el mundo confían en sus productos de software, “Physical Analyzer” y “UFED”. En teoría, no podrás hacerte con este programa, y su funcionamiento interno sigue siendo un misterio. Los procesos de extracción y búsqueda de datos de los teléfonos inteligentes son posibles gracias al “Physical Analyzer” y al “UFED”. Moxie Marlinspike explica que, para que esto ocurra, el usuario de Cellebrite debe estar en posesión física del smartphone en cuestión. Cellebrite imposibilita el acceso a la información a través de la web o de redes celulares.
Cellebrite es una marca vinculada a regímenes autoritarios que no valoran mucho las libertades individuales. Los regímenes autoritarios de Bielorrusia, Rusia, Venezuela y China se encuentran entre sus clientes, al igual que los escuadrones de la muerte de Bangladesh y las juntas militares de Myanmar, así como los de Turquía, Emiratos Árabes Unidos y otros países que pretenden maltratar y oprimir a sus ciudadanos, como detalla Moxie. La empresa israelí había declarado anteriormente que Cellebrite sería compatible con la aplicación Signal. Moxie aseguró rápidamente a sus clientes que Cellebrite no podría descifrar sus comunicaciones cifradas. El artículo era breve y conciso, y resumía el proceso de “abrir la aplicación, ver los mensajes” automatizado por Cellebrite en un smartphone desbloqueado.
Debe comprender algunas terminologías e ideas para entender plenamente lo que Moxie Marlinspike consiguió y por qué ningún sistema legal puede o debe utilizar el software de Cellebrite como prueba de buena fe.
UFED
UFED es un programa de Cellebrite. Afirma burlar el PIN, los patrones y las contraseñas de dispositivos bloqueados de forma “legal”. Los múltiples procesos de recopilación de datos pretenden contextualizar los datos recopilados “legítimamente” y reconstruir información adicional a partir de lo descubierto. Para ello, la UFED debe tener acceso “legítimo” a un máximo de 40 aplicaciones. En su forma más fundamental, se trata de software de copia de seguridad. Lo que Cellebrite quiere que sepas es que todas sus acciones son legales. Previa solicitud, UFED se preinstala en portátiles robustos de Panasonic. Esto se hace para facilitar la escucha móvil de datos.
Analizador físico
La biblioteca de software de Cellebrite también incluye el Analizador físico. Interpreta la información recopilada por UFED y la muestra gráficamente. Moxie lo denomina “frontend to adb backup”, lo que significa que es una forma bonita de mostrar que se ha realizado una copia de seguridad de algo. Los datos de tu smartphone deben ser accesibles para el analizador físico, lo que significa que debe tener acceso de lectura. El acceso al modo de escritura es opcional, pero está incluido. Previa solicitud, Physical Analyzer puede enviarse con una estación de trabajo configurada a medida ya cargada con el programa. Esto debería reducir el tiempo que se tarda en procesar los datos rotos por el UFED. El UFED y Physical Analyzer suelen venderse juntos. No es habitual que un gobierno o un régimen compre un UFED sin pedir también un Analizador Físico. La mejor manera de describirlo es como una versión espía del paquete Microsoft Office.
ffmpeg
ffmpeg puede ser descargado y utilizado gratuitamente por cualquiera. Desde su creación en 2000, otras empresas de software han ampliado e integrado ffmpeg en docenas de sus propios proyectos. ffmpeg tiene muchos usos, como la conversión de vídeo, el recorte y la edición de audio. En el ámbito de la seguridad informática, ffmpeg se ha ganado la reputación de revelar y solucionar rápidamente numerosas vulnerabilidades. Aunque existen muchos fallos de seguridad, esto no indica que el software sea necesariamente peligroso. Ni mucho menos. Además, puede dar fe de la naturaleza abierta y colaborativa del proceso de desarrollo del proyecto ffmpeg. Ahora hay 355 vulnerabilidades conocidas, como se documenta en la lista de MITRE. En principio, todas deberían estar parcheadas. Si confía en ffmpeg, debería utilizar siempre la versión más reciente del programa.
Ejecución arbitraria de código
Una de las tácticas empleadas por los ciberdelincuentes es la ejecución arbitraria de código, también conocida como inyección arbitraria de código. Aprovechando un agujero de seguridad, un hacker puede forzar a un programa a ejecutar código malicioso. Dependiendo de cómo esté escrito, el código puede hacer cualquier cosa, desde limitarse a mostrar un mensaje de error hasta robar información confidencial como contraseñas y números de tarjetas de crédito. Este alfabeto inventado se conoce a veces como “código particular”. Para usar un término técnico, está formateado de “manera inesperada”. Esto ocurre cuando el programa susceptible recibe datos para cuyo procesamiento no ha sido diseñado, lo que provoca que se comporte de forma errática. Le pondré un ejemplo: si teclea algún tipo de código en un cuadro de búsqueda, verá un aviso de error.
Fuentes fiables/no fiables
En el contexto de los programas informáticos, el término fuentes “fiables” o “no fiables” describe la fiabilidad de una fuente de información determinada. Debe existir confianza mutua entre los programas A y B para que puedan comunicarse. Por lo general, los programas coinciden en que “Sí, confío en que no harás nada malo con mis datos”, lo cual es una suposición razonable. El programa A puede confiar sus datos a otro programa en el que no confía plenamente. Por eso las llamamos fuentes “poco fiables” o “turbias”. En general, los usuarios de smartphones son los que más recurren a la dicotomía fuentes fiables/no fiables. Se puede confiar en que las aplicaciones descargadas de la App Store son seguras. La fuente es sospechosa si la cargas lateralmente, lo que significa que la has instalado tú mismo o la has obtenido de una tienda no oficial. A menos que el usuario lo autorice, el software no suele permitir la comunicación con fuentes desconocidas o no fiables.
El estudio de Moxie descubrió múltiples vulnerabilidades. Hay dos factores en juego:
- La seguridad del propio software de Cellebrite no parece ser una prioridad absoluta.
- Todo el hardware y el software identifican el spyware de Cellebrite como “no fiable”. Esto se debe al hecho de que UFED y Physical Analyzer deben funcionar como “no fiables” incluso a un nivel fundamental. Dado que las copias de seguridad no autorizadas y el descifrado no son funciones que los creadores de iOS de Apple o Android de Google hayan integrado en sus sistemas operativos, ningún fabricante de teléfonos inteligentes admitirá la capacidad de los productos de Cellebrite.
Casi todo el código de Cellebrite, según Moxie, “existe para analizar entradas no fiables […]”.
Cellebrite puede enfrentarse a graves repercusiones legales simplemente por la clasificación del software como no fiable. Dado que los resultados no pueden creerse si el procedimiento de extracción de datos es “no fiable”, su integridad es de suma importancia en el contexto de las pruebas fiables. Si dicho software pretendiera alcanzar el máximo nivel de integridad de los datos, debería mantenerse actualizado en todo momento. Sin embargo, Moxie encontró en el código partes de ffmpeg fechadas hacia 2012. Esto ya ha hecho posible que se lleven a cabo todo tipo de atracos con la salida de datos de Cellebrite.
Además, Team Signal ha encontrado AppleMobileDeviceSupport6464.msi y AppleApplicationsSupport64.msi dentro del paquete de Cellebrite. Algo obviamente levantado del instalador de Windows iTunes para la versión 2018 12.9.0.167 por la empresa israelí. Esto está terminantemente prohibido para Cellebrite. Apple valida la autenticidad de sus datos y las identidades de quienes están autorizados a acceder a ellos, así como los parámetros bajo los cuales se permite dicho acceso. Extrapolando la postura de Apple sobre la privacidad de los datos, podemos afirmar con seguridad que Cellebrite ha utilizado estos archivos sin autorización. Es importante ser “legítimo”, recalca el sitio web de Cellebrite. Si Apple decide demandar a Cellebrite, esto podría tener repercusiones.
Moxie ha encontrado al menos una vulnerabilidad de ejecución arbitraria de código. En caso de que un pirata informático encuentre un fallo de este tipo, puede aprovecharse de él de varias maneras. Con la ayuda de Cellebrite, Moxie ha automatizado este procedimiento. El software de Cellebrite descifra fácilmente la codificación arbitraria, por lo que el Analizador Físico y el UFED pueden leer y trabajar con esos archivos sin problemas. Esos datos pueden integrarse en cualquier programa. Peor aún; con un solo archivo, Moxie puede alterar todos y cada uno de los informes generados por el software de Cellebrite. Y no sólo el informe actual, sino también todos los informes pasados y futuros. Y todo ello sin provocar ninguna incoherencia en las comprobaciones de integridad. Esto significa que Moxie ha descubierto cómo almacenar información en UFED y Physical Analyzer. Esto rompe el programa por completo. Moxie demuestra en un vídeo cómo falsificar un mensaje de error de Cellebrite durante un análisis rutinario y luego muestra una cita de la película “Hackers”. Según la investigación de Moxie, los consumidores de Cellebrite que se preocupan por la precisión de sus escaneos deberían mantenerse alejados del producto de la compañía.
Los hackers de sombrero blanco, según Moxie Marlinspike y Signal, tienen mucha responsabilidad. Desean ayudar a las empresas a arreglar y mejorar su software. incluso si la causa de la miseria y la muerte es el software. Sin embargo, Signal ha condicionado su ayuda a que Cellebrite cumpla el siguiente requisito: “Naturalmente, si Cellebrite hace lo mismo con cualquier vulnerabilidad que emplee en su extracción física y otros servicios a sus respectivos proveedores, tanto ahora como en el futuro, compartiremos apropiadamente con ellos las vulnerabilidades exactas de las que tenemos conocimiento.”
Además, Moxie ha revelado que Signal pronto se adornará con archivos estéticos en “noticias totalmente ajenas”. Estos archivos están ahí únicamente para hacer la aplicación más atractiva visualmente; no están destinados a interactuar de ninguna manera con la funcionalidad de Signal. Signal ha anunciado incluso la distribución de numerosos archivos, esencialmente distintos, en aplicaciones instaladas al azar. Pero Moxie nos informa de que todas son atractivas. Afirma: “La estética es vital en el software”. Si aún no lo tienes, existe la posibilidad de que Signal venga pronto preinstalado con los archivos necesarios para hackear Cellebrite.
Traducción del inglés, el artículo original puede encontrarse aquí: Hacking Cellebrite with Signal: giving spy software a deadline