Está en la página 1de 10

Protocolos de Autenticacin y Canales Annimos en GSM

Alberto Peinado
Dept. Ingeniera de Comunicaciones, E.T.S.I. Telecomunicacin, Universidad de Mlaga Campus de Teatinos, E-29071 Mlaga, Spain apeinado@ic.uma.es

Abstract. En este artculo se presenta un protocolo eficiente de autenticacin para canales annimos usando los algoritmos A3/A8/A5. Este protocolo se deriva de la propuesta realizada recientemente por Lee, Hwang y Yang en [4] para la autenticacin en GSM, en combinacin con el protocolo para canales annimos presentado por Lin y Jan en [5].

1 Introduccin
El sistema de comunicaciones mviles GSM es un sistema ampliamente utilizado que representa el estndar europeo de comunicaciones mviles de segunda generacin. Aunque el enorme incremento en el nmero de usuarios de comunicaciones mviles ha venido de la mano de este sistema, todava existe cierta preocupacin por dos aspectos fundamentales; esto es, la privacidad y la autenticacin, que como es bien sabido, son la pieza fundamental en la seguridad de las comunicaciones, pero que en el caso de GSM se ha demostrado poco robusta. A pesar de ello, la considerable mejora en la calidad del servicio ofrecido a los usuarios y el abaratamiento de los costes de los terminales no ha impedido la masiva utilizacin del sistema, que ya se encuentra en fase de adaptacin al nuevo sistema de tercera generacin UMTS. La arquitectura del sistema GSM [8] se compone de las estaciones mviles (MS) que se comunican a travs de enlaces radioelctricos con las estaciones base (BS), las cuales se encuentran conectadas a centros de conmutacin mviles (MSC). Estos MSC, que estn interconectados, son los encargados de facilitar la conexin entre los enlaces radioelctricos y la red fija. Por otra parte, el sistema dispone de una base de datos denominada HLR que contiene el registro de todos los usuarios del sistema junto con su localizacin, y de otra base de datos VLR ubicada en cada MSC que contiene informacin de los usuarios visitantes en su rea de localizacin. El AUC es el centro de autenticacin de usuarios que contiene las claves individuales Ki de cada usuario, y es en consecuencia parte fundamental del proceso de autenticacin.

Si bien es cierto que UMTS ha redefinido sus funciones y servicios relacionados con la privacidad y la autenticacin con el fin de solucionar los problemas que presentaba GSM, tambin lo es el hecho de que GSM no va a desaparecer de inmediato. Es por esto, que todava continan apareciendo nuevas propuestas para mejorar la autenticacin en GSM, definida en la recomendacin 02.09 [10] cuyos problemas se pueden resumir en los siguientes cuatro puntos: GSM no proporciona al usuario la posibilidad de autenticar las estaciones base a las que se conecta. b) GSM genera un excesivo consumo de ancho de banda entre las bases de datos HLR y VLR, debido al tipo de autenticacin utilizado. c) El mecanismo de autenticacin obliga a los VLR a disponer de un gran espacio de almacenamiento a los VLR d) La autenticacin de los usuarios sobrecarga en exceso al HLR A consecuencia de esto han venido apareciendo diversas propuestas que han intentado solucionar total o parcialmente los mencionados problemas, al tiempo que proporcionaban algn servicio adicional como el no-repudio o la utilizacin de canales annimos. Por ejemplo, en 1998 Al-Tawil et al [1] propusieron un nuevo mtodo de autenticacin con menor tasa de trfico de sealizacin y menor tiempo de establecimiento de llamada, aunque no consegua resolver los problemas del protocolo original. Por otro lado, Lo y Chen, en 1999 [6,7] propusieron un nuevo sistema de comunicaciones seguras para GSM basado en criptografa de clave pblica. El gran inconveniente de esta propuesta es que propone una arquitectura completamente distinta a la original. En cualquier caso, y aunque los problemas exclusivos de la autenticacin quedaban resueltos, los derivados del aumento del trfico entre VLR y HLR, el espacio de almacenamiento en los VLR , y la sobrecarga del HLR seguan estando presentes. Paralelamente, Stach [9] present una modificacin que proporcionaba no repudio de servicio gracias a la utilizacin de una funcin unidireccional adicional. La primera propuesta que consigue eliminar parcialmente los problemas del protocolo original sin alterar la arquitectura original de GSM se debe a Lee et al [3], que resuelve los problemas b)-d). Recientemente, Lee et al [4] han propuesto una extensin del protocolo de autenticacin GSM que resuelve a)-d), consiguiendo la autenticacin mutua entre MS y BS, la reduccin del consumo de ancho de banda entre VLR y HLR, la reduccin del tamao de almacenamiento necesario en los VLR, y la descarga del HLR permitiendo la autenticacin del MS por parte del VLR, sin necesidad de acudir en todo momento al HLR. Este ltimo protocolo [4] sirve de punto de partida para la propuesta que se presenta en este artculo con el objetivo de proporcionar, adems, autenticacin sobre canales annimos en GSM. Por otra parte, el protocolo de Lin y Jan [5] para autenticacin sobre canales annimos permite desarrollar en combinacin con [4] un protocolo eficiente de autenticacin sobre canal annimo en GSM que satisfaga los requisitos mena)

