Análisis de la plataforma WhatsApp y comparación con la plataforma Signal

(Para Alessandro Fiori y Alessandro Rugolo)
30/04/20

Con este artículo queremos presentar un estudio sobre la plataforma WhatsApp y los riesgos asociados con ella. También intentamos hacer una comparación con la plataforma Signal.

Aunque parcial, sigue siendo un estudio muy complejo. Con este prefacio presentamos los resultados del análisis para proporcionar al lector apresurado o inexperto una idea aproximada de lo que se ha hecho.

Como primer paso, se realizó un estudio sobre el protocolo de encriptación utilizado por Whatsapp. El análisis reveló que el nivel de cifrado es lo suficientemente alto para el usuario medio.
Para la naturaleza fuente cerrada de la plataforma, el caso Cambridge Analytica y el comportamiento de Facebook con respecto al tratamiento de datos, no se recomienda su uso en un entorno clasificado o si la información se considera de alto valor (patentes, secretos comerciales, etc.). Para estas áreas, que obviamente no pertenecen al mercado "consumidor", es necesario que yo vendedor ellos mismos pueden ofrecer garantías adecuadas en cuanto a seguridad, privacidad, cumplimiento y procesamiento de datos. Estas garantías, además de estar presentes a nivel técnico, también deben estar reguladas a nivel contractual con el vendedor mismo.

Al analizar la red y las direcciones IP contactadas por la aplicación, surgió que muchos archivos maliciosos, con el tiempo, contactaron a los servidores de la plataforma. Esto se debe a la gran difusión de la aplicación de mensajería y al hecho de que en realidad es fácil modificar el cliente web para transmitir ataques a otros usuarios.

El análisis incluye un ejemplo de vulnerabilidad, ahora resuelta, con respecto a este tipo de modificación de la cliente web. Comparando esto con la plataforma Signal, Whatsapp Presenta un mayor riesgo.

Un riesgo adicional debido a la naturaleza. fuente cerrada de la aplicación, es la posible implementación del llamado "Protocolo Fantasma" que consiste en la presencia de un usuario invisible de terceros, que (siendo parte de la conversación) puede recibir mensajes de todos los interlocutores.
En el estudio "Chiffrement de messagerie casi instantanée: à that protocole se vouer?"1, publicado por Florian Maury en 2017, se explica que el protocolo Signal no es exactamente tan abierto como parece y para garantizar una mayor seguridad del usuario, lo ideal sería usar el protocolo OMEMO.

A continuación se muestra una comparación resumida:

Casi instantáneo: Analiza la calidad del cifrado aplicado a la mensajería instantánea
descentralización: Analiza cuán descentralizadas son las plataformas bajo análisis
PFS: Analiza la efectividad de la implementación de Perfect Forward Secrecy por parte de la plataforma analizada
repudio: Propiedad de un cifrado que permite a un usuario negar que haya enviado un mensaje
identificadores: Indica la posibilidad de rastrear la identidad del usuario (por ejemplo, para Signal es baja porque usa el número de móvil como identificador).
encriptación: Indica la calidad del sistema criptográfico y su implementación en el software.
Implementaciones gratuitas: Indica si existen implementaciones de código abierto del software
Especificaciones públicas: Indica si todas las especificaciones de software son públicas y están fácilmente disponibles.
Sistema de gestión de claves: Indica la fiabilidad del sistema de gestión de claves, como el intercambio de claves.
Distribución: Indica cuán extendido es un software específico o un sistema criptográfico aplicado a la mensajería instantánea.

Del análisis de los puertos utilizados por la aplicación. Whatsapp, se encontró el uso de un puerto no estándar. Esto expone a los usuarios a posibles riesgos tanto en caso de control del tráfico de la red, como en caso de que haya un atacante activo, que puede concentrar sus esfuerzos solo en el servicio. no estándar.

El análisis también mostró lo fácil que es recuperar las claves y la base de datos de mensajes desde un dispositivo, por supuesto, esto está sujeto a la posibilidad de acceso físico al dispositivo.

Se encontró como enlaces de invitación a grupos de Whatsapp están indexados en Google, exponiendo a los usuarios a un riesgo importante para la confidencialidad de las comunicaciones.

Comparando lo analizado con la plataforma Signal, se ha encontrado que Signal, dada su naturaleza De código abierto (con las debidas reservas), generalmente se considera más robusto que Whatsapp.

También se tuvo en cuenta un caso real de solicitud de datos por parte de un Estado, y fue posible demostrar cómo, precisamente por la naturaleza habiertos de la aplicación, la misma es nuevamente más robusta que Whatsapp. Sin embargo, debe decirse que pocas personas pueden analizar y verificar el código completo de la aplicación, por lo tanto, el riesgo puede considerarse mitigado, pero no eliminado.

Se ha encontrado que las amenazas sistémicas como el "Protocolo Fantasma" son más difíciles de implementar en la aplicación.
El análisis de Signalen cambio, mostró la presencia de muchos menos archivos maliciosos que Whatsapp, pero esto podría deberse a la diferencia en el número de usuarios activos en las plataformas respectivas.

Se ha encontrado que, aunque es más difícil, incluso para Signal En caso de posibilidad de acceso físico al dispositivo, existe la posibilidad de eludir las medidas de seguridad de los sistemas operativos móviles modernos a través de un software especialmente creado.

Si se espera su uso en un entorno peligroso, donde puede haber un riesgo de acceso físico al dispositivo por parte de personas externas, no se deben usar ambas plataformas..

En conclusión, en el caso de que no exista riesgo de acceso físico al dispositivo o se espere que el oponente no tenga los medios necesarios para usar ciertos controles o software, recomendamos utilizar la plataforma Signal, para uso común, el uso de ambas plataformas es aceptable.

Recordamos a todos que todos los análisis presentados se realizan desde el exterior, es decir sin conocer el estado interno de las plataformas y sistemas. Por lo tanto, los riesgos relacionados con archivos maliciosos podrían ser el resultado de falsos positivos. El razonamiento utilizado para realizar este análisis es del tipo "caja negra" externa, es decir, sin conocer la estructura de la plataforma.
Este es el esquema de razonamiento utilizado (replicable en todos los análisis externos de recuadro negro).
Análisis de plataforma Whatsapp y comparación con la plataforma Signal.

RESUMEN

Introducción
Descripción del protocolo Whatsapp
Consideraciones adicionales sobre cómo Whatsapp
Análisis Whatsapp
Conclusiones sobre el análisis de Whatsapp
Análisis Signal
Conclusión Análisis de señales y comparación con Whatsapp
Referencias

Introducción

