Un genio de la programación logra usar iMessage en su teléfono Android

Un estudiante de 16 años logra descifrar el cifrado de iMessage y crea una aplicación para Android

¿Qué es iMessage y por qué es tan seguro?

iMessage es el servicio de mensajería instantánea de Apple, que permite a los usuarios de dispositivos iOS, macOS y watchOS enviar y recibir mensajes de texto, fotos, vídeos, emojis y otros contenidos multimedia de forma gratuita y segura. iMessage se diferencia de otros servicios de mensajería como WhatsApp o Telegram por su sistema de cifrado de extremo a extremo, que impide que nadie, ni siquiera Apple, pueda acceder al contenido de los mensajes sin la clave privada de los usuarios.

El cifrado de iMessage se basa en un protocolo llamado Elliptic Curve Integrated Encryption Scheme (ECIES), que combina técnicas de criptografía asimétrica y simétrica para garantizar la confidencialidad, la integridad y la autenticación de los mensajes. El protocolo funciona de la siguiente manera:

  • Cada usuario de iMessage tiene un par de claves pública y privada, que se generan al activar el servicio y se almacenan en el dispositivo y en los servidores de Apple, respectivamente.
  • Cuando un usuario quiere enviar un mensaje a otro, solicita al servidor de Apple la clave pública del destinatario y la usa para generar una clave simétrica aleatoria, que se usa para cifrar el contenido del mensaje con un algoritmo llamado Advanced Encryption Standard (AES).
  • El emisor también cifra la clave simétrica con la clave pública del destinatario, usando otro algoritmo llamado Elliptic Curve Diffie-Hellman (ECDH), y la envía junto con el mensaje cifrado al servidor de Apple.
  • El servidor de Apple reenvía el mensaje cifrado y la clave simétrica cifrada al destinatario, sin poder acceder a su contenido.
  • El destinatario recibe el mensaje cifrado y la clave simétrica cifrada, y usa su clave privada para descifrar la clave simétrica, que a su vez usa para descifrar el contenido del mensaje.

¿Cómo logró el estudiante de 16 años romper el cifrado de iMessage?

El estudiante de 16 años que logró romper el cifrado de iMessage se llama Roman Scott, y es un apasionado de la programación y la seguridad informática. Roman llevaba tiempo queriendo usar iMessage en su teléfono Android, pero se encontró con el problema de que el servicio solo es compatible con los dispositivos de Apple. Así que decidió investigar cómo funcionaba el protocolo de cifrado de iMessage y tratar de replicarlo en una aplicación para Android.

Roman empezó por analizar el tráfico de red entre su MacBook y los servidores de Apple, usando una herramienta llamada Wireshark. Así pudo observar cómo se enviaban y recibían los mensajes cifrados y las claves públicas de los usuarios. Luego, usó otra herramienta llamada Frida para inyectar código en la aplicación de iMessage de su MacBook y extraer su clave privada, que se almacena en el Secure Enclave Processor (SEP), un chip especializado que protege los datos sensibles de los dispositivos de Apple.

Con la clave privada en su poder, Roman pudo descifrar los mensajes que recibía en su MacBook y enviar mensajes cifrados desde su teléfono Android, usando una biblioteca de código abierto llamada Bouncy Castle para implementar los algoritmos de cifrado de iMessage. Así creó una aplicación para Android llamada weMessage, que se comunica con un servidor que se ejecuta en su MacBook y que actúa como intermediario entre su teléfono y los servidores de Apple.

¿Qué implicaciones tiene este descubrimiento para la seguridad de iMessage?

El descubrimiento de Roman Scott demuestra que el cifrado de iMessage no es infalible, y que puede ser vulnerado si se tiene acceso físico al dispositivo de un usuario y a su clave privada. Sin embargo, esto no significa que iMessage sea inseguro, ya que el ataque de Roman requiere de un alto nivel de conocimientos técnicos y de herramientas especializadas, y solo afecta al propio usuario que extrae su clave privada, no a los demás usuarios de iMessage.

Además, Roman no ha publicado el código fuente de su aplicación ni de su servidor, y solo ha compartido un vídeo en YouTube donde muestra cómo funciona su sistema. Roman dice que su intención no es comprometer la seguridad de iMessage ni de los usuarios de Apple, sino demostrar sus habilidades como programador y satisfacer su curiosidad personal. Roman también dice que respeta el trabajo de Apple y que le gustaría trabajar para ellos algún día.

Apple, por su parte, no ha hecho ningún comentario oficial sobre el descubrimiento de Roman, pero es probable que esté investigando cómo mejorar la seguridad de su servicio de mensajería y evitar que se repitan casos como este. Algunas posibles medidas que podría tomar Apple son:

  • Reforzar la protección del SEP y dificultar la extracción de las claves privadas de los dispositivos.
  • Implementar un sistema de verificación de dispositivos que impida el uso de iMessage en dispositivos no autorizados por Apple.
  • Actualizar el protocolo de cifrado de iMessage y usar algoritmos más robustos y resistentes a ataques.

Conclusión

iMessage es uno de los servicios de mensajería más populares y seguros del mercado, pero no es invulnerable a los ataques de hackers y curiosos. Un estudiante de 16 años ha logrado descifrar el cifrado de iMessage y crear una aplicación para Android que le permite usar el servicio en su teléfono. Su descubrimiento es impresionante, pero no supone una amenaza grave para la seguridad de iMessage ni de los usuarios de Apple, ya que requiere de un acceso físico al dispositivo y a la clave privada de un usuario. Apple, sin embargo, debería tomar nota de este caso y mejorar la seguridad de su servicio de mensajería.

0 comentarios

Enviar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *