Arreglan una vulnerabilidad en Signal que permitía a hackers escuchar llamadas al responderlas por el usuario

Aplicación de mensajería Signal
Aplicación de mensajería Signal - GOOGLE PLAY STORE
Publicado 07/10/2019 12:14:15CET

   MADRID, 7 Oct. (Portaltic/EP) -

   Un error lógico en la aplicación de mensajería Signal en los dispositivos Android ha posibilitado que hackers pudieran acceder a las conversaciones telefónicas al permitir que se respondieran llamadas sin interacción del usuario, aunque ya está arreglada.

   La ingeniera de Google Project Zero, Natalie Silvanovich, ha publicado en su cuenta oficial de Twitter la existencia de un error en Signal -la 'app' de mensajería centrada en la seguridad y privacidad de los usuarios- que afectaba al cliente de Android y que permitía que la llamada a un usuario fuera contestada sin que este la aceptara.

   "Un error en Signal permitía a la persona que llama forzar que la llamada fuera contestada sin interacción del usuario", asegura en su perfil. "Cuando la llamada está sonando, el botón de silenciar puede ser presionado para forzar al dispositivo al que se llama a que conecte, y el audio del dispositivo llamado será audible", explica Silvanovich en el blog de Chromium. De esta forma, el 'hacker' tendría acceso al contenido de la llamada sin que el usuario supiera que la había respondido.

   Esto se debe al denominado método 'Handle Call Connected' que permite que una llamada acabe coenctándose. Normalmente, las llamadas en la aplicación se responden o bien presionando sobre el botón 'aceptar' o bien cuando el dispositivo que llama recibe una mensaje con las palabras 'conectar' que indican que el receptor ha aceptado la llamada.

   Sin embargo, "utilizando un cliente modificado, es posible enviar el mensaje de 'conectar' a un dispositivo que llama cuando una llamada entrante está en progreso pero todavía no ha sido aceptada por el usuario", asegura Silvanovich. Así, la llamada será contestada, pero el usuario no habrá interactuado en ningún momento con el dispositivo.

   "La llamada conectada solo será una llamada de audio, ya que el usuario necesita habilitar manualmente el vídeo en todas las llamadas", apunta.

   Aunque en principio se trata de "error lógico" que solo ha afectado al cliente de Android, y que se arregló el pasado viernes, la ingeniera también señala que el cliente de iOS pudo estar afectado por un error lógico similar. En este caso, la llamada no se completaba debido a un error en la interfaz de usuario "causado por una secuencia de estados inesperada".

POSIBLES ATAQUES DURANTE LAS VIDEOCONFERENCIAS EN SIGNAL

   La ingeniera de Project Zero de Google también ha dado a conocer en su cuenta oficial de Twitter la posibilidad de un ataque remoto a las cuentas de Signal si hubiera una vulnerabilidad por limitaciones en su WebRTC. "entristece que Signal tenga esta gran superficie de ataque remoto debido a limitaciones en WebRTC", explicaba en su 'post'.

   WebRTC es un proyecto de código abierto que permite a los navegadores web y a las aplicaciones la comunicación en tiempo real a través de interfaces de programación de aplicaciones. Silvanovich afirma en el blog oficial de Chromium que "cuando una llamada por videoconferencia se hace a través de Signal, esta procesa los paquetes RTP (protocolo de transporte real) antes de que la llamada sea respondida".

   Esto implica que cualquier vulnerabilidad en WebRTC en el proceso de RTP "puede ser usada remotamente por un atacante sin interacción del usuario, y permite a un atacante múltiples intentos de explotar una vulnerabilidad", declara.

   La ingeniera afirma que ha probado este proceso de ataque construyendo una 'versión depuradora' del WebRTC y de Signal, incluyendo su biblioteca, e instalándolo en un dispositivo objeto del ataque. Después ha construido una versión publicada de WebRTC y de Signal que "corrompe los paquetes RTP cuando son lanzados", explica. Así, "cuando llamé al dispositivo objeto del ataque con el otro dispositivo, pude ver entradas de registro que indicaban que estaba procesando un RTP malformado sin responder la llamada", concluye.

   La ingeniera recomienda que el proceso de completar la conexión RTP "sea movido después de que el usuario responda a la llamada". A pesar de ello, hoy se ha descubierto que el error ha sido invalidado, pues Signal "no planea hacer cambios para limitar el proceso RTP antes de que una llamada sea respondida a corto plazo", asegura Silvanovich.

Para leer más