Whatsapp Es la aplicación de mensajería instantánea más utilizada en el mundo.
Este análisis sirve para comprender el nivel de seguridad de la plataforma, destacando los puntos débiles.
Dado que la Plataforma tiene una gran base de usuarios, una falla de seguridad atraería a más atacantes que otras Plataformas y esto podría tener mayores repercusiones en los usuarios. 
Uno podría pensar que un sistema tan extendido no tuvo problemas de seguridad, pero no es así, por citar un ejemplo, informamos una vulnerabilidad, ahora resuelta, que permitió la lectura de archivos o la ejecución de código en el dispositivo de la víctima:
https://www.perimeterx.com/tech-blog/2020/whatsapp-fs-read-vuln-disclosure/

Whatsapp tiene un modelo operativo cliente / servidor de este tipo:
Cliente (Aplicación) → Transporte de paquetes cifrados → Servidor (Plataforma)

El Cliente es una aplicación, por lo tanto, el análisis se realizará a través de un método que le permite verificar la seguridad en los dispositivos móviles.
El transporte de datos se realiza de forma encriptada (de extremo a extremo) o desde el cliente emisor al cliente objetivo, sin que incluso la plataforma pueda leer el contenido.

Antes de describir el funcionamiento del protocolo, es necesario estudiar en profundidad las terminologías utilizadas, comenzando por las claves de cifrado.

¿Qué se entiende por "llaves"?:
Una clave criptográfica es información que sirve para "bloquear" o "desbloquear" funciones criptográficas.
No piense en la clave criptográfica como una contraseña, sino como una clave física: la clave física, para ser utilizada, necesita su bloqueo.
Del mismo modo, la clave criptográfica le permite "activar" el algoritmo criptográfico específico para el tipo de clave y, por lo tanto, le permite "cifrar" o "descifrar" los datos.
En el caso del algoritmo bajo análisis, se genera un par de claves, una pública y una privada.
La clave pública debe ser distribuida, mientras que la clave privada debe ser mantenida por el usuario.
Dado que las claves públicas están disponibles para todos, el remitente del mensaje cifra el mensaje con la clave pública del destinatario.
Una vez que el mensaje ha sido cifrado, solo el destinatario puede descifrarlo porque solo él tiene la clave privada.
Este tipo de algoritmo se llama "algoritmo de cifrado asimétrico" porque, de hecho, se necesitan dos claves (pública del destinatario para cifrar y privada del destinatario para descifrar).
En nuestro caso, tenemos un tipo de cifrado de 128 bits donde el número de bits representa la longitud de la clave.
Cuanto más larga sea la clave, más difícil será en retrospectiva para un atacante recuperarla o "forzarla".
Para una comprensión más profunda de las claves y algoritmos de cifrado utilizados por Whatsapp, consulte “Referencia 1: claves y algoritmos utilizados por WhatsappPresente al final del estudio.
Descripción del protocolo Whatsapp

Pasemos ahora a descripción del protocolo real, en cada fase:

registro;
Creación de una sesión encriptada;
Recibir una nueva sesión encriptada;
Intercambio de mensajes;
Transmisión de medios;
grupos;
Las llamadas telefónicas.

1 - Registro
Al registrarse para el servicio, el Cliente (la Aplicación de Whatsapp) transmite al servidor la clave de identidad pública (par de claves de identidad), la clave pública previamente firmada (clave previa firmada) y una serie de claves públicas (claves previas de una sola vez). El servidor almacena esta serie de claves públicas, asociadas con la ID de la cuenta.

Aunque el servidor no tiene acceso a las claves privadas, el cliente todavía tiene acceso a las claves privadas, pero como no es de código abierto, no es posible determinar el comportamiento de la aplicación instalada en el teléfono inteligente con respecto a las claves privadas. Este es un primer elemento de riesgo..

Existen riesgos asociados con la generación de claves aleatorias. Para generar las claves, el software (no solo Whatsapp) usan "generadores de números aleatorios", que en realidad son funciones que generan números pseudoaleatorios a partir de un valor inicial llamado "semilla" (semilla).
Si pasa la misma semilla inicial a un generador de números aleatorios, el software siempre generará la misma secuencia de números (ya que no es realmente aleatorio).
Para superar este problema, los PRNG (Generadores de números pseudoaleatorios) utilizan información diversa que es difícil de encontrar, como una combinación de fecha, hora, espacio restante en el disco y nombre del dispositivo, solo para dar un ejemplo.
Sin embargo, existe el riesgo de que un atacante pueda comprender cómo el PRNG genera valores pseudoaleatorios, logrando así regenerar las mismas claves, invalidando así el sistema criptográfico.

2 - Crear una sesión encriptada
Para comunicarse con otro usuario, el cliente debe generar una sesión cifrada con el otro cliente.
Una vez que se genera la sesión cifrada, el cliente no reinicia la sesión hasta que se reinstala la aplicación.
El documento2 eso explica que el protocolo de comunicación no habla de reinicialización de las claves, esto puede generar esta duda: ¿la inicialización de las claves ocurre solo en el PRIMER registro?
Para ser más claro, el documento habla de la "fase de registro".
En la siguiente sección (sesión cifrada) dice expresamente que los clientes no necesitan reconstruir una sesión cifrada hasta que se cambie el dispositivo o se reinstale la aplicación.
En consecuencia, no está claro si las claves privadas se regeneran REALMENTE tras la reinstalación o el cambio de dispositivo, o si se generan SOLO durante la fase de registro (en la práctica, cuando el servidor ve que nuestro número de teléfono no está presente en la base de datos de Usuarios) .
Si las claves privadas se generaron solo durante el registro, esto podría significar que el servidor puede conservarlas.
Para establecer una sesión, un cliente solicita las siguientes claves públicas del servidor:

Clave de identidad
Preclave firmada
Preclave de una sola vez

El servidor responde con datos.
Durante el registro, el cliente envía una serie de Preclave de una sola vez.
Al establecer una sesión cifrada, el servidor devuelve una sola clave previa única.
El servidor, junto con la respuesta, elimina la clave previa única que se devuelve al cliente.
Si no hay Preclaves de una sola vez, el servidor no envía la Preclave de una sola vez.
Una vez que se reciben las claves públicas, el cliente también puede cargar su propia clave de identidad para generar el llamado "master_secret".
Una "Clave de raíz" y las "Claves de cadena" relacionadas se generan a partir de "master_secret" (consulte la sección anterior, "sesiones cifradas").

3 - Recibir una nueva sesión encriptada
Una vez que se crea la sesión, el cliente puede comenzar a enviar mensajes al destinatario.
Hasta que el destinatario responda, el remitente incluye la solicitud para crear una sesión cifrada correspondiente en el encabezado del mensaje.
Para mayor claridad y para explicar qué es un encabezado, tome un sobre postal como ejemplo.
El encabezado son los datos que permiten que el sobre viaje correctamente al destino, como la dirección postal.
El contenido del sobre en sí se define como una "carga útil".
En nuestro caso, el encabezado se incluye en el mensaje y el usuario no lo muestra, mientras que la carga útil es el mensaje que el usuario envía al destinatario.
Una vez que se recibe la solicitud, el destinatario crea un "master_secret" correspondiente, elimina la "Preclave de un solo uso" utilizada por el remitente que generó por primera vez la sesión cifrada y calcula una "Clave raíz" y "Claves de cadena" relacionadas "master_secret".

