viernes, junio 05, 2020

La base de datos de WhatsApp en iPhone sigue sin cifrar, y estamos en 2020

Durante muchos años y posts, he escrito recopilando las técnicas que existen para Espiar WhatsApp, y cómo se debe Fortificar WhatsApp a Prueba de Balas. Hemos ido viendo las evoluciones de seguridad de WhatsApp cambiando versión a versión, pero hay una en concreto que en iPhone, sigue siendo una debilidad que Facebook no ha arreglado con el paso de los años.

Figura 1: La base de datos de WhatsApp en iPhone sigue sin cifrar, y estamos en 2020

La característica a la que me refiero, que Facebook no ha arreglado con el paso de los años, tiene que ver con el cifrado de la base de datos de mensajes de chats de WhatsApp en iPhone, donde nos encontramos con que aún, en el año 2020, después de un número ingente de ataques a la privacidad de las personas, sigue sin cifrar. 

Figura 2: Libro de Hacking iOS: iPhone & iPad 2ª Edición

Estas debilidades en iPhone, son las que hemos ido utilizando a lo largo de los años para Hackear iOS: iPhone & iPad, y ésta de hoy es una que debería arreglar WhatsApp y tú deberías tener en cuenta. Las tres partes que recogen la fortificación de WhatsApp que os he recogido las tienes aquí:


Por supuesto, que un atacante llegue a la base de datos de mensajes de los chats de Whatsapp exige que antes hayan caído otras medidas de seguridad de tu dispositivo, pero no tiene sentido dejar una puerta abierta a un atacante, porque al final, la seguridad de tu WhatsApp queda en manos de otras medidas de seguridad y no aplica los principios de Defensa en Profundidad de cualquier proceso de fortificación de tecnología. Hace ya muchos años, en el año 2015, di una charla que se titulé Tu iPhone es tan (in)Seguro como tu Windows, donde hablaba de cómo la seguridad de tu smartphone - y por ende tu WhatsApp - puede depender del equipo Windows al que te pareas.


Figura 3: Tu iPhone es tan (in)seguro como tu Windows

Para que veas como funciona esto, puedes hacer una prueba muy sencilla con tu terminal iPhone. Basta con que te bajes una aplicación para gestionar tus ficheros de iPhone. En este caso iMazing que hace el trabajo de conectarse a tu iPhone si estás en un equipo en el que hayas confiado. Como se puede ver, cuando conectas un iPhone a tu MacOS o tu Windows para extraer fotos, hacer backup, etcétera, estás dando acceso a tu terminal iPhone a todo programa que corra con privilegios en tu Windows o Mac.

Figura 4: iMazing te extrae todos los ficheros haciendo un backup sin cifrar

Esos programas, antiguamente, se conectaban al sistema de ficheros de tu iPhone o iPad, pero Apple fortifico esta característica, y ya no es posible. La sandbox de aplicaciones es buena, y no se puede meter  mucha mano a las apps tal y como se hacía antes, con programas como iFunBox, pero... ¿quiere decir que esto no se puede hacer?

Figura 5: Acceder a la SandBox de la app de WhatsApp ya no se puede directamente 

Pues no, lo que hacen aplicaciones como iMazing es aprovecharse del pareado de tu equipo de confianza para hacer un backup SIN CIFRAR de tu iPhone al equipo pareado. Es decir, fuerzan una copia de seguridad desde el equipo MacOS o Windows al que conectas tu iPhone y extrae todos los ficheros sin cifrar de tu iPhone para dejarlos en el disco duro del equipo. Y entre ellos tu base de datos de WhatsApp.

Figura 6: Ficheros de iOS copiados al Mac

Así que, desde cualquier equipo pareado en el que confíe tu iPhone se puede extraer todo el sistema de ficheros de iPhone sin cifrar. Una vez que se realice ese backup sin cifrar, tendremos en el disco duro del ordenador la base de datos de WhatsApp, que como he dicho al principio, está sin cifrar también. Encontrar el fichero, es bastante sencillo, ya que es un hash y se puede localizar navegando conocido que se genera a partir de la ubicación del fichero dentro del sistema de archivos de iOS, y ya se puede navegar fácilmente por los backups desde tu MacOS.

Figura 7: Con estos tres ingredientes, tenemos todo

Así que, una vez localizado ese fichero, y sabiendo que ese fichero, llamado ChatStorage.sqlite, es un almacén de base de datos SQLite, lo único que tiene que hacer cualquiera es usar un visor de ficheros SQLite y abrirlo. 

Figura 8: En las tablas de la base de datos están los mensajes

Una vez que abras ese fichero, podrás ver que los mensajes de tus chats de WhatsApp están en texto plano y se pueden ver los mensajes que has enviado y recibido en cada uno de los chats.

Figura 9: Y toda la base de datos de contactos

Lo que quiere decir que la seguridad de tu WhatsApp depende de la seguridad de tu iPhone y, en este ejemplo concreto, de la seguridad de tu Windows, tal y como en el mundo del cibercrimen, de los APTs y de la privacidad personal, hemos visto durante los últimos años.

¿Debería cifrar WhatsApp la base de datos de mensajes en el dispositivo?

Pues si seguimos los principios de fortificación de sistemas informáticos, que dependen de aplicar Mínimo Privilegio Posible, Mínima Superficie de Exposición y Defensa en Profundidad, mi opinión personal está clara: 

Debería haberlo hecho hace años.

Mientras tanto, debes tener un cuidado especial de a qué equipos conectas tu iPhone ya que, aunque tú hagas copias de seguridad cifrada, con programas con iMazing se pueden forzar las copias de seguridad sin cifrar y todos tus archivos - fotos ocultas incluidas - se irán para allá. En este vídeo os explico lo que podéis ver en este artículo, pero contado por mí.


Figura 10: Notas sobre el (No) cifrado de la base de datos de WhatsApp en iPhone

Saludos Malignos!

Autor: Chema Alonso (Contactar con Chema Alonso)

No hay comentarios:

Entrada destacada

Seis recomendaciones personales de libros de @0xWord para disfrutar y aprender

Este verano pude disfrutar de la lectura de un libro que me encantó. El libro de Factfulness que me había regalado mi compañera Beatriz Ce...

Entradas populares