cionados. Es importante mencionar que slo es utilizable la estructura general de [5], puesto que se ha demostrado en [2] la vulnerabilidad del principio de autenticacin, consiguiendo acceder ilegalmente al sistema mediante la generacin de tickets falsos. Las siguientes secciones describen el protocolo original de autenticacin definido para GSM, el protocolo de Lee et al [4] y el protocolo de autenticacin de canales annimos de Lin y Jan [5] cuya estructura general sirve de inspiracin a la propuesta de este artculo. Finalmente, la seccin 5 presenta el protocolo propuesto para autenticacin sobre canales annimos.

Protocolo original de autenticacin GSM

La seguridad del sistema GSM est basada en los algoritmos A3, A5 y A8, de tal modo que A5 es el responsable de cifrar las comunicaciones entre MS y BS mediante una clave de sesin Kc, que se establece previamente entre MS y BS, una vez que el MS ha sido autenticado. Para ello, el MS debe calcular y devolver al sistema una respuesta SRESm a partir de un desafo RAND que debe cifrar con el algoritmo A3 utilizando su clave Ki que comparte con el HLR/AUC del sistema. Ese mismo desafo RAND sirve para calcular la clave de sesin Kc mediante el algoritmo A8 y la clave Ki. El proceso de autenticacin comienza cuando el MS cambia de localizacin y enva al VLR una peticin de autenticacin que contiene su identificacin temporal TMSI y el del rea de localizacin LAI. Este nuevo VLR a partir del TMSI y a travs del antiguo VLR obtiene la identificacin IMSI del MS, para indicar al HLR del sistema que usuario es el que est solicitando la autenticacin. Cuando el HLR recibe la peticin genera n tros (RANDi, SRESi, Kci) que enva al nuevo VLR. El VLR debe almacenar esos tros de parmetros con el fin de utilizarlos en sucesivas autenticaciones de este mismo MS. En cada una de estas autenticaciones el VLR enva al MS el desafo RANDi. El MS calcula SRESm = A3(Ki, RANDi) y lo devuelve al VLR, que lo compara con el SRESi del correspondiente tro que ha sido generado por HLR, y calcula tambin la clave de sesin Kc = A8(Ki, RANDi) que utilizar para cifrar las posteriores comunicaciones. Por ltimo, cuando el VLR recibe SRESm debe comprobar si su valor coincide con SRESi. En tal caso, el MS queda autenticado. Como se puede comprobar, este procedimiento no proporciona autenticacin mutua, puesto que solo es autenticado el MS, pero no el VLR. Es decir, el sistema controla a los usuarios que intentan acceder, pero los usuarios no pueden controlar la autenticidad de las estaciones base a las que se conectan. Esta situacin es la que ha permitido la obtencin de la clave de usuario Ki por parte de terceras personas, y por tanto, la clonacin de tarjetas SIM, mediante el envo sistemtico de desafos al MS.

Protocolo LHY de autenticacin para GSM

A continuacin se describe el protocolo de Lee et al [4] (LHY) que permite resolver los principales problemas a)-d), incluyendo la autenticacin mutua, sin modificar la arquitectura del sistema. Esto quiere decir, que los algoritmos de cifrado y funciones unidireccionales que se utilizan son las mismas que se definen en el protocolo original, esto es, A3, A5 y A8. Del mismo modo, cada usuario MS dispone de su clave individual Ki, que solo conoce el propio usuario a travs de su SIM y el HLR. Este protocolo est basado en la generacin de una clave secreta temporal TKi que genera el HLR y permite al VLR autenticar al MS sin necesidad de conectarse posteriormente con el HLR, y sin necesidad de que el VLR conozca la clave Ki. El procedimiento de autenticacin LHY puede describirse del siguiente modo: a) El proceso comienza de un modo similar al de autenticacin GSM original. Esto es, El MS enva al VLR un mensaje de peticin de autenticacin que contiene el TMSI y el LAI, y al que aade un sello de tiempo T, para evitar ataques por repeticin.