4 - Intercambio de mensajes.
Una vez que se genera la sesión cifrada, los mensajes intercambiados se cifran con AES256 y HMAC-SHA256 para garantizar su autenticidad e integridad.
Para cada mensaje, se cambia la "Clave de mensaje" (ver arriba los tipos de claves utilizados para las sesiones cifradas).
La clave de mensaje es "efímera", es decir, se genera de tal manera que no se puede reconstruir a partir del estado de la sesión cifrada.
La clave del mensaje se deriva de la clave de cadena del remitente.
En cada intercambio de mensajes, la clave de cadena también se regenera.
Esto garantiza el llamado "secreto directo".
Forward Secrecy o Perfect Forward Secrecy (PFS) es una propiedad que garantiza que si una clave a largo plazo (como una Clave de identidad) se ve comprometida, las sesiones generadas por esa clave siguen siendo seguras.

5 - Transmisión de medios
Todos los archivos adjuntos de medios y mensajes están encriptados de extremo a extremo.
El remitente envía un mensaje generando una clave efímera AES256 y un efímero HMAC-SHA256.
El remitente cifra el archivo adjunto con AES256 con un IV aleatorio y cuelga al final, un HMAC-SHA256.
El remitente carga estos datos cifrados en un espacio especial.
El remitente envía al destinatario un mensaje cifrado normal, que contiene la clave de cifrado, la clave HMAC, un hash SHA256 que representa el archivo cargado y un puntero que le indica al destinatario dónde descargar el archivo cifrado.
El destinatario puede recibir el archivo y descifrarlo.
El documento, en esta parte, no se detiene en especificar cómo el destinatario descifra el archivo si el IV es aleatorio y no se ha transmitido.
El documento (página 6: "Medios de transmisión y otros archivos adjuntos") establece específicamente que el archivo adjunto se cifra con la clave de cifrado y el IV aleatorio, pero el IV no se menciona posteriormente.
Sería útil para los usuarios (al menos en algunas áreas sensibles) conocer el esquema de funcionamiento preciso de las diversas funciones.

6 - Gruppi
La primera vez que un usuario escribe en un grupo, el remitente genera una clave de cadena de 32 bytes.
El remitente genera un par de claves de firma Curve25519.
El remitente combina la clave de cadena de 32 bytes con la clave de firma pública, en un mensaje de tipo "clave de remitente".
La "Clave del remitente" se cifra y se distribuye individualmente a cada miembro del grupo.
Para todos los mensajes subsiguientes, el remitente calcula la clave de mensaje a partir de la clave de cadena y actualiza la clave de cadena.
El remitente encripta el mensaje con AES256.
El remitente "marca" el mensaje con la Clave de firma.
El mensaje cifrado se envía al servidor, que distribuye el mensaje a todos los miembros del grupo.
Si un usuario deja un grupo, todos los participantes eliminan la clave del remitente.

7 - llamadas telefónicas
Las llamadas de voz y las videollamadas se cifran de la siguiente manera:
La persona que llama genera una clave SRTP de 32 bytes.
SRTP (Protocolo de transporte seguro en tiempo real) es un protocolo que define un estándar para las comunicaciones de audio y video en tiempo real a través de Internet, garantizando la seguridad e integridad del transporte de datos.
La clave SRTP se envía al destinatario a través de un mensaje cifrado normal.
El destinatario puede establecer una llamada encriptada o una videollamada, conociendo la clave.

Consideraciones adicionales sobre cómo Whatsapp

Hay otros comportamientos del sistema que deben tenerse en cuenta.: La aplicación no protege las copias de seguridad de chat protegidas con contraseña.

Whatsapp le permite guardar copias de seguridad de nuestras conversaciones en la nube (Google Drive).
Desafortunadamente, la copia de seguridad en la nube se realiza de forma clara3 y la función que le permite aplicar una contraseña aún no está disponible.
En un entorno que requiere un alto secreto, no recomendamos el uso de la función de guardar copia de seguridad en la nube a priori hasta que puedan protegerse con contraseña.

Notificaciones de lectura de mensajes: Por defecto, Whatsapp advierte al usuario que el destinatario ha leído un mensaje (doble marca azul).
En sí misma, esta opción puede ser conveniente, sin embargo, se considera restrictiva para la privacidad.
Whatsapp por lo tanto, ofrece la posibilidad de desactivar los recibos de lectura, pero la desactivación es bidireccional, es decir, tanto los contactos como el usuario ya no recibirán las confirmaciones.
Además, esta opción no es válida para grupos, donde en cualquier caso los participantes continúan recibiendo recibos de lectura del usuario.

La aplicación no filtra las extensiones de archivo que se envían.: Normalmente Whatsapp También se utiliza para enviar documentos y archivos de diversos tipos.
Sin embargo, si el usuario elige adjuntar un archivo y usted elige "Documento", la aplicación no verifica las extensiones de los archivos permitidos.
Por lo tanto, es posible enviar archivos ejecutables o archivos zip o, por ejemplo, aplicaciones en formato "APK", es decir, instalables en su teléfono, de origen dudoso.
Por lo tanto, es aconsejable no aceptar los archivos intercambiados por adelantado y verificar siempre su contenido con el remitente.

Si se eliminan los mensajes, la aplicación aún muestra una notificación a la otra parte: En caso de que un usuario envíe un mensaje incorrectamente, una vez eliminado Whatsapp muestra la frase "Este mensaje ha sido eliminado" en lugar del contenido original.
Este tipo de comportamiento, aparentemente trivial, muestra a los interlocutores que realmente se ha enviado un mensaje.
Sería mejor si la eliminación del mensaje fuera total para todos los interlocutores.

Falta de mensajes cronometrados: Arriba Whatsapp No existe una función que permita el envío de mensajes autodestructivos.
En algunas situaciones, podría ser muy útil utilizar una configuración que permita que los mensajes se eliminen automáticamente después de un cierto período de tiempo establecido por los usuarios.

Análisis Whatsapp

Pasemos ahora al análisis real. El servidor está representado por la plataforma de Facebook, que ha adquirido. Whatsapp, por lo tanto, es necesario tener en cuenta el riesgo de que Facebook pueda interactuar con el tráfico generado por la aplicación.
Sin embargo, tenga en cuenta que la aplicación también interactúa con el sistema operativo subyacente y que otras aplicaciones pueden interactuar con Whatsapp mismo.
Primero, analizamos el estado de la red de la plataforma, para verificar si hay archivos maliciosos que se comunican con el dominio.

No se encontraron indicadores claros de amenazas recientes para comunicarse directamente con las direcciones IP de la Plataforma (en este punto del análisis).
La Plataforma, por otro lado, tiene múltiples archivos maliciosos que se comunican con los distintos subdominios.

