Quantcast
Channel: Un informático en el lado del mal
Viewing all articles
Browse latest Browse all 4204

Suplantar un contacto de WhatsApp clonando su SIM

$
0
0
En uno de esos correos que recibo habitualmente con preguntas, una persona me contaba un caso bastante curioso, ya que no se trataba de espiar WhatsApp sino de suplantarWhatsApp. Resulta que una persona recibía mensajes de WhatsApp desde el número de teléfono de una persona que era imposible que los hubiera enviado, lo que hacía que el misterio fuera peor aún.

Intentando buscar todas las opciones posibles pensé en muchas situaciones que os paso a contar, pero que ninguna resultó ser la correcta, lo que me hizo incluso pensar hasta en la trolleada de cambiar el número de teléfono en la agenda de contactos, que como broma pesada a un amigo es un poco fuerte, pero podría haber sucedido.

Figura 1: Humor sobre WhatsApp

Inyección de mensajes directamente en la BBDD de WhatsApp

La primera de ellas que alguien estuviera inyectando los mensajes directamente en la base de datos del terminal de la víctima. Al final la aplicación está soportada por una base de datos de SQLite que nosotros conocemos bien gracias al servicio de recuperación de mensajes de WhtasApp borrados de RecoverMessages y a la aplicación para evitar que los mensajes borrados WhatsApp Anti-Delete Protection Tool.

Figura 2: Estructura de BD de WhatsApp para mensajes. Ejemplo con el ataque DOS.

Si alguien hubiera tenido acceso al SQLite, ya fuera vía un exploit remoto, acceso físico o mediante un troyano de espionaje para el terminal - cómo meter un troyano en iPhone -, podría haber ejecutado comandos SQL suficientes como para inyectar el mensaje que le hubiera dado la gana y suplantar a un destinatario del mensaje, así que un análisis forense no venía de más.

Interceptación de proceso de registro de alta

El proceso de registro de alta de WhtasApp podría interceptarse si se realiza la interceptación del tráfico en la red WiFi desde la que solicita el alta de un terminal y al mismo tiempo se intercepta el mensaje de respuesta con el código de confirmación que envía WhatsApp con el mensaje SMS.

Figura 3: Un mensaje SMS capturado por GSM

En ese orden de cosas, yo estuve pensando en que alguien podría haber spoofeado la petición del alta del número de la víctima suplantada y capturar el mensaje SMS por el aire, tal y como se explicó en el artículo de SDR-RTL en el que se captura un mensaje SMS por GSM usando WireShark. Eso sí, la persona poseedora del número de teléfono que se iba a suplantar habría recibido un mensaje SMS que la debería haber hecho sospechar.

Portabilidad Temporal

Otra de las ideas que acudió a mi brainstorming personal fue que alguien hubiera solicitado una portabilidad ilegal del número a otro operador consiguiendo falsificar los documentos necesarios y saltar las comprobaciones, para poder luego registrar el número de WhatsApp, pero eso significaría que la línea de la persona suplantada dejaría de funcionar.

Clonado de SIM

Al final, después de animar a la denuncia y el análisis forense del terminal, la persona me contó que parece que el atacante había clonado la SIM de la víctima y que tenía todo el material encima, incluso la SIM clonada cuando lo detuvieron. Con esa SIM clonada creó la cuenta de WhatsApp y enviaba los mensajes, además de recibir toda la información de lo que pasaba con el número de teléfono de la víctima.

Figura 4: Un clonador de tarjertas SIM

Por supuesto, la víctima de la suplantación debería haber recibido el mensaje SMS con el código de confirmación de alta de WhatsApp, pero ese código no valdría nada más que para el terminal del suplantador, ya que la petición de alta en WhatsApp salió desde él con su información.

¿Cómo se clona una SIM?

Como os podéis imaginar, quise comprobar el alcance de este método de clonar SIMs a día de hoy, así que llamé a mis amigos de Layakk para que me informaran un poco de cómo iba esto y dediqué un para de horas a leer todo lo posible sobre el tema, ya que si buscas por SIM Clonning Tool en Internet el número de referencias es altísimo.

Al fin y al cabo, lo que yo realmente quería saber es si mi tarjeta SIM podría ser clonada para que alguien me robara el WhatsApp, mis SMS, etcétera, así que me puse manos a la obra a leer un poco, que es barato y se aprende mucho.

Tras la lectura de varios artículos tirando de referencias hacia atrás, al final se llega al origen de todo esto, el documento de GSM-Clonning que publicaron en 1998Marc Briceno, Ian Goldberg y David Wagner donde desarrollan un ataque de cumpleaños al protocolo COMP128(v1) que implementan muchas de las tarjetas SIM antiguas - aquí podéis leer el código C original -.

Con este ataque era posible descubrir la clave de firma que usan las tarjetas SIM a lo hora de autenticarse en la red, pero no era completo. Sin embargo en el año 2003 se publicó el artículo COMP128: A Birthday Surprise que explica cómo mejorar para sacar la clave de firma, llamada Ki de todas las tarjetas SIM que utilicen el algoritmo COMP128(v1).

Figura 5: Esquema básico de COMP128v1

