ARTÍCULO
DE
TAPA
Básicamente una Tarjeta Inteligente es una tarjeta plástica del tamaño de una tarjeta de crédito convencional, que con tiene un pequeño micro procesador, que es capaz de hacer diferen tes cálculos, guardar información y manejar programas, que están protegidos a través de mecanismos avanzados de seguridad. Por otra parte, las SIMs para tele fonía celular GSM son pequeñas smartcard (tarjetas inteligentes) que todo teléfono GSM / UMTS lleva en su interior. La SIM tiene como misión identificar y autentificar el número de teléfono que está usando el terminal telefónico. Está compues ta por un pequeño microcontrolador y una memoria. Esto hace que este elemento sea acti vo, o sea, que puede contener programas y algoritmos para ges tionar sus propios recursos (PINs, Identificadores, claves, etc.). Los chips o tarjetas SIM de los celulares poseen números de identificación y ejecutan algoritmos de seguridad que dificultan su falsificación, sin embargo: ¿es posible falsificar un chip? ¿es lo mismo clonar que falsificar? ¿es legal clonar un chip? ¿cómo se hace? En esta nota trataremos de dar respuesta a éstas y otras preguntas que puede hacerse el lector. Autor: Ing. Horacio Daniel Vallejo
hvquark@ar.inter.net
Saber Electrónica 3
Artículo de Tapa ¿Qué es una Tarjeta Inteligente? Es una tarjeta plástica del tamaño de una tarjeta de crédito convencional, que contiene un pequeño microprocesador, el cual es capaz de procesar programas, guardar información y manejar datos, que están protegidos a través de distintos mecanismos de seguridad. Como una primera definción, la diferencia con un chip es que la tarjeta inteligente puede procesar información mientras que el chip es simplemente una tarjeta de memoria (se la llama tarjeta chip y no posee microprocesador). Sin embargo ésto no siempre es así y los electrónicos solemos definir a un chip como un circuito integrado simplemente. Los diferentes tipos de Tarjetas Chip, se distinguen por el tipo de circuito integrado con el que cuente la tarjeta, éstas se pueden clasificar en dos categorías: Tarjetas con circuito integrado de memoria. De Contacto. Sin Contacto. Tarjetas con microprocesador (tarjeta inteligente) De Contacto. Sin Contacto. Las tarjetas pueden contar con aplicaciones financieras, para ser utilizadas como sistemas de pago; también pueden usarse como control de accesos o intercambios de información. La complejidad del chip varía de acuerdo con la aplicación o aplicaciones, para lo cual una tarjeta en particular está diseñada. Existen diferentes tipos, que van desde simples sistemas de memoria, hasta sofisticados sistemas que contienen un microprocesador. Las tarjetas que contienen microprocesadores pueden ser utilizadas para aplicaciones que requieren altos niveles de seguridad, múltiples aplicaciones en la misma tarjeta y también para aplicaciones de productos emergentes como “Monederos Electrónicos” o tarjetas prepagadas. Las Tarjetas Chip sin microprocesador traen una cantidad determinada de dinero “cargada” y no son recargables, es decir, una vez utilizada es desechada. Una tarjeta con chip de contacto tiene la forma mostrada en la figura 1. Si agrandamos el recuadro dorado para ver en detalle de qué consta, tenemos la imagen de la figura 2.
Saber Electrónica 4
Figura 1
Este cuadrado dorado que se encuentra en la tarjeta es el contacto con el verdadero chip. Note que posee 8 contactos. La forma y distribución de estos puntos de contacto, varía de acuerdo al fabricante, pero de todas formas conservan las mismas funciones que son: VCC: alimentación del chip. RST: Reset. CLK: Clock o reloj. RFU: Reserved for Future Use, son puntos reserva dos para un uso futuro. GND: Ground, es la “tierra” del Chip. VPP: Habilitación de la memoria EEPROM. I/O: Punto de acceso al chip (Input / Output).
Generalmente, el chip se encuentra ubicado debajo de los contactos, y está conectado a éstos a través de cables a los diferentes puntos de contacto (figura 3). El chip de memoria contendrá solamente memoria, pero el chip inteligente que posee microprocesador, contará con Random Acces Memory (RAM), Read Only Memory (ROM) y memoria no volátil. Las Tarjetas Inteligentes Sin Contacto, tienen un Chip con las mismas características de las que son de Contacto, pero el circuito posee una antena que se encuentra en la parte interior de la tarjeta.
Figura 2
¿Pero entonces, qué es un Chip? Para no seguir distorsionando términos, digamos que un Chip es una pieza de Silicio fusionada con circuitos electrónicos que nosotros conocemos como
Artículo de Tapa Circuito Integrado. La tarjetas Chip de Contacto, se personalizan introduciendo la tarjeta a un equipo especial, que graba y/o lee la información que se quiere grabar u obtener de la tarjeta. Este equipo está conectado a su vez a una computadora o terminal, que contiene un programa diseñado para poder realizar estos procesos. Una Tarjeta Inteligente Sin Contacto, se personaliza con lectores especiales, que transmiten información por radio frecuencia a la antena que va conectada al Chip, guardando así la información requerida. De la misma forma, los lectores de este tipo de tarjeta, funcionan sin necesidad de que el lector tenga un contacto directo con ésta. Este tipo de Tarjeta es especial para aplicaciones donde la velocidad de la transacción es de importancia y donde el desgaste de la tarjeta es un factor relevante. El microprocesador de una tarjeta (bien sea de contacto o sin contacto) funciona como un disquete de computadora, donde se puede almacenar una cantidad determinada de información, bajo formatos establecidos. Adicionalmente, cada archivo tiene su propio nombre y ubicación, dependiendo de su aplicación. Cada microprocesador cuenta con un Archivo Maestro, que es único y obligatorio en todas las tarjetas con microprocesador. Cuenta con sus propios atributos de seguridad y puede contener Archivos dedicados o Archivos Elementales. Después de un Reset o de un Power Up (momento en que se utiliza el CHIP), este archivo es seleccionado automáticamente por el sistema operativo. La I.S.O, que es la International Standards Organization, es la entidad encargada a nivel mundial, de responsabilizarse por la estandarización de la producción de los diferentes productos, para evitar incompatibilidades. Por esto, para cada producto diferente, existen especificaciones que deben ser respetadas, para estar certificados por esta importante institución. En este caso específico, existen cuatro (4) normas básicas, que dispone este organismo para la estandarización de las Tarjetas Chip:
Figura 3
ISO/IEC 7810 - Tarjetas de identificación / Características físicas. ISO/IEC 7811 - Tarjetas de identificación / Tarjetas de identificación. ISO/IEC 7812 - Tarjetas de identificación / Identificación de emisores. ISO/IEC 7813 - Tarjetas de identificación / Tarjetas para transacciones financieras. ISO/IEC 7816 - Tarjetas de identificación / Tarjetas con circuito integrado con contactos. ISO/IEC 14443 - Tarjetas de identificación / Tarjetas con circuito integrado sin contactos. ISO/IEC 10373 - Tarjetas de identificación / Métodos de ensayo.
Ventajas del Chip sobre la Banda Magnética
1. Comparado con la Banda Magnética, el Chip, por sus características, es un medio mucho más “inteligente” y seguro, además, puede almacenar mayor cantidad de información (hasta 80 veces más información). 2. El Chip, que cuenta con un Microprocesador, es auto suficiente, ya que cuenta con procesos propios, y puede ejecutar sus propios programas. Esto permite que si por ejemplo se desean actualizar datos en una tarjeta, con sólo conectar el Chip al sistema con el que se desea hacer un intercambio de información, se puede actualizar automáticamente. De esta manera, en la próxima transacción se podrá actualizar información sin cambiar de tarjeta. 3. La transferencia de información es mucho más segura, ya que se trabaja con encriptación, que es trans1. ISO 7816-1 (Características físicas de la tarjeta). formar la información a un lenguaje cifrado, mientras se 2. ISO 7816-2 (Posición del Chip y los contactos). 3. ISO 7816-3 (Protocolos de comunicación entre la hace la transferencia de información, para que sea desencriptada y leída, sólo y exclusivamente por termitarjeta y los lectores). 4. ISO 7816-4 (Conjunto de “comandos para las tar - nales autorizadas, sin permitir “intrusos” en la transacción. jeta con microprocesador”). 4. Se pueden tener múltiples aplicaciones en una Los estándares aplicables a la fabricación de tarjetas misma tarjeta. 5. Se pueden realizar transacciones fuera de línea, chip son los siguientes:
Saber Electrónica 6
Artículo de Tapa para pagos en lugares no convencionales como taxis, parqueaderos, peajes, buses, etc. 6. El Chip tiene una duración y resistencia mayor a la que tiene la Banda magnética.
Las tarjetas SIM en los Teléfonos Celulares Una tarjeta SIM (acrónimo de Subscriber Identity Module, ‘Módulo de Identificación del Suscriptor’ MIS) es una tarjeta inteligente desmontable usada en teléfonos móviles que almacena de forma segura la clave de servicio del suscriptor usada para identificarse ante la red, de forma que sea posible cambiar la línea de un terminal a otro simplemente cambiando la tarjeta. El uso de la tarjeta SIM es obligatorio en las redes GSM. Su equivalente en las redes UMTS se denomina USIM o UICC (acrónimo de Universal Integrated Circuit Card, ‘Tarjeta Universal de Circuito Integrado’), siendo más popular el RUIM (Removable User Identify Module, ‘Módulo de Identidad de Usuario Desmontable’) en los teléfonos CDMA. Las tarjetas SIM está disponibles en dos tamaños. El primero es similar al de una tarjeta de crédito (85,60 x 53,98 x 0,76 mm). El segundo y más popular es la versión pequeña (25 x 15 x 0,76 mm). Las especificaciones aplicables a las tarjetas SIM son: GSM 11.11: Especificación de la interfaz SIM-ME (Mobile Equipment, ‘Equipamiento Móvil’). GSM 11.14: Especificación del SIM Application Toolkit (‘Herramientas de Aplicación SIM’) para la interfaz SIMME. La típica tarjeta SIM de bajo costo (sólo GSM 11.11) tiene poca memoria, 2-3 KB según describe la especificación (directorio telefónico y poco más). Este espacio de almacenamiento es usado directamente por el teléfono. El segmento de mercado de las tarjetas SIM de bajo costo está en constante declive. Las tarjetas SIM con aplicaciones adicionales (GSM11.14) están disponibles con muchas capacidades de almacenamiento diferente, siendo la mayor 512kB. Tarjetas SIM menores, de 32kB y 16kB, son las dominantes en zonas con redes GSM menos desarrolladas. También existen las tarjetas Large Memory SIM (‘SIM de Memoria Grande’), con capacidades del orden de 128 a 512 kilobytes. Los sistemas operativos para tarjetas SIM son principalmente dos:
Basados en Java: tienen la ventaja de ser indepen dientes del hardware e interoperables. Las tarjetas SIM almacenan información específica de la red usada para autenticar e identificar a los suscriptores en ella, siendo la más importante el ICC-ID, el IMSI, la clave de autenticación (Ki) y la identificación de área local (LAI). La tarjeta SIM también almacena otros datos específicos del operador como el número del SMSC (centro de servicio de mensajes cortos), el nombre del proveedor de servicio (SPN), los números de servicio de marcado (SDN) y las aplicaciones de servicios de valor añadido (VAS). Las correspondientes descripciones están disponibles en la especificación GSM 11.11 pero para mayor comodidad brindaremos algunos aspectos de cada término mencionado. ICCID: Cada SIM se identifica internacionalmente por su ICC-ID (en inglés) (International Circuit Card ID, ‘Identificador Internacional de la Tarjeta de Circuitos’). Los ICC-IDs se almacenan en las tarjetas SIM y también se graban o imprimen sobre el cuerpo de plástico de las mismas en un proceso de personalización. IMSI: Las tarjetas SIM se identifican en sus redes móviles individuales mediante un IMSI (International Mobile Subscriber Identify, ‘Identidad Internacional del Suscriptor Móvil’) único. Los operadores de telefonía móvil conectan las llamadas a teléfonos móviles y se comunican con sus tarjetas SIM comercializadas usando su IMSI. Clave de autenticación (Ki): La clave de autenticación (Ki, Authentication key) es un valor de 16 bytes usado para autenticar las tarjetas SIM en la red móvil. Cada tarjeta SIM tiene una Ki única asignada por el operador durante el proceso de personalización. La Ki también se almacena en una base de datos específica llamada AuC (acrónimo de Authentication Center) que está implementada como parte integral de la HLR (acrónimo de Home Location Register) de la red del operador, vea la figura 4.
Proceso de Autenticación A los fines prácticos, y para que el lector entienda cómo se conecta un teléfono en la red de telefonía celular, damos a continuación los pasos que se siguen desde el momento de encender el terminal.
Nativos: software propietario y específico del vende dor (correspondiendo típicamente con el segmento de 1) Cuando el teléfono se enciende envía su IMSI al mercado de bajo costo); operador de la red solicitando acceso y autenticación.
Saber Electrónica 8
Tarjetas Inteligentes Figura 4
2) El operador de la red busca en su base de datos el IMSI y la clave de autenticación (Ki) relacionada. El ope rador de la red genera un número aleatorio (RAND) y lo firma con la Ki de la SIM, generando así un número cono cido como SRES_1 (Signed Response 1, ‘Respuesta Firmada 1’). 3) El móvil cliente de la red envía el RAND a la tarje ta SIM, que también lo firma con su Ki y envía el resulta do (SRES_2) de vuelta al operador de la red. 4) El operador de la red compara su SRES_1 con el SRES_2 generado por la tarjeta SIM. Si los dos números coinciden, la SIM es autenticada y se le concede acceso a la red. El algoritmo criptográfico usado en el estándar GSM para calcular el SRES_2 tiene un punto débil, permitiendo la extracción de la Ki de la tarjeta SIM y permitiendo elaborar duplicados (clones) de la misma.
Identificación de Área Local La tarjeta SIM almacena información del estado de la red que se envía desde la misma, como la identificación de área local (LAI, Location Area Identify). Las redes de los operadores están divididas en áreas locales, cada una de las cuales tiene un número LAI único. Cuando el terminal móvil cambia su ubicación de un área local a otra
almacena su nuevo LAI en la tarjeta SIM y la envía al operador para informar a la red de su nueva localización. Si el terminal se apaga y se vuelve a encender, recuperará la información de la tarjeta SIM y buscará la LAI en la que estaba. Esto ahorra tiempo al evitar tener que buscar toda la lista completa de frecuencia como se haría por defecto.
Características de la SIM de un Teléfono Celular Como ya hemos dicho, esta tarjeta inteligente está formada por un microprocesador, una memoria ROM y otra RAM, en la que se encuentran: Una agenda de 90 ó 100 posiciones para almacenar nombres y números de teléfono. Una agenda de 14 ó 16 posiciones donde quedarán almacenados los SMS recibidos. Una agenda de 10 posiciones donde almacenar 10 nombres y números para crear una restricción de llama das a dichos números. La SIM, posee un código de seguridad de acceso llamado PIN (en realidad es el PIN1), el cual está formado por cuatro dígitos. Dicho código podemos cambiarlo a voluntad e incluso anular su petición. Si introducimos el código 3 veces erróneamente, se bloquea. En este caso
Saber Electrónica 9
Artículo de Tapa nos pide el PUK 1 que consta de 8 dígitos, si lo introducimos correctamente nos desbloquea el PIN 1. Si el PUK se introduce erróneamente 10 veces, la SIM se bloquea indefinidamente. Disponemos también de un PIN 2 para activar la marcación fija (agenda de 10 posiciones) o control del saldo, las restricciones, etc. Si lo introducimos 3 veces mal, nos pide el PUK 2 que consta de 8 dígitos, el cual, una vez introducido correctamente, nos desbloquea el PIN2. Si el PUK 2 se introduce erróneamente 10 veces, el PIN 2 se bloquea indefinidamente. El chip o SIM de un teléfono celular también se denomina “tarjeta ISO plug-in”, figura 5. A continuación, brindamos los datos generales de las Tarjetas Sim: CPU: Tecnología CMOS, código de operación com patible con SAB 8051. ROM: 15 kByte usuario + 2 kbyte CMS. RAM: 256 bytes. EEPROM: 8 kBytes o 16 kBytes. Página EEPROM: Flexible, de 1 a 32 bytes en opera ciones de escritura/borrado. Tensión de programación: Generada internamente. Tiempo de programación de la EEPROM: 3,5 ms para escritura o borrado. Características de seguridad: Posee sensores de alta/baja tensión y baja frecuencia. También incluye un fil tro de alta frecuencia. Interfaz serie: Posee cuatro, desde 9600 bps a 76800 bps, tal como sugiere la norma ISO 7816-3.
Clonación De una SIM Clonar una SIM significa crear una SIM diferente a la original pero que se comporte exactamente igual. Para poder realizar una clonación, se tiene que “emular” la SIM original ya que, a parte de “copiar” los datos de la SIM, es necesario “copiar” su comportamiento e incluso ampliarlo. Al clonar una SIM es posible colocarle varios números de teléfono en el nuevo chip. Esta modalidad es muy práctica para no tener que llevar varias SIM e ir intercambiándolas cada vez en mismo terminal. Una ventaja de realizar una clonación en base a esta premisa es que los números de teléfono pueden ser de diferentes operadoras. Dependiendo de la emulación que se haga de la SIM (el emulador que se use para ello) puede llegar a tener hasta 10 números diferentes en una misma SIM (pudien-
Saber Electrónica 10
Figura 5
do ser de diferentes operadoras). Otra variante de la clonación es tener varios chips con el mismo número de teléfono, lo cual resulta muy práctico en el caso de que tenga varios terminales y quiera usar el mismo número en todos. Un ejemplo muy claro de ello es el típico manos libres del coche. Muchos automóviles llevan su propio terminal de GSMal que introduciéndole la correspondiente SIM funciona directamente. Normalmente, se requiere que en el terminal personal y el del coche sea el mismo número y a no ser que esté intercambiando constantemente la única SIM existente, la solución es la clonación. Teniendo varios SIM puede llevar uno en un móvil personal y otro en el coche. Otro objeto de la clonación es el de backup (tener una copia por si le roban o pierde el teléfono). Hay que tener en cuenta que para realizar la clonación NO PUEDE UTLIZAR UN CHIP DE OPERADOR ya que éstos son de los operadores y, en general, los equipos para programarlos suelen ser costosos. La solución es utilizar tarjetas ISO plug-in de las muchas que hay en el mercado y “clonarlas” con el SIM que se desea. El nuevo chip será una “emulación” del SIM telefónico pero que, en general, tiene mucha capacidad de memoria y se le puede programar qué parte se usa para un caso y cuánto para el otro. En definitiva, la tarjeta clonada (copia de la original) tiene una serie de características que permiten ajustar su funcionamiento al uso del usuario con independencia de la operadora. Para clonar una SIM es necesario: 01.- La SIM “original” a clonar. 02.- Un lector de tarjetas ISO 7816. 03.- Una computadora PC.
Tarjetas Inteligentes 04.- Un programador de microcontrola dores. 05.- La tarjeta de clonaje (tarjeta desti no o virgen). 06.- El programa emulador para la tarje ta de clonaje. 07.- El programa clonador o backup de SIM. En general, tanto los lectores como los programadores son circuitos sencillos y en futuras ediciones daremos indicaciones de armado de algunos. Aclaramos que el programador dependerá de la tarjeta virgen a utilizar; el único requisito es que se compatible con ISO 7816, luego, si es con PIC, podrá utilizar el Quark Pro 2 que publicáramos en Saber Electrónica. En cuanto al software para la clonación, hay muchos disponibles en la web y nosotros indicaremos los que nos parecen más apropiados. Como Lector de tarjetas ISO 7816 puede utilizar cualquiera que consiga en
Figura 6
Figura 8
Figura 7
Saber Electrónica 11
Artículo de Tapa el mercado; en la figura 6 podemos apreciar un lector clásico, económico pero que suele tener problemas de drivers para algunos sistemas operativos. El lector de la figura 7, cuyo costo oscila entre los 25 y los 35 dólares americanos, permite leer tarjetas ISO tanto grandes como plugin. Si no consigue en casas de electrónica o de accesorios de celulares, buscando por Internet va a encontrar sin dificultad. En cuanto al programador, en la figura 8 damos el circuito que sirve para tarjetas del tipo Silver Card con PIC (como ya mencionamos, también podría usar el Quark Pro 2, en cuyo caso, más adelante, daremos las equivalencias para saber cómo utilizarlo). Este dispositivo lleva un cristal de cuarzo. Se suele recomendar para empezar que sea de 3.57MHz. También es necesario una fuente de alimentación así como un cable de serie conectado “pin a pin”. Para Emular el chip puede usar el programa XSim (figura 9) o el Smart Scan (figura 10), los cuales puede descargar de Internet. Hay muchos, por ejemplo el Woron Scan 1.09, el Sim Scam 2.1, etc. No es objeto de esta nota explicar el “paso a paso” para realizar una clonación, ya que este tema lo desarrollaremos en detalle en la próxima edición; sin embargo, digamos que una vez que tenemos todos los elementos, debemos extraer del SIM original el IMSI y el Ki. Las SIM de GSM, como hemos comentado, tienen en su interior un microcontrolador y una memoria con datos. Estos datos permiten identificar al usuario cuando éste, mediante el terminal, realiza o recibe una llamada. La SIM, aunque parezca extraño no contiene explícitamente el número de teléfono del abonado en su interior. En su defecto lleva un número que sirve para identificar a ese abonado en la red de dicho operador. Este número es conocido con las siglas “IMSI” (International Mobile Subscriber Identity). Este número es muy importante a hora de la clonación por que es uno de los datos fundamentales en el uso de una tarjeta SIM. El otro dato importante a extraer es el Ki (Authentication Key). Este número es una clave que se usa en los procesos de autentificación del abonado. Mediante la autentificación el operador se asegura que el IMSI y el resto de los datos de la SIM son correctos y pertenecen a una tarjeta válida. El IMSI y Ki son datos importantes para “entrar” en la red de GSM. Sin estos dos números es imposible regis-
Saber Electrónica 12
Figura 9
Figura 10
trar el móvil en un operador. Cuando el terminal se conecta envía el IMSI a la BTS (Base Transceiver Station) correspondiente. Usando el IMSI, el operador “busca” en su base de datos de usuarios HLR (Home Location Register) a qué número de abonado pertenece ese IMSI. Una vez identificado se produce el proceso de autentificación. Si alguno de los dos números no coincide con los cálculos del operador, esa SIM se quedará sin cobertura y no entrará en la red del operador.
Recuerde que IMSI es el acrónimo de International Mobile Subscriber Identity (Identidad Internacional del Abonado a un Móvil). Es un código de identificación único para cada dispositivo de telefonía móvil, integrado en la tarjeta SIM, que permite su identificación a través de las redes GSM y UMTS. El código IMSI, de acuerdo al estándar ITU E.212, está formado por:
se obtiene el número IMSI a partir de un teléfono que se encuentra en Argentina, operando con la empresa MoviStar (aclaramos que si el MNC fuera de dos dígitos, entonces el MSIN sería de 10 dígitos ya que siempre el IMSI es de 15 dígitos). La clave de autenticación (Ki, Authentication key) es un número de 16 bytes usado para autenticar las tarjetas SIM en la red móvil. Cada tarjeta SIM tiene una Ki único MCC: Código del país (3 dígitos), por ejemplo 722. asignado por el operador durante el proceso de personaMNC: Código de la red móvil (2 o 3 dígitos), por ejem - lización. La Ki también se almacena en una base de plo 010. datos específica llamada AuC (acrónimo de MSIN: Número de 9 o 10 dígitos que contiene la iden - Authentication Center) que está implementada como tificación de la estación móvil (MS o Mobile Station), por parte integral de la HLR (acrónimo de Home Location ejemplo 123456789. Register) de la red del operador. La traducción del MSISDN (número de teléfono móvil) al IMSI se realiza en el HLR (vea nuevamente la figura 4). En la tabla 1 podemos apreciar un ejemplo de cómo
¿Cómo extraemos estos números de la SIM original? La extracción de estos números no daña a la SIM original pero puede ser un proceso muy largo que puede extenderse varias horas. Para extraer ambos números podemos usar el XSim (figura 11). Una vez ejecutado esperamos que detecte el lector y compruebe que la SIM está introducida en el lector. El IMSI es un dato muy sencillo de leer. Se encuentra dentro de un fichero de la SIM (las SIM tienen un pequeño S.O. con un árbol de ficheros, el nombre de dichos ficheros por economizar sitio son números en hexadecimal). El fichero que contiene el IMSI es el 3F00:7F20:6F07. Tanto el 3F00 y 7F20 son DF
Saber Electrónica 13
Artículo de Tapa (Dedicate Files) (como “directorios” de la SIM) y el 6F07 es un EF (Elementary File). Pero si quiere hacer la tarea más sencilla, directamente use la opción “escaneo standard del XSim” y el programa se encargará de localizar el IMSI y mostrarlo directamente en la pantalla principal. Es recomendable acceder al fichero del SIM para que efectivamente están ahí todos los datos que componen el IMSI. La extracción del Ki es más complicada. El Ki es una clave secreta que posee cada SIM, como dijimos, tiene una longitud de 16 Bytes (16 números de 0 a 255). Esto hace que haya 2128 combinaciones posibles de Figura 11 ese número. La SIM mediante su procesador interno, realiza un cálculo matemático en el que ese número entra en juego. Ese proceso se llama autentificación y es primordial para el funcionamiento de la SIM y para la clonación de la misma. Por eso DEBEMOS extraer este número de la SIM original para poder clonarla. El proceso de extracción del Ki se realiza por pares (8 pares de 2 bytes). Una vez realizado el mismo ya estaremos en disposición de clonar nuestra SIM. Si no quiere aguardar hasta el próximo número para saber cómo se hace, puede descargar el artículo completo de nuestra web: www.webelectronica.com.ar, haciendo click en el ícono password e ingresando la clave: “SIMKI” en dicho sitio encontrará, también, todos los links para descargar todos los programas necesarios.
uno comercial como el de la figura 12, o armarlo Ud. mismo con el circuito de la figura 8. También precisará una tarjeta virgen, puede usar una SilverCard o una Greencard o la que consiga en su localidad, para usarla como SIM telefónico cualquiera sirve. Sólo basta que cumpla con el estándar ISO1786. En la figura 13 podemos ver el circuito correspondiente a algunas de las tarjetas que se consiguen en el mercado. Cabe aclarar que puede tener tantas tarjetas clonadas como Ud. quiera. En general, cuando se activa mediante el terminal una SIM, el operador genera un número temporal llamado TMSI (Temporal Mobile Subscriber Identity) de manera que mientras se encuentra en servicio este número se usa como si fuera el IMSI. Nota Importante: En primer lugar recuerde que la tar - Esto permite que varios terminales con SIM clonadas funjeta SIM que le entrega un operador para que pueda cionen al mismo tiempo. En el envío de llamadas se comregistrarla en un terminal ES DEL OPERADOR Y NO portaran sin diferencia alguna. Todas las SIM usarán el PUEDE MODIFICAR SUS DATOS SIN SU AUTORIZA - mismo número telefónico (algunos operadores no permiCION. En segundo lugar, los datos son del usuario y la ten esta modalidad). Las llamadas podrán interponiéndoclonación no implica delito si se tiene consentimiento por se en el tiempo y serán facturadas en una única factura escrito del dueño de dichos datos. Si tiene dudas NO LO pero no será posible llamar al mismo tiempo desde dos HAGA, si desconoce la legislación local, absténgase de realizar cualquier tarea de lectura o programación ya que si realiza algo diferente de lo que estamos mencionando podría incurrir en una práctica ilegal. Para la clonación de la tarjeta en sí, nosotros recomendamos el uso del programa SIM-EMU (figura 11). Cada emulador se configura de forma diferente por lo que lo mejor es obtener la información puntual del que quiere realizar. En el caso de SIM-EMU, el mismo se basa en tarjetas con microcontrolador PIC (Microchip) 16F877/76. También necesitamos un programador, que puede ser
Saber Electrónica 14
Figura 12
Tarjetas Inteligentes Figura 13
Saber Electr贸nica 15
Artículo de Tapa
Figura 14 celulares diferentes, el primero que llama es el que se queda con la comunicación. En cuanto a la recepción, solo uno de los teléfonos puede recibir la llamada por más que estén todos en servicio. El teléfono en recibir la llamada será el ultimo el cual haya obtenido un TMSI válido. Normalmente las operadoras generan el TMSI cuando autentifican la SIM y esta autentificación se produce al realizar una llamada con la misma por lo que tenemos que: “el último teléfono en efectuar una llamada será el que las reciba”. Esta regla no siempre se cumple entre las diferentes operadoras ya que algunas autentifican la SIM por encender el terminal y conectarse a la red. En cuanto a la cantidad de líneas activas, por más que en el SIM clonado haya puesto varias líneas, sólo una puede registrarse en la red ya que cada teléfono SOLO tiene un canal de radio por lo cual es posible mantener una sola conexión (en espera o hablando) con el operador. Lo que se hace con la tarjeta clonada es pasar de un número a otro por menú, sin tener que apagar el terminal y cambiar la SIM.
El operador mediante estos ICCID puede relacionar en su base de datos cuál es el MISDN (número de teléfono) de esa tarjeta, y cambiarlo por la nueva. En cuanto esta operación se realiza, de forma automática la antigua SIM deja de funcionar y la nueva comienza a identificarse. O sea, más que duplicar, “sustituye” la tarjeta. Con la clonación no sustituimos nada en la base de datos del operador sino que realmente “duplicamos” los datos de la SIM para que haya dos iguales. Ahora bien, lo explicado hasta aquí no sirve para todas las tarjetas SIM. Por razones de seguridad las tarjetas SIM tienen una rutina de seguridad llamada HASH (luego lo explicaremos) y se las conoce como tarjetas COMP128. Hay varias versiones de estas tarjetas pero sólo puedo asegurar que se pueden clonar las de versión v1. Esto es porque todos los programas de extracción del Ki usan el mismo método: la extracción por colisiones.. Este método se basa en un bug conocido de la función COMP128 v1. En la función COMP128 v2 esto fue resuelto y dichos programas de extracción no funcionan. Para determinar si una SIM es v1 o v2 (os ea que la Algo importante a tener en cuenta es que NO ESTA - versión del COMP128 es v1 o v2), la única manera fiable MOS DUPLICANDO la SIM. En la duplicación se cambia es realizar una búsqueda del Ki con los programas de el número de IMSI y el del Ki, en la clonación éstos se extracción existentes y determinar así si se puede realimantienen. zar dicha extracción. Si se fija en nuestra web, damos varias versiones de programas que permiten la extracción La “duplicación” tiene más que ver con una “sustitu- del Ki y según los responsables de algunos de ellos “este ción” que con una copia de la SIM. Cuando un distribui- tema fue resuelto” sólo que desconozco la legalidad del dor de una operadora “duplica” una SIM realmente lo que uso de este método y, por lo tanto, no puedo recomenestá haciendo es “asignar” su número de teléfono darlo. Dejo a criterio del usuario que emplee los métodos (MISDN) a una nueva SIM. Esta nueva SIM (como todas) a los que hacen referencia los responsables con fines de tiene su propia pareja de IMSI & KI que a su vez son investigación y desarrollo pero antes aconsejo asesorarDIFERENTES de la tarjeta antigua. Realmente el distri- se sobre la legislación vigente en su lugar de residencia. buidor lo único que hace es leer el ICCID (recuerde que Tenga en cuenta que si no consigue tarjetas plug-in, es el número que identifica a la tarjeta y que está impre- podrá emplear tarjetas ISO 7816 como las que mencioso en ella) de ambas tarjetas (antigua y nueva) y llamar namos anteriormente en la figura 13 y cuyo aspecto físial operador para comunicarle la sustitución. co podemos ver en la figura 14.
Saber Electrónica 16
Tarjetas Inteligentes
Figura 15
Una vez que realiza la clonación puede recortar la tarjeta con una navaja bien afilada o un cuter, siguiendo las medidas sugeridas en la figura 15. La Función HASH Si la tarjeta SIM tuviera solamente un número IMSI y un Ki, sería muy fácil de clonar y cualquiera podría “falsificarla”, es decir, realizar una clonación sin permiso del dueño. Para evitarlo la SIM contiene un sistema de autentificación basado en una función matemática. Esa función matemática es una función HASH. Estas funciones tienen la propiedad de devolver una única salida a partir de una entrada. Esto implica que si Ud. le ingresa un número (7 por ejemplo), la función entrega siempre un mismo resultado para ese número. Otra propiedad de las rutinas HASH es que no puede deducir la entrada a partir de la salida, es decir, son funciones inreversibles. Las tarjetas SIM con función HASH se llaman tarjetas COMP128 y tiene dos versiones v1 y v2. Para acceder a esta función HASH se utiliza el comando GSM 11.11 A0 88. Mediante la función HASH, ahora la secuencia de validación para registrar el celular (o su SIM) en la red es la siguiente:
secreto Ki de datos de entrada para ejecutar el COMP128. El COM128 devuelve un resultado en dos partes SRes y Kc. El SRes es devuelto a la central. El Kc se guarda. 4) La central, que conoce el Ki de esa SIM (que está asociado al IMSI en su base de datos), repite toda la operación que ha echo la SIM (note que tiene el Ki y el SRand por lo que puede ejecutar una COMP128 como lo hace la tarjeta).El operador compara el SRes enviado por la SIM, con el que acaba de calcular. Si son iguales la tar jeta es "válida”. Los números que pasan entre el operador y la tarjeta son aleatorios. No puede generar con este procedimiento una autentificación (o respuesta igual) si no tienes el Ki. La implementación concreta de la rutina COMP128 se realiza como sigue: 1) Una entrada de 32 Bytes compuesta por 16 Bytes del SRand + 16 Bytes del Ki 2) Una salida de 12 Bytes. De los cuales 4 Bytes son para el SRes + 8 para el Kc.
¿Para qué se usa el Kc? El Kc se usa posteriormente como clave de la encrip1) La SIM manda a la central el IMSI y se identifica. tación de voz. Los últimos 10 bits del Kc en COMP128 v1 2) El operador comprueba que datos tiene su base y v2 “SON CEROS”. de datos para este IMSI. El operador genera un número El programa XSim, en su función de búsqueda del Ki, aleatorio que llamaremos SRand. Envia el SRand a la tar - tiene una solapa llamada Test Vectors. Lo que hace en jeta (todo por medio de teléfono que no es más que un esta sección es mandar a la tarjeta 3 SRand diferentes terminal). y comprobar los resultados (separándolos por sus par3) La tarjeta usa este SRand más su número tes). Con esto se tiene una muestra de comportamiento
Saber Electrónica 17
Artículo de Tapa de la tarjeta. Estos datos sirven posteriormente de TEST para comprobar si el Ki obtenido es el mismo que el que ha generado esas comprobaciones. Con eso se puede "certificar" que el Ki encontrado es bueno.
Las Normas ISO 7816 ISO 7816 es la norma aceptada internacionalmente para las tarjetas inteligentes. ISO 7816 es una familia de normas que tratan principalmente los aspectos de interoperabilidad de tarjetas inteligentes con respecto a la comunicación, las características, sus propiedades físicas y la aplicación de los identificadores y datos de los chips implantados. La familia ISO 7816 incluye once “íconos” que se encuentran en un constante estado de cambio, ya que están sujetas a revisión y actualización. Para obtener la última versión de las normas ISO 7816 puede consultar el ANSI. Los aspectos que trata cada componente o ícono de la norma son los siguientes: ISO 7816-1 La norma ISO 7816-1 especifica las características físicas de la tarjeta. Características físicas de una tarjeta incluye: o Dimensiones o Las radiaciones electromagnéticas o Mecánicas o Ubicación de IC integrado en la tarjeta de o Ubicación de la tira magnética o Resistencia a la electricidad estática ISO 7816-2 El estándar ISO 7816-2 define la ubicación de los contactos y las dimensiones. También define el objetivo, la ubicación y características eléctricas de los contactos metálicos de la tarjeta. ISO 7816-3 El estándar ISO 7816-3 está diseñado para hacer frente a las señales electrónicas y protocolos de transmisión. ISO 7816-3 especifica la tensión actual y las necesidades de los contactos eléctricos, que son los siguientes: o Asincrónico halfduplex carácter protocolo de transmisión (T = 0).
Saber Electrónica 18
o Asíncrono half duplex bloque protocolo de transmisión (T = 1). Las tarjetas inteligentes que utilizan un protocolo de transmisión de propiedad llevan la denominación de la misma. o T = 14 incluye la revisión del tipo de protocolo de selección. ISO 7816-4 El estándar ISO 7816-4 define la inter-industria para el intercambio de comandos de la tarjeta de CPU. Se prevé la instalación de la interoperabilidad en todos los sectores para garantizar la seguridad y la transmisión de datos de la tarjeta. En él se definen los comandos básicos de lectura, escritura y actualización de datos de la tarjeta. ISO 7816-5 La norma ISO 7816-5 se refiere a procedimiento de registro para identificadores de aplicación (AID) y el sistema de numeración. En ella se definen las normas para identificadores de aplicación que tiene dos partes: o Solicitud de registro de identificación del proveedor (RID), de cinco bytes que es único para el vendedor. o Un campo de longitud variable de hasta 11 bytes que se deshace puede utilizar para identificar las aplicaciones específicas. ISO 7816-6 El estándar ISO 7816-5 define la transferencia física del dispositivo y los datos operativos. Dos protocolos de transmisión se incluyan en la misma: el carácter de protocolo (T = 0) o bloquear el protocolo (T = 1). Una tarjeta puede soportar tanto, pero no ambos simultáneamente. Si la tarjeta no está siguiendo ninguna de las normas, entonces es tratado como (T = 14). ISO 7816-7 Tarjeta estructurado Query Language (SCQL) se da para la inter-industria para la interoperabilidad de los comandos de la tarjeta estructurado Query Language (SCQL). Especifica el método estándar para mantener y consultar la base de datos, también proporciona el formato definiciones. ISO 7816-8 Operación de seguridad comandos están normalizados por este criterio.
Tarjetas Inteligentes
Figura 16 ISO 7861-8 incluye los comandos de gestión de la seguridad interior de la tarjeta y puede incluir técnicas de cifrado y otros métodos de gestión de la seguridad. ISO 7816-9 El estándar ISO 7816-9 incluye especificaciones para los comandos de la tarjeta de gestión. A continuación se presenta el principal interés de esta norma: o Descripción y codificación de atributos de seguridad de la tarjeta de objetos relacionados con: o Funciones adicionales y la sintaxis de comandos entre la industria o Designación y codificación de mercancías del ciclo de vida de las tarjetas y objetos relacionados con: o Elementos de datos asociados con estos comandos o Mecanismo para iniciar la tarjeta de mensajes de origen ISO 7816-10 La norma ISO 7816-10 está diseñado para hacer frente a señales eléctricas y restablecer las señales sincrónicas para tarjetas. Incluye los siguientes: o Señal de las estructuras o Poder o Estructura para el restablecimiento de la señal
que se envía entre la tarjeta de CI y la interfaz de dispositivo, como una terminal ISO 7816-211 La norma ISO 7816-11 es de identificación personal del usuario. Se pueden utilizar métodos biométricos y normas para lograr la identificación personal.
Otras Normas Pertinentes de la Industria Aparte de las anteriores normas, algunas normas específicas de la industria en general, son también seguidas. Algunos de los estándares de la industria son los siguientes: o Normas de Comunicaciones de CI o HIPAA - El Health Insurance Portability and Accountability Act adopta las normas nacionales para la aplicación de una transacción electrónica segura del sis tema de salud o EMV - Europay, MasterCard y Visa EMV forma do Company, LLC y ha creado la "Tarjeta de circuitos inte grados Especificaciones para Sistemas de Pago" o CEN (Comité "Europe'en de Normalización) y ETSI (Instituto Europeo de Normas de
Saber Electrónica 19
Artículo de Tapa o FIPS (Federal Information Processing Standards) fue desarrollado por la División de Seguridad en el Instituto Nacional de Estándares y Tecnología. FIPS estándares están diseñados para proteger los activos, incluidos los federales y los sistemas de telecomunica ciones. De más está decir que el tema no termina aquí y que en la próxima edición publicaremos un artículo que muestra cómo se puede hacer la clonación de una tarjeta paso a paso utilizando un circuito como el de la figura 16 y 17 con fines de back-up o para poder tener varios números telefónicos en un sólo chip. ✪ Referencias: Figura 17 Telecomunicaciones) se centra en las telecomunicacio nes, al igual que con la tarjeta SIM GSM para teléfonos celulares.
Saber Electrónica 20
http://es.tech-faq.com http://www.endorasoft.es http://www.todoelectronica.com http://simemu.cjb.net wikipedia http://www.kiscan.net