b) Del mismo modo que en el GSM original, el nuevo VLR obtiene el IMSI del MS y lo enva al HLR junto con su identidad VLR_ID y el sello de tiempo T, utilizando un canal seguro. Es importante recordar que GSM no establece ningn tipo de seguridad especfica en la parte fija del sistema. c) Cuando el HLR recibe la peticin comprueba que la identidad VLR_ID es vlida y que el sello de tiempo es actual. En caso afirmativo, el HLR genera el certificado de la identidad de VLR, esto es, Auth_VLRh = A3(Ki, T), y la clave temporal que utilizarn MS y VLR, esto es, TKi = A3(Ki, RAND). A continuacin, utilizando un canal seguro, HLR le enva al VLR los parmetros Auth_VLRh, TKi, y RAND.

d) Cuando el VLR recibe el mensaje, calcula SRES = A5(TKi, RAND1), siendo RAND1 un nmero aleatorio elegido por el propio VLR, para autenticar a MS en esta llamada. La siguiente vez que el VLR tenga que autenticar al mismo MS, generar un RANDj y a partir de l el correspondiente SRESj. De este modo se libera al HLR de gran parte de la sobrecarga debida al proceso de autenticacin. A continuacin el VLR enva al MS un mensaje con los parmetros RAND, RAND1, Auth_VLRh, y T. e) Cuando el MS recibe el mensaje comprueba que el certificado Auth_VLRh de la indentidad de VLR es correcto, pues conoce Ki y T. Asimismo, calcula la clave

f)

secreta temporal TKi, a partir de Ki y de RAND, utilizando el algoritmo A3. Por ltimo, calcula SRESm = A5(TKi, RAND1) y se lo devuelve al VLR. Finalmente, el VLR compara el parmetros SRESm recibido con SRES. Si coincide, entonces el MS se considera autenticado.

Ntese que este protocolo se basa en los algoritmos A3 y A5, y por tanto, la seguridad del protocolo tambin depende de la seguridad de estos algoritmos. No hay que confundir en ningn caso los algoritmos genricos A3, A5 con sus implementaciones particulares que han sido en varias ocasiones criptoanalizadas. Lo que este protocolo permite es una implementacin sencilla y eficiente, puesto que podr utilizar los algoritmos que el sistema GSM defina para su funcionamiento, evitando una sobrecarga de las aplicaciones que puede ejecutar la SIM del usuario.

Protocolo LJ de autenticacin sobre canales annimos

En [5], Lin y Jan presentan un protocolo (LJ) de autenticacin sobre canales annimos para redes inalmbricas que puede ser aplicado a GSM. Este protocolo fue diseado suponiendo que existe o que se puede implementar una infraestructura de clave pblica en el sistema, y se basa en la generacin de tickets de prepago que permitan su posterior utilizacin de forma annima. El procedimiento de autenticacin se divide en dos fases: la fase de generacin del ticket, y la fase de autenticacin o utilizacin del ticket. En esta seccin no se describe con detalle el protocolo LJ, puesto que ya se ha demostrado en [2] que el sistema es inseguro y pueden generarse tickets falsos para engaar al sistema y acceder sin nign problema. En cambio, su estructura general s que resulta til al ser combinada con el protocolo LHY. De un modo ms preciso, el protocolo LJ supone que MS y HLR comparten una clave secreta Ki, y que todos los usuarios MS conocen (y tienen almacenada en su SIM) la clave pblica eh del HLR, para poder enviarle mensajes cifrados. 4.1 Fase de generacin del ticket En esta fase se describe el proceso de generacin del ticket de prepago que solicita un MS para utilizarlo posteriormente de forma annima. Esta fase incluye la autenticacin del MS por parte del HLR y la posterior autenticacin del HLR por parte del MS a travs del ticket generado. a) MS 9/5 +' , 1 1 , ,' , 7 , 7 , &HUW donde N1 es un numero aleatorio, T y Texpire son sellos de tiempo, y Certi es la informacin de autenticacin que utilizar el HLR

&HUW  = (,'  , 7 , 7  

(1)

En este paso, MS enva a VLR informacin para que sea transferida al HLR, de forma que VLR no tenga acceso a ella. La nica informacin que VLR debe conocer es la identidad HD de HLR b) VLR c) HLR

