Análisis Forense de Tarjetas SIM: Última Ubicación

Fecha de publicación: 2019-07-12
Última actualización: 2019-12-24
Autor: Victor Celer

 

Cada vez que el teléfono móvil se registra en la red GSM/UMTS/LTE (este proceso se conoce como "IMSI attach") o se produce un cambio de ubicación, una casilla de memoria se sobreescribe en la tarjeta SIM para registrar la ubicación actual. En los estándares 3GPP esta casilla de memoria se llama fichero EFLOCI. La descripción del formato de este fichero se encuentra en 3GPP TS 11.11. Sin importar si la tecnología es 2G, 3G o LTE, el fichero LOCI siempre está presente y contiene los siguientes datos:

Bytes

Contenido

Longitud

1 a 4

TMSI

4 bytes

5 a 9

LAI

5 bytes

10

TMSI TIME

1 byte

11

Location update status

1 byte

 

El campo llamado Location Area Information (LAI) representa la ubicación actual del móvil o la última ubicación del mismo antes de que fuese apagado, puesto en "modo avión" o se haya descompuesto. Este campo LAI puede ser útil en análisis forense u otros casos de uso de geolocalización. En este artículo explicaremos cómo extraer e interpretar el LAI.

Básicamente existen 2 maneras de extraer cualquier información desde la tarjeta SIM/USIM:

  1. Existen apps para smartphone que permiten leer ciertos ficheros en la tarjeta SIM.
  2. Un Lector de Tarjetas + un software especializado para PC.

La ventaja de la primera opción es que no se requiere disponer de un Lector de Tarjetas y su respectivo software. Además, no es necesario extraer la tarjeta SIM del equipo móvil. Sin embargo, existen varias desventajas:

  • Cuando la tarjeta SIM se coloca en el equipo móvil y se ejecuta el encendido, algunos datos se sobreescriben. De hecho, el LOCI se sobreescribe durante el proceso de registro en la red. Para evitar esto puede activar el "modo avión", pero no hay garantía de que toda la información sea conservada intacta.
  • La app no accede a la memoria de la SIM diréctamente, lo hace por medio de diversas capas de sistema operativo del móvil. Por lo tanto, no hay seguridad de que la información leida esté completa y no haya sido alterada. En terminología forense esto se conoce como "extracción lógica".

Debido a estas limitaciones es mas recomendable hacer uso del Lector de Tarjetas. ¡Advertencia! Si no tiene experiencia en el uso del Lector de Tarjetas se recomienda enfáticamente consultar tutoriales en línea para aprender a manipular este equipo y la tarjeta SIM de manera segura. Muchas personas han dejado inservibles las tarjetas SIM al tocar los contactos metálicos o insertar el chip sin colocarlo previamente en un adaptador plástico.

No recomendaremos una marca o modelo específico de Lector de Tarjetas. La mayoría de estos equipos son adecuados para el trabajo y los precios no varían mucho. Sólamente hay que tener en cuenta unas recomendaciones básicas:

  • Antes que nada asegúrese de que se trata de un Lector de Tarjetas Inteligentes (SmartCard Reader), ¡no un lector de tarjetas SD!
  • ¡El tamaño es importante! Si el tamaño del lector es similar al de una memoria USB, significa que probablemente no va a necesitar de un adaptador plástico adicional para insertar la SIM. Sin embargo, también significa que el mismo Lector de Tarjetas no soporta tarjetas de mayor tamaño, como el formato 1FF usado para tarjetas bancarias, tarjetas de acceso, etc.
  • Algunos proveedores incluyen los drivers y hasta el respectivo software para PC. Esto puede ser conveniente, ya que las opciones genéricas y gratuitas son muy limitadas.

En este ejemplo usaremos el software MOBILedit. Este software tuvo una versión "Lite" gratuita, la cual ya no se consigue fácilmente. La siguiente imagen resume la información que MOBILedit logró extraer de nuestra SIM de pruebas:

Interfaz de MOBILedit

Lo que nos interesa es el LAI, el cual se extrae del fichero LOCI:

d0 d1 d2 d3 d4 d5 d6 d7 d8 d9
371201013C

El formato del LAI es como sigue:

Campo Niblas Valor
Mobile Country Code (MCC) d1 d0 d3 732
Mobile Network Code (MNC) d5 d4 d2 101
Location Area Code (LAC) d6 d7 d8 d9 013C

 

Los valores de MCC y MNC usan formato BCD, mientras que el LAC usa formato binario de 16 bits. Por lo tanto, el valor hexadecimal 13C se debe covertir a decimal: 316. Finalmente este es el valor del LAI: 732-101-316.

Podemos encontrar en las tablas de MCC/MNC que 732-101 corresponde a Claro Colombia. Además, vemos que el IMSI inicia con los mismos dígitos 732101. Esto significa que la tarjeta SIM fue emitida por el mismo operador. Es decir, la tarjeta no está en roaming.

Podemos usar un servicio LBS gratuito como OpenCellid para localizar la ubicación aproximada de este LAI:

OpenCellid LBS

La API de LBS requiere de un token. Puede registrarse sin costo para obtener un token, pero el número de peticiones con token gratuito es limitado. El límite es razonablemente alto, por lo que esta API sigue siendo útil para uso forense.

Nótese que la API usa el modo "LAC fallback". Este modo es necesario porque no conocemos el Cell ID (CID). Este valor no está disponible en el fichero LOCI en la tarjeta SIM. De hecho, el CID si se incluye en el LOCI dentro del dispositivo móvil y también en el HLR del operador. Entonces, si tiene acceso al HLR del operador, podrá obtener el LOCI completo con CID para mayor precisión en la geolocalización. Algunas aplicaciones basadas en SIM pueden almacenar el CID y otros datos adicionales como NMR, pero estas aplicacione no son parte de los estándares de 3GPP.