A continuación se muestran los indicadores detectados como amenazas recientes, que se comunican directamente con la Plataforma:
Dominio: web.whatsapp.com
Hash: 183ddb9b37b549f7673ac38ec2ca15e1516655d559f20eaf63146a4030073d2d
Se realiza la extracción completa de los Indicadores de Compromiso.
Extracción completa: https://otx.alienvault.com/pulse/5e35c5a4977b679705a90b1a

Como se puede ver en el mapa de la red (los puntos rojos en el mapa), es posible detectar que con el tiempo se han creado APKs (paquetes de instalación para el Sistema Operativo Android) y ejecutables maliciosos, por lo que es posible deducir que existe un riesgo. persistente que nuestro cliente puede interactuar con un cliente malintencionado.

Después de analizar el estado actual de la red y cualquier indicador, puede examinar el protocolo de transporte de datos de la plataforma.

Whatsapputiliza un protocolo de cifrado de extremo a extremo, lo que significa que los datos en tránsito solo pueden ser vistos por el remitente y el destinatario.
La Plataforma usa encriptación de extremo a extremo de manera predeterminada, pero permite, a través de una configuración, ver cuándo cambia la clave del interlocutor.

Esto sucede con un cambio de teléfono o una reinstalación de la aplicación y es útil para evitar Man in the Middle, es decir, esta función es útil para entender si el usuario está hablando con el interlocutor real ya que, en caso de duda, el el usuario puede preguntar (obviamente en persona) a la persona interesada si ha cambiado el teléfono o reinstalado la aplicación.
Aquí el detalle del protocolo de comunicación utilizado por la plataforma:

https://scontent.whatsapp.net/v/t61/68135620_760356657751682_62129975288...

A partir de este documento, es posible comprender que el protocolo para cifrar datos de extremo a extremo se basa en el de Signal.

La Electronic Frontier Foundation (EFF), una fundación sin fines de lucro creada para defender los derechos y la privacidad de los usuarios en la red, ha escrito un documento interesante sobre la seguridad de la aplicación en el sistema operativo Android, que se informa en este enlace:

https://ssd.eff.org/en/module/how-use-whatsapp-android

El estudio realizado por la EFF destaca algunas preocupaciones sobre la configuración de privacidad de la aplicación. En particular, el usuario no puede rechazar ningún uso de los datos de telemetría enviados por el usuario a los servidores de Facebook.

En detalle, según lo declarado por EFF, los usuarios antiguos Whatsapp (tras su adquisición por Facebook) tuvo un período de gracia para cambiar su configuración de privacidad para evitar que Facebook sugiriera amistades o presentara anuncios dirigidos a partir de los datos recopilados por Whatsapp. Los nuevos usuarios no tienen esta posibilidad, es decir, con el uso de Whatsapp El usuario acepta el intercambio de datos en su totalidad.

