domingo, 12 de agosto de 2018

FakesApp permite manipular mensajes enviados por WhatsApp Web

La firma de seguridad Check Point Research ha encontrado una vulnerabilidad llamada FakesApp en el intercambio de información entre WhatsApp y su versión web podría permitir interceptar y modificar mensajes enviados por WhatsApp. No han roto su cifrado, pero pueden manipular conversaciones usando el sistema de respuestas. La  clave pública se puede obtener  en la fase de generación de claves de WhatsApp Web antes de generar el código QR y, posteriormente, se toma el parámetro “secret” que envía el teléfono móvil a WhatsApp Web mientras el usuario escanea el código QR y ya se tienen la clave pública y privada de la sesión de WhatsApp.




Desde principios de 2018, la aplicación de mensajería propiedad de Facebook, WhatsApp, cuenta con más de 1.500 millones de usuarios, con más de 1.000 millones de grupos y 65.000 millones de mensajes enviados cada día. El gran uso de la aplicación hace que el potencial de estafas en línea, rumores y noticias falsas sea enorme.

El cifrado "end-to-end" de WhatsApp es seguro

El cifrado de punto a punto de WhatsApp se base en el protocolo de Open Whisper Systems. Está empresa creo la aplicación Signal de la que  Snowden recomendaba su uso. Pero el cifrado de WhatsApp no se basa tanto en Signal como creemos, la empresa Open Whisper Systems comentó que el cifrado se basaría en el de TextSecure que un servicio que utiliza una clave de cifrado única para cada dispositivo.

Los mensajes originales no se pueden modificar, pero los usuarios dan por hecho que las citas los replican con fidelidad, así que se puede usar FakesApp para hacer que otras personas manden textos que, en realidad, no escribieron.

Dikla Barda, Roman Zaikin y Oded Vanunu, tres investigadores de CheckPoint, pusieron su punto de mira precisamente en este proceso de cifrado. Lo que encontraron es que WhatsApp utiliza protobuf2 (un mecanismo de serialización de Google) para el cifrado de mensajes.

Los investigadores afirmaron que les llamó la atención el cifrado usado por WhatsApp, y trataron de hacerle ingeniería inversa. Así, después de descifrarlo descubrieron que WhatsApp usa el protocolo protobuf2. Después, pasaron los datos de protobuf 2 a JSON para ver los parámetros que se envían y manipularlos.

Los investigadores aprovecharon el intercambio de claves que se produce al iniciar WhatsApp Web, y capturaron los parámetros que se pasan durante la lectura del código QR generado para obtener toda la información necesaria para el descrifrado de mensajes.

Antes de generar el código QR, WhatsApp Web genera es una clave pública y privada que se utiliza para cifrado y descifrado.





Los mensajes contienen, entre otros parámetros:

  • conversation: El contenido del mensaje.
  • participant: Miembro del grupo que manda el mensaje.
  • fromMe: Si el mensaje ha sido enviado por el propio usuario.
  • remoteJid: Contanto o grupo al que se en vía el mensaje.
  • id: Identificador de los datos tal como se almacena en la base de datos interna.
Basándose en este estudio y en la manipulación de estos campos, el equipo ha desarrollado una extensión para BurpSuite que es capaz de capturar, descifrar y modificar mensajes de WhatsApp. Esta extensión permite tres tipos de ataque:


  1. Cambiar la identidad del emisor de un mensaje en un grupo, incluso no siendo miembro del mismo: En este caso, se puede manipular el campo "participant" a un usuario o un teléfono.
  2. Cambiar la respuesta de alguien: En este caso, se crea una respuesta ficticia en un chat, lo que permite escribir mensajes en chats propios haciéndose pasar por el interlocutor. Esto pued ser usado para "poner palabras en boca de otros".
  3. Mandar mensajes "trampa": Mandar un mensaje a un grupo que solo verá uno de los miembros. En este caso, se manipula la base de datos de mensajes guardada en ‘/data/data/com.whatsapp/databases/msgstore.db Es especialmente útil para realizar ingeniería social y hacer que un miembro del grupo revele secretos.



La vulnerabilidad fue reportada al equipo de WhatsApp, aunque no parece haber respuesta del mismo. La extensión de Burp Suite puede encontrarse en este repositorio de Github:





Vídeo demostración:




Fuentes:
https://unaaldia.hispasec.com/2018/08/poniendo-palabras-en-boca-de-otros-con.html

No hay comentarios:

Publicar un comentario