viernes, 19 de marzo de 2010

Tecnología GSM






  • Introducción

  • Arquitectura GSM

  • Niveles de comunicacion

  • Movilidad GSM

  • Servicios GSM

  • Canal de Radio GSM - TDMA

  • Caracteristicas de Seguridad

  • Autentificacion

  • Confiencialidad

  • Despedida!











  • 1) Introducción
    Antes, con los sistemas de telefonica Celular como AMPS (Advanced Mobile Phone System) y TACS (Total Access Communication System) era bastante facil para cualquier Phreaker, interceptar las conversaciones telefonicas celulares ya que esos sistemas analogicos utilizaban ESN (Electronic Serial Number) que transmitia la informacion sin cifrar, y facilitaba un fraude telefonico, en toda regla ;). Ahora la cosa esta mas dificil, ya que en GSM se utiliza un algoritmo de codificacion de voz, modulacion digital GSMK (Gaussian Minimum Shift Keying), lento salto de frecuencia y arquitectura de ranuras de tiempo TDMA (Time Division Multiple Access).

    2) Arquitectura GSM
    La arquitectura GSM consta de varios Subsistemas:



  • Estacion Movil (MS): Se trata de telefonos digitales que pueden ir integrados como terminales en vehiculos, pueden ser portables e incluso portatiles. Un dispositivo SIM (Subscriber Identify Module) que es basicamente la tipica Tarjeta que proporciona la informacion de servicios e identificacion en la Red,


  • Subsistema de Estacion (BSS): Es una coleccion de dispositivos que soportan el interface de radio de redes de commutacion. Los principales componentes del BSS son:
    1. Estacion Traceptora de Base (BTS) - Consta de los modems de radio y el equipo de antenas.
    2. Controlador (BSC) - Gestiona las operaciones de radio de varias BTS y conecta a un unico NSS (Network and Switching Sub-System)

  • Subsistema de Commutacion y Red (NSS): Proporciona la commutacion entre el subsistema GSM y las redes externas (PSTN, PDN...) junto con las bases de datos utilizadas para la gestion adicional de la movilidad y de los abonados. Los componentes son:
    1. Centro de conmutacion de Servicios Moviles (MSC).
    2. Registros de Localizacion Domestico y de Visitas (HLR - VLR)
    3. LAs bases de datos de HLR y VLR se interconectan utilizando la Red de Control SS7.
    4. Subsistema de Operaciones (OSS) - Responsable del mantenimiento y operacion de la Red, de la gestion de los equipos moviles y de la gestion y cobro de cuota.




  • 3) Niveles de comunicacion
    Como GSM no es dioS ni nada parecido ;), necesita la utilizacion de varios protocolos para poder controlar las llamadas, transferir informacion y proporcionar gestion global del sistema. Desde la MS existen 4 niveles para la comunicacion:
    1. Interface RF (Radio Frecuency) a la BTS.
    2. Nivel de gestion de Recursos de Radio (RR) al BSC.
    3. Gestion de la movilidad (MM).
    4. Gestion de las comunicaciones (CM) al registro VLR del MSC.
    El de transmision entre la MS y la BTS es el unico componente que es unico a las redes celulares GSM, modificado para funcionar sobre diferentes frecuencias en el caso de PCS y reemplazado totalmente en el caso de sistemas de comunicacion por satelite. El interfaz entre la MS y la BTS consta de un canal TDMA de salto de frecuencia que se divide en varios subcanales, unos se utilizan para la transmision de informacion de usuario y el resto los utilizan los protocolos de control convenidos. Para incrementar la vida de la bateria y reducir la interferencia entre estaciones, los transmisores de la MS y de la BTS adaptan automaticamente su potencia de transmision. Se utilizan 9 canales en el interfaz aereo:
    1. FCCH - Informacion de Frecuencias.
    2. SCH - Sigue a la rafaga FCCH, proporciona una referencia para todas las ranuras de una frecuencia dada.
    3. PAGCH - Transmision de Informacion de paginacion que se pide en el establecimiento de una llamada a una estacion movil (MS).
    4. RACH - Canal no limitado utilizado por la MS para pedir conexiones desde la red terrestre.
    5. CBCH - Transmision no frecuente de difusiones.
    6. BCCH - Informacion de estado de acceso a la MS.
    7. FACCH - Control de los "Handovers" (Paso de un usuario movil de una celula a otra).
    8. TCH/F - Para voz a 13 Kbps o datos a 12, 6 o 3,6 Kbps.
    9. TCH/H - Para voz a 7 Kbps o datos a 6 o 3,6 Kbps.
    El salto lento de frecuencias se utiliza en los canales de trafico que estan centrados a intervalos de 200 KHz entre 890 y 915 MHz y 935 y 960 MHz. Utilizando el salto de frecuencias lento, se obtiene una diversidad de frecuencias que mejora la calidad de la señal global pero no da "espiritu" :) a los canales de ruido. Cada rafaga de transmision se completa antes de commutar las frecuencias. Los protocolos RR son responsables de la asignacion y reasignacion de canales de trafico entre la MS y la BTS. Estos servicios son:
    • Controlar el acceso inicial al sistema.
    • Paginar para llamadas terminadas en el movil.
    • "Handover" de llamadas entre celulas.
    • Control de Potencia.
    • Terminacion de llamadas.
    Los protocolos RR proporcionan los procedimientos para la utilizacion, asignacion, reasignacion y liberacion de los canales GSM.
    4)Movilidad GSM
    Una de las caracteristicas principales utilizadas en todas las redes GSM y satelite, es la capacidad para soportar el "roaming" (poder cambiar de un pais a otro...viajar!) de los usuarios. Utilizando la red de señalizacion de control, los MSCs interactuan para localizar y conectar a los usuarios en toda la red. Los "Registros de Localizacion" se encuentran incluidos en las Bases de Datos del MSC para ayudar a la funcion de determinar como y si las conexiones deben realizarse para los usuarios itinerantes (usuarios Roaming). Cada user de una estacion movil GSM tiene asignado un HLR que se utiliza para contener la localizacion del usuario y los servicios del abonado en cuestion ;). Un registro separado, denominado VLR se utiliza para seguir la pista de localizacion de un user. Cuando el user cruza el aera cubierta por el HLR, la estacion movil notificara una nueva VLR de su paradero actual (e.j. Un viaje a fuera de las fronteras Españolas ;D...) El VLR a si vez utiliza la red de control para señalar la HLR de la nueva localizacion de la estacion movil. Utilizando esta informacion, las llamadas terminadas en el movil se pueden encaminar al usuario utilizando la informacion de lozalizacion contenida en el HLR del usuario.
    5) Servicios GSM
    Bueno, en esta seccion, mas que nada introducida pa rellenar.. ;P, ya que me imagina que la mayoria de vosotros sabreis que servicios ofrece GSM. Pero bueno ya que estoy aqui... El nivel de gestion de comunicaciones proporciona 3 clases de servicios primarios:
    • Control de llamadas
    • Servicios Suplementarios
    • Servicio de Mensajes Cortos
    Los servicios de control de llamadas son responsables del encaminamiento de llamadas, me explico, determinar quien es el responsable de los costos de la llamada y la organizacion que tiene que recibir el pago. Los servicios suplementarios son el reenvio de llamadas, llamada en espera, aviso de cargo, passwords, etc... ;). El nivel de gestion de las comunicaciones incluye servicios para manipular servicios de mensajes cortos, que son mas eficientemente manipulados utilizando transferencias orientadas a paquetes que las conexiones tradicionales de commutacion de circuitos soportadas por el sistema GSM principal.
    6) Canal de Radio GSM - TDMA
    Antes de nada, el estandar GSM especifica las bandas de frecuencia de 890 a 915 MHz para la banda del enlace saliente y 935 a 960 MHz para la banda del enlace entrante; cada banda se divide en canales de 200 Khz (Todo esto lo he explicado mas arriba ;). Otras caracteristicas del interface de canal de radio son la alimentacion de tiempo adaptativa, la modulacion GMSK, la transmision y recepcion discontinua y el salto de frecuencia lento. La alineacion de tiempo adaptativa permite a la estacion movil corregir su ranura de tiempo de transmision para retardos de propagacion. La modulacion GSMK proporciona eficiencia espectral e interferencia fuera de banda baja requerida en el sistema GSM. La transmision y recepcion discontinua se refiere a la caida de potencia de la estacion movil durante periodos de inactividad y sirve al doble proposito de reducir la interferencia entre canales y aumentar el tiempo de vida de la bateria de la unidad portable. El salto de frecuencias lento es una caracteristica adicional del interfaz de canal de radio GSM que ayuda a contrarestar efectos de desvanecimiento Rayleigh y de la interferencia entre canales. Los canales de 200 KHz de cada banda se subdividen en ranuras de tiempo de 577 milisegundos. Juntando ocho ranuras de tiempo se forma "una trama" TDMA de 4,6 milisegundos. Juntando 26 o 51 tramas TDMA se forma una "multitrama" (120 o 235 milisegundos) dependiendo de si el canal es para trafico o datos de control. Juntando 51 o 26 multitramas (de nuevo, dependiendo del tipo de canal :)) se forma una "supertrama" (6,12 segundos). Una "hipertrama" se compone de 2048 supertramas, totalizando una duracion de 3 horas, 28 minutos, 53 segundos y 760 milisegundos. La estructura de trama TDMA tiene asociado un número de secuencia de 22 bits que identifica de forma unica una trama TDMA dentro de una hipertrama dada. Los distintos canales lógicos que son convertidos en la estructura de tramas TDMA pueden ser agrupados en canales de tráfico (TCHs) utilizados para transportar voz o datos de usuario y canales de control (CCHs) utilizados para transportar señalizacion y datos de sincronizacion. Los canales de control se dividen en:
    • Canales de control de difusion
    • Canales de control común
    • Canales de control dedicados
    Cada ranura de tiempo dentro de una trama TDMA contiene datos modulados denominados rafaga ("burst"). Existen cinco tipos de rafagas:
    • Normal
    • Correccion de frecuencia
    • Sincronizacion
    • "Dummy" (de relleno)
    • Rafagas de acceso
    La tasa de bits del canal de radio es de 270,833 Kbps que corresponde a la duracion de una ranura de tiempo de 156,25 bits. La rafaga normal se compone de una secuencia de arranque ("start") de tres bits, 116 bits de carga util ("payload"), 26 bits de secuencia de entrenamiento utilizada para ayudar a contrarestar los efectos de la interferencia multicamino, 3 bits de secuencia de parada ("stop") necesitados por el codificador de canal y un periodo de guarda (de una duracion de 8,25 bits) que es un "colchon" para permitir tiempos de llegada diferentes de rafagas en ranuras de tiempo adyacentes desde estaciones moviles dispersas geograficamente. Dos bits de la carga util de 116 bits se utilizan por el canal de control asociado rapido (FACCH) para señalar que una rafaga dada ha sido tomada, dejando un total de 114 bits de carga util. El algoritmo de codificacion de voz utilizado en GSM esta basado en un codificador predictivo lineal excitado ;) por impulso rectangular con predicion a largo termino (RPE-LTP). El codificador de voz produce muestras a intervalos de 20 milisegundos a una tasa de bits de 13 Kbps, produciendo 260 bits por muestra o trama. Estos 260 bits se dividen en 182 bits de clase 1 y 78 bits de clase 2 basandose en una evaluacion subjetiva de su sensibilidad a los errores de bits, siendo los bits de clase 1 los mas sensibles. La codificación de canal supone la adicion de bits de comprobacion de paridad y codificacion convolucional de media tasa de la salida de 260 bits del codificador de voz. La salida del codificador de canal es una trama de 456 bits, que se divide en 8 componentes de 57 bits y se entremezcla ("interleaved") sobre ocho tramas consecutivas TDMA de 114 bits. Cada trama TDMA consta de dos conjuntos de 57 bits procedentes de dos tramas separadas de codificador de canal de 456 bits. El resultado de la codificacion de canal y del entremezclado es para contrarestar los efectos de desvanecimiento de interferencia de canal y otras fuentes de errores de bits.
    7) Caracteristicas de Seguridad
    Y llegamos a la parte que para mi es la mas interesante de todo el articulo. Espero que no os esteis aburriendo mucho con el mundo GSM... La seguridad en GSM consta de los siguientes aspectos:
    1. Autenticacion de la Identidad del Abonado
    2. Confidencialidad de la Identidad del Abonado
    3. Confidencialidad de los Datos de Señalizacion
    4. Confidencialidad de los Datos del Usuario
    El abonado se le identifica de forma unica utilizando la Identidad de Abonado Movil Internacional (IMSI). Esta informacion junto con la clave individual de autenticacion de abonado (Ki) constituyen las "credenciales de identificacion" sensibles, analogas al ESN (Electronic Serial Number) de los sistemas analogicos como AMPS (Advanced Mobile Phone System) y TACS (Total Access Communication System). El diseño de los esquemas de cifrado y autenticacion es tal que esta informacion sensible nunca se transmite por el canal de radio. En su lugar se utiliza un mecanismo de "desafio-respuesta" para realizar la autenticacion. Las conversaciones reales se cifran utilizando una clave temporal de cifrado generada aleatoriamente (Kc). La Estacion Movil (MS) se identifica por medio de la Identidad Temporal de Abonado Movil (TMSI) que emite la red y puede cambiarse periodicamente (por ejemplo durante momentos de no intervencion "hand-offs" :D) para mayor seguridad. Los mecanismos de seguridad de GSM se implementan en tres elementos diferentes del sistema:
    1. El Modulo de Identidad del Abonado (SIM)
    2. El Aparato portatil GSM tambien denominado Estacion Movil (MS)
    3. La Red GSM
    El SIM contiene la IMSI, la clave individual de autenticacion del abonado (Ki), el algoritmo de generacion de claves de cifrado (denominado A8), el algoritmo de autenticacion (denominado A3) y el Numero de Identificacion Personal (PIN) ;P. El aparato GSM (portatil o portable) contiene el algoritmo de cifrado (denominado A5). Los algoritmos de cifrado (A3, A5 y A8) tambien estan presentes en la red GSM. El Centro de Autenticacion (AUC), parte del Subsistema de Operacion y Mantenimiento (OMS) de la red GSM consta de una Base de Datos de Informacion de identificacion y autenticacion de abonados. Esta informacion consta de la IMSI, de la TMSI, de la Identidad de Area de Localización (LAI) y de la clave individual de autenticacion de abonado para cada usuario. Para que funcionen los mecanismos de autenticacion y confidencialidad se requiren tres elementos:
    • El SIM
    • El aparato GSM
    • La red GSM
    Esta distribucion de credenciales de seguridad y de algoritmos de cifrado proporciona una medida adicional de seguridad para asegurar la privacidad de las conversaciones telefonicas celulares y la prevencion de fraude en la telefonia celular ;). Dentro de la red GSM, la informacion de seguridad se distribuye entre el AUC (Authentication Center), el Registro de Localizacion Domestico (HLR) y el Registro de Localizacion del Visitante (VLR). El Centro de Autenticacion (AUC) es responsable de generar los conjuntos de RAND (Numero aleatorio), SRES (Respuesta Firmada) y Kc (clave de cifrado temporal generada aleatoriamente) que se encuentran almacenados en el HLR y en el VLR para su utilizacion posterior en los procesos de autenticacion y cifrado.
    8) Autentificacion
    La red GSM autentifica la identidad del abonado utilizando un mecanismo de "desafio-respuesta"(La misma palabra lo dice...[Autentificacion];D). Se envia a la estación movil un número aleatorio de 128 bits (RAND). La estacion movil (MS) calcula la respuesta firmada de 32 bits (SRES) basandose en el cifrado del numero aleatorio (RAND) con el algoritmo de autenticacion (A3) utilizando la clave individual de autenticacion de abonado (Ki). Al recibir del abonado la respuesta firmada (RAND), la red GSM repite el calculo para verificar la identidad del abonado. Fijate que la clave individual de autenticacion de abonado (Ki) nunca se transmite sobre el canal de radio. Esta presente en el SIM del abonado, asi como en las Bases de Datos del AUC, HLR y VLR. Si el RAND recibido coincide con el valor calculado, la estación movil ha sido autentificada con exito y puede continuar. Si los valores no coinciden la conexion se termina y se indica un fallo de autenticacion a la estacion movil. El calculo de la respuesta firmada (RAND) se realiza dentro del SIM :). Esto proporciona mayor seguridad, debido a que la informacion del abonado confidencial como la IMSI o la clave individual de autenticacion del abonado (Ki) nunca salen del SIM durante el proceso de autenticacion.
    9) Confiencialidad
    Todo SIM contiene el algoritmo de generacion de claves de cifrado (A8) que se utiliza para producir la clave de cifrado (Kc) de 64 bits. La clave de cifrado se calcula aplicando el mismo numero aleatorio (RAND) utilizado en el proceso de autenticacion con el algoritmo de generacion de la clave de cifrado (A8) con la clave individual de autenticacion de abonado (Ki). La clave de cifrado (Kc) se utiliza para cifrar y descifrar los datos transmitidos entre la estacion movil y la estacion base. Se proporciona un nivel adicional de seguridad al haber medios para cambiar la clave de cifrado, haciendo al sistema mas resistente contra posibles "escuchas ilegales" de la mano de los Phreakers ;P. La clave de cifrado puede cambiarse a intervalos regulares segun lo requieran las consideraciones de seguridad y diseño de red. De una manera similar al proceso de autenticacion, el calculo de la clave de cifrado (Kc) tiene lugar internamente dentro del SIM. Por tanto, la informacion sensible como la clave individual de autenticacion de abonado (Ki) nunca la revela el SIM. Las comunicaciones de datos y voz cifradas entre la estacion movil y la red se realizan utilizando el algoritmo de cifrado A5. La comunicacion cifrada se inicia por un comando de "petición de modo de cifrado" desde la red GSM. Al recibir este comando, la estacion movil empieza el cifrado y descifrado de datos utilizando el algoritmo de cifrado (A5) y la clave de cifrado (Kc). El algoritmo A5 es un "cifrador en flujo" formado por tres LFSRs (Linear Feedback Shift Registers) controlados por reloj de grados 19, 22 y 23. El control de reloj es una función "thereshold" de los bits del medio de cada uno de los tres registros desplazamiento. La suma de los grados de los tres registros es 64 ;). La clave de sesion de 64 bits se utiliza para inicializar los contenidos de los registros desplazamiento. El numero de trama TDMA de 22 bits se alimenta en los registros desplazamiento. Se generan dos corrientes de claves de 114 bits para cada trama TDMA que son operados con XOR con los canales de trafico "uplink" y "downlink". En un principio el algoritmo A5 tuvo una longitud de clave "efectiva" de 40 bits, posteriormente 64 bits y en un futuro proximo y nada lejano 128 bits. Los algoritmos A3 y A8 de GSM son funciones unidireccionales "hash" dependientes de la clave. Los algoritmos A3 y A8 de GSM son similares en funcionalidad y se implementan como un único algoritmo denominado COMP128.
    10) Despedida!
    Para muchos este articulo habra sido una turra constante, para otros habra sido una fuente de conocimiendo. Pero bueno, saludo y dedico este articulo a OvErDrlvE y en especial a mi querida Angelill@ de Charlie, ya sabe ella que la quiero muxho! Bueno chicos, me marcho con la musica a otra parte. Hasta la proxima!
    http://www.todo-cel.com.ar/info/gsm.html

    No hay comentarios:

    Publicar un comentario en la entrada