Aunque Facebook declara que los datos no se comparten ni se revenden a terceros, el caso sí Cambridge Analytica (Link: https://www.ilpost.it/2018/03/19/facebook-cambridge-analytica/) solo puede demostrar que este intercambio es una amenaza sistémica, es decir, existe el riesgo de que los datos se vean comprometidos, independientemente de las fallas / malware / errores presentes en la Plataforma.
EFF declara su preocupación con respecto a la versión web de la aplicación, ya que puede modificarse para hacerla maliciosa o interactuar maliciosamente con ella, confirmando lo que se muestra en el mapa de red.

Para obtener más información sobre la versión web de Whatsapp afectar la seguridad de toda la Plataforma, Robert Heaton en 2017 publicó una publicación interesante en su blog4 donde describe cómo realizar un seguimiento eficaz de sus contactos gracias a la manipulación de la interfaz web.
Nuevamente en el nivel de transporte, el cifrado de extremo a extremo es útil siempre que la aplicación pueda considerarse "confiable".
En dettaglio, Whatsapp es una aplicación de código cerrado
Esto significa que nadie aparte Whatsapp en sí mismo, puede saber qué hace la aplicación.

Sin embargo, se dispone de un documento, también vinculado en la explicación del protocolo al inicio de este análisis, que explica en detalle cómo Whatsapp realiza cifrado
En general, si desea ser paranoico, no puede saber si la aplicación carga los mensajes de texto sin formato a otros servidores. Aquí también es posible demostrar que esta es una amenaza sistémica.

Para demostrar la amenaza, podemos referirnos al llamado "Protocolo Fantasma".
El "Protocolo fantasma" (enlace: https://www.theguardian.com/uk-news/2019/may/30/apple-and-whatsapp-conde...) es un procedimiento que evita "romper" el cifrado de una aplicación, al tiempo que tiene acceso a todas las conversaciones.

El protocolo proporciona, de hecho, enviar "en copia" cualquier mensaje de un cliente específico a un tercero, parte de la conversación de forma invisible.

Para comprender el impacto real del Protocolo Fantasma en la confidencialidad de las conversaciones, es como si un programa de correo electrónico enviara automáticamente, a una tercera persona, cada mensaje enviado y recibido en modo "copia oculta", sin que el usuario tenga ninguna evidencia , comprometiendo completamente la seguridad de la información transmitida.

En la segunda mitad de 2019, la compañía negó haber ingresado al Protocolo Fantasma, a pesar de la solicitud de implementación de GCHQ (la agencia de seguridad británica).

A pesar de la lucha del brazo, el usuario no puede saber con certeza si este protocolo (o medidas similares) se implementan dentro de la aplicación.

Por lo tanto, este tipo de amenaza es sistémica y, en un entorno clasificado, la aplicación puede considerarse comprometida hasta que se demuestre lo contrario.

Continuando hablando sobre el nivel de transporte, examinamos en profundidad cómo se comunica la aplicación.

Para capturar paquetes en tránsito en un dispositivo real, puede usar un firewall (se ha usado "NoRoot Firewall") siempre que este firewall cree un "fakeVPN", es decir, una VPN local al dispositivo, que redirige todo el tráfico.

A través de esto, puede analizar el comportamiento real de la aplicación.

(El resultado se muestra en la captura de pantalla.)

Al realizar varias pruebas, se puede observar el mismo patrón.
Es posible que este patrón cambie con el tiempo o sea ligeramente diferente para otro dispositivo.
Dado el patrón, se pueden observar varios factores:

Usando un puerto no estándar (5222)
Comunicación a servidores de Facebook
Uso de una puerta estándar insegura (80)
Uso del puerto inseguro a un servidor desconocido (216.58.208.142)

El servidor 216.58.208.142 es de Google, tiene los siguientes indicadores que son maliciosos, con los que se comunican directamente:

e2902cfd28362d7a0eef21e47b544a8b8a1e1a89e57a4140851af00ed1276659
aeb3d16722b438693bdb9afe901715e906f381afe31eb1df3c5fe8cafd8fbc66
3d5d3d5f1b9152da8b9d923451c2740b1e1c1123124b36b6fa62bf496154847f
b6447e14be7082e1437cad2fd5939c4c2ffc5832334a400cec6e994b35510651
a9cfdfa12a256cb9eb4b8f246b246894ffc27d2b034371efa96f1ba0bfd5762e
1010a92ebcf27c9ee2622cf361bd6638de0d9b442f9c422122e777e70c67ff05
69125f4b57aa1abe929d096417d7abefccee291f2988c00f4d36cb11c2049734
154c37eaf9c4eb19a8cec6798c68c9ea3a728d5af237bbf5f221afbe15c1c264
6b02df8d965e0ba96f9888d14c5d410660c41faafdc29586da3781c8c0ac4ac4
1c139f12997bc88aa1efb925007cb3f0c7d6255ab1b5ca1aabfe6fab4532b825
3333a2c2b1f8ec95ef01f4ca596cd443f2c1ae5d70cc3c1dbb50aa0f1740d1ad
055c2eb240a91d8f081a5499593e3ead092f5f4b2285b9b053ebe6cd05b67b12
009e6c27fb56baa09e2445539a9df547f225c22f909d0dfb6004647f13ff8cb1
0e2e40e07ebdeeff248daaf1adc7b78a03a873ca28de1bc73fbc0e64b6f4827f
6b331a27bcc06b2a7fd5060e2fc24285252ad8a4e3e7011ae774edc45b5fe2ca
5ecc6def525b09643d661958b63d7c65a9b93f6b10a27f001363b1790fe751e2
cb8bf1e4f331ea5a4b65a63c4a7c111d6677503b84e59eaff55f2ab95bd55a18
92d398b48f0ce44dc5f135653315aa80e21a8207e034038b52a3e2c235cafef8
b54a8f8d54d64ed346e04f03c027b960fda444505edeb7206b67d83482589d63
d039417cc0375f0d1106e140daa1c4a418cff02443b17ac49fc254ff5305ceba
a544e4f53e893c75514214338bcd33f5ca5a40a6d4a15e1bf8ca68a315a90d55
93db8dd78deecba7326a0c1975edf7bdc0f0bde230540bf887d169217570b741
108edb4cbd90116a725f43f1fad83cfc206303d1e66e3f6ae1d688e6ed0e5119
680dcb42f379d5be2484cd6b437d05e4fad42acfc6e32a726515b3f8aee81327
6757efaf6a6e068b6a4e346c1be0db6198c2888aa537a4f33bc60fe241286c09
9444e490c98c6a516bcaf6f81967b0c0e794f100ba616fcef33eee2264bb11d9
ff61097837d9226e6584b1ae25f5a1a164e4b168718227570025059bf0ad49e9
1b82460806a2d59f49ab82f8302191e500ff9161c5739e9697d22633d00555aa
14d1d88aa38dec7054f1a6fcd2874544640d4e4e9b5fe35b883017f228df16f9
11d85f340f1e133f8cdac2ef2710050311e18d050e7f088941944cd16eaedf23
2857d0f663bad67f930d38de439161dc205b67594f091e07b5fc9e4dd5a27454
9fc4a744fe5044d299e9385b1dbe0a317891546ee28226e0cd9bcb514cfb3ceb
0de6c92a30b63016e7fc42a2becc9f5f96ecaeed3b3440b0a53b064b0860ac24

Por lo tanto, procedemos con la identificación de todos los Indicadores.
Extracción completa:
https://otx.alienvault.com/pulse/5e36395f8654862296f22c8c

Como se puede ver, incluso en este caso hay una multitud de indicadores malévolos a lo largo del tiempo.
Ahora se analiza la segunda dirección IP: 157.240.193.50
Esta dirección IP no tiene indicadores que se comuniquen directamente.
Ahora se analiza la tercera dirección IP: 157.240.193.55
Además, esta dirección no presenta indicadores que se comuniquen directamente.

Analicemos ahora los puertos utilizados.

80
443
5222

Razonamiento en entornos empresariales, los puertos 80 y 443 son comunes, por lo que existe una alta probabilidad de que los cortafuegos no bloqueen estos puertos.

A diferencia de los dos puertos mencionados anteriormente, Google Talk utiliza el 5222, Whatsapp y de servidores Jabber, que es un tipo de servidor utilizado para servicios de mensajería instantánea.

Es muy interesante observar cómo los escaneos activos en este puerto han aumentado exponencialmente desde septiembre de 2019:

https://isc.sans.edu/port.html?port=5222

El aumento de los escaneos no está directamente relacionado con Whatsapp, pero es posible demostrar que existe un riesgo al usar un puerto no estándar.
El problema de usar este puerto se refiere a una posible inspección de tráfico a nivel de red.

Sabiendo que estos servicios utilizan el puerto 5222, es posible escanear / adjuntar estos dispositivos específicamente al servicio único, concentrando los esfuerzos del atacante en un solo protocolo, y también reduciendo el esfuerzo que el atacante debe hacer.

Una vez que se ha analizado el transporte, se puede analizar el riesgo de utilizar la Plataforma en su forma original o mediante la aplicación.
La aplicación en sí tiene 8 CVE:

https://www.cvedetails.com/vulnerability-list/vendor_id-19851/product_id...

Sin embargo, no existe una amenaza directa, ya que la versión actual no está incluida en la lista de vulnerabilidades conocidas. A pesar de esto, el ecosistema del dispositivo no puede ser subestimado.

Los dispositivos móviles, a diferencia de las computadoras, tienen una superficie de ataque más grande debido a su naturaleza. Deben ser fáciles de usar, al alcance de todos y también presentan amenazas sistémicas, es decir, el sistema operativo es más difícil de modificar / controlar, y generalmente los fabricantes bloquean los privilegios de administración (es decir, una cuenta con privilegios elevados, para ejecutar comandos que pueden modificar el comportamiento del sistema en sí), así como también tener controladores propietarios de código cerrado.
Además de las amenazas sistémicas, los sistemas operativos para dispositivos móviles son muy complejos y propensos a vulnerabilidades más o menos graves.

Esta es una lista de vulnerabilidades de Android:
https://www.cvedetails.com/product/19997/Google-Android.html?vendor_id=1224

Esta es la lista de vulnerabilidades en el sistema operativo iOS:
https://www.cvedetails.com/product/15556/Apple-Iphone-Os.html?vendor_id=49

Por lo tanto, existe la posibilidad de que una aplicación maliciosa o un atacante puedan explotar vulnerabilidades para obtener privilegios también en la aplicación.

Pero, ¿por qué centrarse también en el dispositivo? ¿Por qué la aplicación? Whatsapp guarde sus bases de datos de mensajes cifrados y claves de cifrado de extremo a extremo directamente en el dispositivo.

Para este análisis, se realizó una prueba con esta herramienta:

https://forum.xda-developers.com/showthread.php?t=1583021

La prueba fue exitosa en un dispositivo completamente actualizado y sin privilegios de root (privilegios de administración en todo el sistema).

La prueba demuestra que las claves también se pueden recuperar mediante el acceso físico al dispositivo. Esto implica un compromiso total de los datos en tránsito, anulando cualquier implementación de cifrado de extremo a extremo..

La recuperación clave parece ser posible también Signalque, sin embargo, resulta ser mucho más robusto, de hecho, para este tipo de operaciones Signal necesitas usar un programa de terceros:

https://blog.elcomsoft.com/2019/08/how-to-extract-and-decrypt-signal-con...

Esto abre muchos escenarios donde la seguridad de la comunicación puede verse comprometida.
Consideremos, por ejemplo, la compañía israelí Cellebrita.

La compañía en cuestión ha producido un software, UFED, que permite superar cualquier protección, incluso de dispositivos de gama alta:

https://www.cellebrite.com/en/ufed-ultimate/

Esta plataforma también podría implementarse en los famosos "tótems" de recarga, es decir, puntos de información presentes en aeropuertos y estaciones.

Finalmente, se indica un análisis de comportamiento de la aplicación realizada en el sandbox a través de VirusTotal, para detectar "comportamientos" sospechosos.

El análisis es público y no muestra un comportamiento sospechoso. Este es el enlace al análisis:

https://www.virustotal.com/gui/file/4a7b1a8f5ab065978feb00fd8f90ba29f8c5...

El consejo es que nunca conecte dispositivos a tomas USB directas, sino que utilice siempre la fuente de alimentación con tomas eléctricas normales y, en el límite, tome bancos de energía.
Existe un comportamiento muy arriesgado para los usuarios con respecto al enlace de invitación a grupos.

El periodista Jordan Wildon informó a través de Twitter (enlace: https://twitter.com/JordanWildon/status/1230829082662842369) que a través de la función "Invitar por enlace" los grupos se indexan en Google.
Esto significa que, a través de una simple búsqueda "personalizada", es posible ingresar a los grupos más dispares, exponiendo a los participantes a un riesgo considerable.
Este problema se conoce desde 2018, y también hay un tipo de "idiota"5 en el portal "exploit-db":
https://www.exploit-db.com/ghdb/4753
Hay que decir que la mayoría de estos datos "expuestos" por Google, en realidad son el resultado de errores de configuración de los distintos servidores por parte de los Administradores del Sistema.

Esta (imagen) es un ejemplo de Dork para los grupos anteriores de Whatsapp (Realizado personalmente para verificar que el Dork en cuestión todavía era "explotable").

Los grupos también están indexados con Signal, aunque solo puede suceder con grupos abiertos.
En el caso de grupos privados, la indexación no está permitida.

Se puede decir que aunque existe el riesgo, con Signal el usuario puede decidir cómo exponer el grupo y, si es privado, puede decidir no exponerlo.

Un último, pero no menos importante, análisis se refiere a los términos de uso y los avisos legales.

Las siguientes son las dudas (no refutables dada la naturaleza de código cerrado de la aplicación) que pueden surgir al leer los términos de servicio del servicio.

Para aprovechar los servicios ofrecidos por Whatsapp, el usuario debe aceptar sus términos de uso6 (Esto es necesario para cualquier servicio comercial).

Al leer los términos del servicio, puede ver que:
“Estamos comprometidos a brindar la seguridad y protección de WhatsApp mediante la adopción de las medidas adecuadas en caso de personas abusivas, actividades ilegales y violaciones de nuestros Términos. Prohibimos el uso indebido de nuestros Servicios, el comportamiento dañino hacia los demás y las violaciones de nuestros Términos, Disciplinas y Políticas y estamos comprometidos a lidiar con situaciones en las que podamos brindar apoyo o protección a nuestra comunidad. Desarrollamos sistemas automatizados para mejorar nuestra capacidad de detectar y eliminar actividades peligrosas y personas que podrían poner en riesgo nuestra comunidad y la seguridad de nuestros Servicios. Si nos damos cuenta de la presencia de dichas empresas o personas, tomamos las medidas adecuadas eliminando dichas empresas o personas o comunicándonos con las autoridades. Compartimos información con otras empresas afiliadas cuando detectamos un uso indebido o un comportamiento dañino en el uso de nuestros Servicios ".

La lucha (más que justa) por actividades ilegales en cualquier caso plantea más que unas pocas preguntas:

  • ¿Cómo realizan su función los sistemas automatizados antes mencionados?
  • ¿Existe una base de datos de "palabras clave" o "patrones" directamente dentro de la aplicación?
  • Después de que el algoritmo haya verificado la presencia de actividades potencialmente peligrosas, ¿hay personas que validan estos informes y que, por lo tanto, es posible que la empresa lea las conversaciones con claridad?

Otro punto interesante para pensar es el siguiente:

La libreta de direcciones. El usuario nos proporciona regularmente, de acuerdo con las leyes aplicables, los números de teléfono de los usuarios de Whatsapp y otros contactos en la libreta de direcciones de su dispositivo móvil, incluidos los de los usuarios de nuestros Servicios y otros contactos.

¿Quién nos asegura que esta información no se reutiliza (y esta pregunta es válida para cualquier servicio de este tipo)?
¿Qué cruces se hacen en los datos (lo mismo, cualquier servicio de este tipo puede hacerlo)?

Tenga en cuenta ahora, un pasaje fundamental en la política de privacidad:
Mensajes de usuario. WhatsApp no ​​almacena los mensajes de los usuarios durante la prestación normal de los Servicios. Una vez entregados, los mensajes (incluidos chats, fotos, videos, mensajes de voz, archivos e información de ubicación compartida) se eliminan de nuestros servidores. Sus mensajes se almacenan en su dispositivo. Si no es posible enviar un mensaje inmediatamente (por ejemplo, si el usuario está desconectado), lo almacenaremos en nuestros servidores hasta por 30 días para intentar entregarlo. Si el mensaje no se ha entregado después de 30 días, se eliminará. Para mejorar el rendimiento y entregar mensajes multimedia de manera más eficiente, por ejemplo, cuando muchas personas comparten una foto o un video famoso, podemos almacenar ese contenido en nuestros servidores durante un período más largo. También ofrecemos cifrado de extremo a extremo para nuestros Servicios, que está habilitado de forma predeterminada, cuando usted y las personas con las que envía mensajes de texto están usando una versión de nuestra aplicación lanzada después del 2 de abril de 2016. Cifrado de extremo a extremo. end significa que los mensajes de los usuarios están encriptados para evitar que WhatsApp y terceros los lean. Obtenga más información sobre el cifrado de extremo a extremo y las empresas en WhatsApp.

Este punto corre el riesgo de poner en duda la solidez de todo el cifrado de extremo a extremo.

En el pasaje "Whatsapp no archiva mensajes de usuario durante el rendimiento normal de los Servicios ", ¿qué se entiende por" rendimiento normal "? Además, citando nuevamente: "Para mejorar el rendimiento y entregar mensajes con contenido multimedia de manera más eficiente, por ejemplo, cuando muchas personas comparten una foto o video famosos, podríamos almacenar este contenido en nuestros servidores por un período más largo".

Si el contenido multimedia también está encriptado de extremo a extremo, como lo hace Whatsapp ¿Entiendes que un contenido se comparte muchas veces?

Otro punto interesante es sin duda la interacción entre la aplicación y el dispositivo.:
Información sobre dispositivo y conexiones. WhatsApp recopila información específica del dispositivo y la conexión cuando instala, accede o utiliza nuestros Servicios. Esto incluye información como el modelo de hardware, información del sistema operativo, información del nivel de la batería, intensidad de la señal, versión de la aplicación, información del navegador y de la red móvil, información de conexión, incluido el número operador de telefonía móvil, operador de telefonía móvil o proveedor de ISP, idioma y zona horaria, IP, información de funcionamiento del dispositivo e identificadores como identificadores de dispositivo (incluidos identificadores únicos para productos ofrecidos por empresas de Facebook asociadas con mismo dispositivo o cuenta).

Con esto, tenga en cuenta la gran cantidad de información muy relevante que recopila la aplicación.

Otro paso muy importante ciertamente se refiere a la recopilación de datos de posicionamiento.:
Información sobre la ubicación. WhatsApp recopila información sobre la ubicación del dispositivo si el usuario utiliza funciones relacionadas con la ubicación, como cuando decide compartir su ubicación con sus contactos, ver ubicaciones cercanas o las que otros han compartido con ellos, y similares, y con fines de diagnóstico. y resolución de problemas, por ejemplo, si el usuario experimenta problemas con las funciones de ubicación de la aplicación. WhatsApp utiliza varias tecnologías para determinar la ubicación, incluidas IP, GPS, señales de Bluetooth e información sobre puntos de acceso Wi-Fi, balizas y celulares cercanos.

Una nota final se refiere a la aplicación del Reglamento Europeo sobre el procesamiento de datos personales GDPR. Puede solicitar que sus datos ya no se procesen. Desafortunadamente no existe un procedimiento automático, pero es necesario seguir el procedimiento.7 indicado por Whatsapp, por correo electrónico, motivando su voluntad de ser excluido de la elaboración de perfiles / procesamiento de datos.
Se Whatsapp no debe considerar fundada la razón del usuario, él puede rechazar la solicitud del usuario, quien debe contactar a los organismos competentes (también indicado en la página específica).

Conclusiones sobre el análisis de Whatsapp 

La aplicación implementa una serie de medidas de protección dimensionadas para el conjunto objetivo, que es el usuario promedio.
El análisis de la aplicación muestra que Whatsapp Es adecuado para usos comunes, aunque no debe usarse en un entorno clasificado o en situaciones donde el compromiso de la comunicación puede representar un peligro para la vida del usuario o incluso en contextos donde los datos se consideran valiosos, incluso si no están vinculados a la privacidad (piense en el secreto industrial).

Análisis de plataforma Signal.

Signal es una aplicación para mensajería instantánea, exactamente como Whatsappy tiene un modelo operativo "Cliente / Servidor" de este tipo:
Cliente (Aplicación) → Transporte de paquetes cifrados → Servidor (Plataforma)

El modelo de trabajo es el mismo que Whatsapp y el transporte de paquetes siempre es de extremo a extremo. Para ser precisos, Open Whisper Systems (grupo sin fines de lucro que creó la aplicación) creó el protocolo Signal, retomado luego por Whatsapp.

La primera diferencia que se puede encontrar viene dada por el tipo de Cliente y el tipo de Servidor. La plataforma Signal de hecho, es completamente de código abierto, es decir, es posible leer el código fuente de la aplicación y el servidor.

Este es el repositorio de GitHub de la aplicación:

https://github.com/signalapp

Como se puede ver, tanto el código del cliente como el código del servidor están presentes.

Luego procedemos al análisis externo de la Plataforma.

Indicadores detectados:
IP: 104.16.54.111
Hash: 01733a96208c513bdd333efe56900bf0ae03fa28955085058a957a484d599cab

Aunque solo se ha detectado un indicador, todo el mapa de red y todos los indicadores relacionados se han extraído y aparecido con el tiempo.
Extracción completa: https://otx.alienvault.com/pulse/5e393d8ae94aab466d01fe91

Mapa de red (Imagen)

Del mapa de red se puede entender que con respecto a Whatsapp, la plataforma Signal Con el tiempo ha habido muchos menos casos de archivos maliciosos que se comunican con él.
Sin embargo, esto podría ser una consecuencia de la menor difusión del software.

Después de analizar la Plataforma, procedemos con elanálisis del protocolo de transporte.

La Plataforma usa encriptación "de extremo a extremo", es decir, los paquetes se encriptan en el dispositivo emisor y se desencriptan en el dispositivo receptor, haciendo imposible que el servidor lea el contenido.

Aquí encontrará toda la información sobre el protocolo y las especificaciones de funcionamiento de Signal:

https://signal.org/docs/

La Electronic Frontier Foundation, una fundación sin fines de lucro cuya misión es defender la privacidad y los derechos de los ciudadanos en línea, ha publicado notas sobre el uso de Signal.

Notas para usar Signal en el sistema operativo Android:

https://ssd.eff.org/en/module/how-use-signal-android

Notas para usar Signal en el sistema operativo iOS:

https://ssd.eff.org/en/module/how-use-signal-ios

Como también informó EFF, Signal ofrece al usuario la lista de contactos que también tienen instalada la aplicación.

Para hacer esto, los números de teléfono se cargan en el servidor Signal, a pesar de ser eliminado casi de inmediato.

Una diferencia fundamental con Whatsapp está dada por la naturaleza de Código Abierto del Proyecto.

En detalle, no hay una gran corporación (como Facebook) detrás del desarrollo de la aplicación y el código es visible, lo que le permite verificar rápidamente lo que hace y permite a los usuarios no caer en la malla de las necesidades de monetización o de comercialización de la empresa de turno.

Otra diferencia con Whatsapp está dado por el hecho de que, al ser de código abierto, no presenta (y según quienes analizaron la fuente es exactamente así) puertas traseras o "puertas de servicio" que permiten a un gobierno, por ejemplo, poder leer conversaciones sin autorización .

Para hacer una comparación real, con Signal (al instalarlo desde fuentes oficiales) está seguro de no encontrarse con el "Protocolo Fantasma", mientras que con Whatsapp el usuario no puede decir con seguridad.

En conclusión, Signal no presenta las mismas amenazas sistémicas que presenta Whatsapp (a nivel de transporte de datos) dada la naturaleza de código abierto del proyecto.

En algunas áreas, es preferible utilizar herramientas de código abierto, ya que ofrece la posibilidad a la organización o la comunidad que utiliza un software específico para poder analizar el código.
En principio, esta condición conduce a una mayor probabilidad de detectar, analizar y resolver errores. Por lo general, esto lo hace tanto el fabricante del software como la propia comunidad (obviamente, las personas que tienen las habilidades necesarias) y esto le permite encontrar errores más rápido. Sin embargo, no es obvio que estos errores se resuelvan más rápido que el software de código cerrado y esto puede variar según las personas que trabajan en el proyecto, el modelo comercial del fabricante y el tipo de error reportado.

Se informa un caso real, donde la Plataforma Signal recibió una solicitud de investigación del Estado de Virginia.

https://signal.org/bigbrother/

En resumen, de esta solicitud, la única información que el Estado de Virginia ha logrado obtener es la siguiente:

  • Fecha y hora de registro de un usuario en el servicio.
  • Fecha de la última conexión al servicio.

Para analizar el nivel de transporte en profundidad, se analiza el funcionamiento de la aplicación en un dispositivo real.
En cuanto a Whatsapp, para capturar las conexiones realizadas por la aplicación, se utiliza un fakeVPN.

Este es el resultado (imagen)
Del análisis del patrón, se obtiene la siguiente información:

La aplicación usa solo puertos estándar
La aplicación se conecta a los servidores de Amazon.

El análisis de las direcciones IP no revela ningún indicador reciente.

Al usar solo el puerto 443, la aplicación es más resistente si un oponente tiene la posibilidad de inspeccionar el tráfico de la red, lo que hace que la comunicación sea menos detectable.

Después de examinar el transporte de datos, se analiza al Cliente..

La aplicación presenta 6 CVE:

https://www.cvedetails.com/vulnerability-list/vendor_id-17912/Signal.html

A pesar de los CVE, no existe una amenaza directa, ya que no hay vulnerabilidades registradas para la versión actual de la aplicación.
Se destaca que el ecosistema donde reside la aplicación no es despreciable.

Exactamente como Whatsapp, también Signal es propenso a ataques, en caso de que el atacante tenga acceso físico al dispositivo.
Además del mencionado UFED, existe un software de la compañía ElcomSoft, como "Phone Viewer":

https://blog.elcomsoft.com/2019/08/how-to-extract-and-decrypt-signal-con...

Conclusión del análisis. Signal y comparación con Whatsapp

Para concluir, este análisis muestra que Signal podría usarse en áreas más sensibles, minimizando el riesgo gracias a la naturaleza abierta del proyecto y su infraestructura, que es más segura y robusta en comparación con la de Whatsapp.

Una nota negativa está representada por el comportamiento de Signal al registrar un usuario. La plataforma, al registrarse, informa todos los contactos por notificación Signal presente en la libreta de direcciones de la persona que se registró.

Es aconsejable prestar atención a este comportamiento de la aplicación, en algunas áreas ciertamente molesto.

El caso anterior muestra que la Plataforma Signal es resistente incluso en caso de intervención de un Estado.

En contraste, para ambas aplicaciones hay un problema con el acceso físico al dispositivo.
Si se prevé su uso en un entorno de riesgo, donde puede haber control físico y acceso al dispositivo, no se deben usar ambas plataformas.

En el caso de que no exista riesgo de acceso físico al dispositivo o se espere que el oponente no tenga los medios necesarios para usar ciertos controles o software, ciertamente recomendamos el uso de la Plataforma Signal.

Para uso común, el uso de ambas plataformas es aceptable.

1 https://www.ssi.gouv.fr/uploads/2017/10/chiffrement_messagerie_instantan...
2 https://scontent.whatsapp.net/v/t61/68135620_760356657751682_62129975288...)
3 https://faq.whatsapp.com/it/android/28000019/
4 https://robertheaton.com/2017/10/09/tracking-friends-and-strangers-using...
5 Un "Google Dork" es una búsqueda particular, que explota el poder del motor de búsqueda y su servicio de indexación. El motor de Google tiene varias opciones de búsqueda, "banderas" reales, que se pueden utilizar para refinar las búsquedas. Obviamente, como cualquier función, estos indicadores se pueden usar para buscar información o datos, que normalmente no se deben encontrar.
6 https://www.whatsapp.com/legal/
7 https://faq.whatsapp.com/en/general/26000153/

Referencia 1: claves y algoritmos utilizados por Whatsapp
Claves públicas utilizadas por Whatsapp:

Par de claves de identidad: un par de claves a largo plazo, es decir, archivado y almacenado por la aplicación, del tipo Curve25519, generado durante la fase de instalación.
Curve25519 es un cifrado elíptico de 128 bits.
Una criptografía de curva elíptica es un tipo de criptografía que usa una fórmula cuyos resultados, cuando se colocan en un plano, forman una elipse.

Par de claves previamente firmadas (Clave previa firmada): un par de claves a mediano plazo, o periódicamente modificado, del tipo Curve25519, generado por la clave de identidad durante la instalación.

Key Queue (Pre-Keys de una sola vez): una serie de pares de claves Curve25519, generadas durante la instalación y regenerables cuando sea necesario.

Tipos de claves utilizadas por Whatsapp para sesiones encriptadas:

Clave raíz: valor de 32 bytes, utilizado para generar las "claves de cadena".

Clave de cadena: valor de 32 bytes, utilizado para generar las "Claves de mensaje"

Clave de mensaje: valor de 80 bytes, utilizado para cifrar el contenido de los datos intercambiados en Whatsapp.
Este valor se usa de la siguiente manera:

32 bytes para la clave AES-256

32 bytes para la clave HMAC-SHA256

16 bytes para generar el IV

AES (Estándar de cifrado avanzado)
Es el estándar de cifrado utilizado actualmente por el gobierno de los Estados Unidos.
A diferencia del algoritmo visto anteriormente, AES es un sistema de cifrado simétrico, es decir, utiliza la misma clave para el cifrado y descifrado.
AES-256 es una implementación de AES que utiliza claves de 256 bits.
HMAC-SHA256
HMAC (Keyed-hash Message Authentication Code) es un sistema que utiliza el mensaje original más una clave para garantizar la autenticidad e integridad del mensaje a través de hash.
Un hash es una cadena de longitud fija generada por una función matemática capaz de "mapear" secuencialmente cualquier tipo de datos de entrada, como un archivo de texto, audio o video.
La integridad y la autenticidad están garantizadas ya que incluso la más mínima modificación de los datos de entrada generará un hash totalmente diferente del original.

Un ejemplo:
Cadena a calcular: HOLA
Hash: 39F119842EBE582F049160F44BCD99F4
Ahora note la diferencia:
Cadena a calcular: CIaO
Hash: 8C3E82238DF7A597C99EC0B70ACC4A58
La cadena hash es completamente diferente de la anterior.
Este efecto, también provocado por el más mínimo cambio en el valor original, se denomina "efecto de avalancha".
SHA256 indica que en este caso el HMAC se calcula mediante el algoritmo hash "SHA256".
IV (vector de inicialización)
El vector de inicialización es una secuencia de bits precisa, que permite obtener resultados criptográficos diferentes incluso con claves idénticas y debe ser conocido por el destinatario, que de lo contrario no puede descifrar el mensaje.