Esto llevó a que proliferasen los famosos clonadores de SIM con COMP128v1, reducidos a sencillos dispositivos USB junto a herramientas software que tras crackear el valor Ki de la SIM con COMP128(v1) leen los datos y los graban en otra SIM virgen.

COMP128v2, COMP128v3 y COMP128v4

Esto no iba a ser tan sencillo, ya que la industria reaccionó con nuevos algoritmos que evitan estos ataques, añadiendo medias de control que anulan los ataques descritos anteriormente e incluso cambiando los algoritmos directamente para que no sea posible aplicar este ataque. A día de hoy aún no es posible clonar tarjetas SIM con estos algoritmos, así que si necesitas un duplicado de SIM debes hablar directamente con el operador correspondiente.

Cuanto más leía más intrigado estaba, así que volviendo a mi pregunta de ¿cómo saber qué algoritmo implementa mi SIM? busqué programas que me pudieran resolver la cuestión, pero ninguno parecía mostrar ese dato en concreto de la versión exacta del protocolo COMP128 que utiliza una determinada SIM.

La información más útil que encontré es que las SIM que se fabricaron en los años anteriores a 2002 implementaban todas COMP128(v1) y que si la SIM implementaba otro algoritmo entonces al usar cualquier software de clonación de SIMs aparecería Ki con valores todo a cero, lo que significaba que no era vulnerable.

ICCID y el año de la SIM

Intentando reducir el problema a saber de qué año es mi SIM, empecé a buscar información sobre el tema. En un artículo de SET "Saqueadores Edición Técnica" sobre SIM Emulation se explicaba que en el valor ICCID - el número de identificación único de cada SIM, los bytes de las posiciones 8 y 9 del ICCID podría indicar el año de fabricación.

En mi caso busqué cómo localizar el valor de mi ICCID en iPhone, que puede hacerse vía Información sobre el terminal, buscando los números impresos en la tarjeta SIM o bien usando las teclas de comando que se explican en el libro de Hacking iPhone*#102#, pero con el comando solo se devuelven los últimos 5 dígitos.

Figura 6: Información de ICCID en un iPhone

Al revisar el ICCID completo, los valores en las posiciones que podrían ser del año resultaron componer el número 50, así que no me cuadraban mucho, por lo que busqué datos concretos de cómo se construye ese ICCID actualmente. Para mi sorpresa descubrí que hay un vacío regulatorio bastante grande y que salvo los primeros bytes que son 89, el código del país y el número de identificación del issuer, el resto depende del propio fabricante de la SIM, siempre y cuando sea único y del mismo tamaño.

Es cierto que la recomendación habitual es que los dígitos lleven el año y el mes, junto con el número de serie, y en este Proyecto de Fin de Carrera de Angel Luís Giménez sobre Cómo crear un OMV en España así se describe también como ejemplo de creación de un ICCID.

Buscando información sobre quién fabricó mi SIM, encontré este documento que tal vez os venga bien si tenéis que hacer algún forense a una SIM o un terminal, que recoge la lista de todos los Issuer Indentification Numbers, y donde por supuesto está el mío, que pertenece a Telefónica.

Figura 7: ICCID de Telefónica

En el caso concreto de Telefónica no se usa esa aproximación basada en años y meses o semanas, pero si tu operador si la utiliza, te agradecería que me informaras de ello y al mismo tiempo sabrás si tu tarjeta puede ser o no clonada por usar COMP128v1. Por supuesto, yo no me pienso quedar con la duda de cómo se construye ese ICCID en mi número, pero parece más que claro que no lleva el año en él - al menos a simple vista -.

Redes de operadores móviles y fortificación

Otra de las opciones que se plantean es que el operador no permita tarjetas con algoritmos de firma basados en COMP128v1. Buscando información sobre ello topé con este artículo de Pedro Cabrera que explica en Security By Default cómo es posible suplantar un número de teléfono por GSM aprovechando que el despliegue de redes más modernas no es siempre tan sencillo y quedan aún zonas con tecnologías que lo permiten.

De hecho, existe un mapa del mundo en GSMMap que cataloga las redes de los países por diferentes niveles de seguridad dependiendo de las tecnologías que van implementando para evitar cualquier nuevo ataque.

Figura 8: Mapa de seguridad GSM en Europa

Por supuesto, esto es un coste de inversión alto que además lleva un tiempo de despliegue de las nuevas capacidades, así que es posible que por motivos de compatiblidad o cobertura, sigan siendo admitidas esas SIM antiguas.

¿Me pueden clonar mi tarjeta?

Lo dicho, si tu tarjeta es moderna no parece posible que lo hagan, pero si tu tarjeta es antigua podría pasar, así que, tal vez sea una buena idea no dejar la SIM al alcance de cualquiera - Apple ya ha patentado un sistema de extracción segura de SIM - y/o pedir una SIM más moderna.

De hecho, las tarjetas SIM tan antiguas no funcionan con 4G y puede que te den problemas incluso con 3G, pero si eres de esos que tiene la SIM desde hace años porque es más seguro un teléfono móvil antiguo que un smartphone, que sepas que eso no tiene que ser siempre así.

Saludos Malignos!

Viewing all articles
Browse latest Browse all 4204

Trending Articles