+/5 1 1 , ,' , 7 , 7      , &HUW    9/5 1 1 , & , ' , 7" # $&% ' " !

siendo (C,D,Texpire) el ticket generado por HLR. Los detalles de generacin de C y D son omitidos por simplicidad. Basta considerar que existe una relacin matemtica entre ellos (que ha sido criptoanalizada en [2]) y que dependen de un parmetro o clave secreta que solo HLR conoce. d) VLR

06 1 1 , & , ' , 7" # $&% ' " !

En este caso, VLR enva un mensaje de broadcast a todos los usuarios, de modo que el destinatario real lo pueda identificar a travs del valor de N1. e) MS comprueba que el ticket es vlido. Para ello comprueba las relaciones matemticas que existen entre ellos y la clave secreta de HLR, a travs de la clave pblica que todos conocen. Si la autenticacin es afirmativa, el MS considera que el ticket (C, D, Texpire) es vlido, es decir, que lo ha emitido el HLR de su sistema. Como se puede observar, esta fase del protocolo implementa autenticacin mutua entre MS y HLR. 4.2 Fase de utilizacin del ticket Cuando el MS quiere utilizar un canal annimo debe utilizar el ticket generado previamente por el HLR. Para ello, debe generar un identificador distinto en cada ocasin (y por tanto annimo) NewID. a) MS VLR: NewID, T, Texpire donde NewID = yh||B||E, esto es, la concatenacin de yh, B y E, donde B y E se generan a partir de valores aleatorios combinados con el parmetro C del ticket. b) VLR

06 r

siendo r un nmero aleatorio. c) MS

9/5 K,L

donde K y L se generan a partir de valores aleatorios combinados con el parmetro D del ticket y el desafo r recibido. d) VLR comprueba la validez del ticket a travs de las relaciones que deben cumplir los parmetros L, K, B, E, y la clave pblica del HLR Como se puede observar, en la fase de autenticacin no es necesaria la participacin del HLR. Por otra parte este protocolo no indica nada respecto de las claves de sesin a utilizar una vez conseguida la autenticacin annima.

Protocolo de autenticacin para canales annimos en GSM

A continuacin se presenta un nuevo protocolo de autenticacin sobre canales annimos basado en la generacin de claves temporales TKi para los VLR que utiliza el protocolo LHY, y en la generacin tickets de prepago con caducidad temporal que utiliza el protocolo LJ, estableciendo, por tanto, dos fases: la de generacin del ticket y la de utilizacin o autenticacin annima. El objetivo es proporcionar la posibilidad de utilizar los recursos del sistema de forma annima pero impidiendo que usuarios no autorizados accedan a la red. Todo ello debe implementarse con el menor impacto sobre la arquitectura original de GSM, y sobrecargando lo menos posible la actividad de la SIM de los usuarios. Adems, el protocolo pretende mantener las soluciones y mejoras que incorpora el LHY sobre el protocolo original de autenticacin de GSM. 5.1 Fase de generacin del ticket. Al igual que el protocolo LJ, consideramos la existencia de una mnima infraestructura de clave pblica, de modo que el HLR disponga de un par de claves (pblica y privada) a utilizar con algn criptosistema asimtrico. Por tanto, los usuarios MS deben conocer la clave pblica del HLR de sus sistema. En esta fase se describe el proceso de generacin del ticket de prepago que solicita un MS para utilizarlo posteriormente de forma annima. Esta fase incluye la autenticacin del MS por parte del HLR y la posterior autenticacin del HLR por parte del MS a travs del ticket generado.

a) MS 9/5 +' , 1 1 , ,'0 , 7 , 7) 1 2 0 3 ) , &HUW 0 ) ( donde N1 es un numero aleatorio, T y Texpire son sellos de tiempo, y Certi es la informacin de autenticacin que utilizar el HLR

&HUW 9 = (,' 9 , 7 , 76 7 89 @ 6

)5 4

(2)

En este paso, MS enva a VLR informacin para que sea transferida al HLR, de forma que VLR no tenga acceso a ella. La nica informacin que VLR debe conocer es la identidad HD de HLR. Certi se puede obtener cifrando con A3 y usando como clave Ki. De este modo no es necesario implementar otro algoritmo de cifrado en la SIM del MS. b) VLR c) HLR

+/5 1 1 , ,'C , 7 , 7B D E C F B , &HUW C B A 9/5 N1, Auth_VLRh, T, TKi, Texpire.

siendo (Auth_VLRh, TKi, Texpire) el ticket generado por HLR, donde Auth_VLRh = A3(Ki, T) y TKi = A3(Ki, Texpire). Es importante resaltar que este mensaje debe ser enviado por una canal seguro entre HLR y VLR. d) VLR

06 N1, Auth_VLRh, T, Texpire

En este caso, VLR enva un mensaje de broadcast a todos los usuarios, de modo que el destinatario real lo pueda identificar a travs del valor de N1. e) MS comprueba que el ticket es vlido. Para ello comprueba que donde Auth_VLRh = A3(Ki, T) y obtiene la clave temporal TKi = A3(Ki, Texpire) De este modo se consigue una autenticacin mutua, puesto que MS es autenticado por HLR a traves de Certi, y tanto VLR como HLR son autenticados por MS a travs de Auth_VLRh. Si la autenticacin es afirmativa, el MS considera que el ticket (Auth_VLRh, TKi, Texpire) es vlido, es decir, que lo ha emitido el HLR de su sistema.

5.2 Fase de utilizacin del ticket Cuando el MS quiere utilizar un canal annimo debe utilizar el ticket generado previamente por el HLR.

a) MS VLR: Auth_VLRh, Texpire. b) VLR

06 RANDi

siendo RANDi un nmero aleatorio. c) MS

9/5 SRESm

donde SRESm = A5(TKi, RANDi). d) VLR comprueba que SRESm = A5(TKi, RANDi). Como se puede observar, en la fase de autenticacin no es necesaria la participacin del HLR. En cuanto a la clave de sesin Kc a utilizar para cifrar posteriormente los datos se puede continuar aplicando el mismo procedimiento que en GSM, estos es, Kc = A8(TKi, RANDi). Por otro lado, el sistema solo tendr que acudir al HLR cuando caduque el Texpire. El procedimiento de autenticacin es el mismo que en GSM, esto es, est basdo en un sistema desafo/respuesta, pero de tal forma que el VLR no conoce, ni puede conocer la verdadera identidad de MS.

Conclusiones
Se ha presentado un extensin o adaptacin del protocolo LHY propuesto por Lee et al [4] para que soporte la utilizacin de canales annimos, de tal modo que los VLR puedan autenticar usuarios sin saber realmente quienes son. La adaptacin del protocolo LHY se ha realizado aplicando algunos de los principios de funcionamiento del protocolo LJ que Lin y Jan [5] propusieron para autenticar canales annimos en redes inalmbricas, pero que fue posteriormente criptoanalizado en [2].

Agradecimientos
Este trabajo ha sido financiado por el proyecto TIC2001-0586 Gestin del acceso seguro a redes abiertas de recursos distribuidos.

References
AL-TAWIL, K., AKRAMI, A., YOUSSEF, H., A new authentication protocol for GSM rd networks, Proc. IEEE 23 Annual Conference on Local Computer Networks (LCN98), 1998, pp. 21-30. 2. BARBANCHO, A.M., PEINADO, A., Cryptanalysis of anonymous channel protocol for large-scale area in wireless communications, Computer Networks (2003) (In Press, available on line http://www.sciencedirect.com) 3. LEE, C.H., HWANG, M.S., YANG, W.P., Enhanced privacy and authentication for the global system for mobile communications, Wireless Networks, 5 (1999), pp. 231-243. 4. LEE, C.H., HWANG, M.S., YANG, W.P., Extension of authentication protocol for GSM, IEE Proc.-Commun., 150 (2003), pp. 91-95. 5. LIN, W.D., JAN, J.K., A Wireless-based Authentication and Anonymous Channels for Large Scale Area, Proc. Sixth IEEE Symposium on Computers and Communications (ISCC01), 3-5 July, Tunisia, (2001), pp. 36-41. 6. LO, C.C., CHEN, Y.J., A secure communication architecture for GSM networks , Proc. IEEE Pacific Rim Conference on Communications, computers and signal processing, 1999, pp.221-224. 7. LO, C.C., CHEN, Y.J., Secure communication mechanisms for GSM networks , IEEE Transactions on Consumer Electronics, 45 (4), 1999, pp. 1074-1080. 8. MEHROTRA, A., GSM System Engineering, Artech House Publishers, 1997. 9. STACH, J.F., PARK, E.K., MAAKI, K., Performance of an enhanced GSM protocol supporting non-repudiation of service , Computer Communications, 22 (1999), pp. 675680. 10. ETSI, Recommendation GSM 02.09; Security related network functions , Tech. Rep, European telecommunications Standard Institute, ETSI, June 1993. 1.