viernes, 19 de marzo de 2010

Seguridad en redes GSM

7 - Seguridad en redes GSM.                                
   |--------------------------------------------------------------------


 Están apareciendo sistemas de pago alternativos a las tarjetas de
crédito, que basadas en la cinta magnética y el PIN de cuatro cifras, no
ofrecen un nivel de seguridad adecuado. Uno de estos métodos de pago
alternativos, se basa en el uso de teléfonos GSM.


1.- Lo que nos ofrece un teléfono GSM
-------------------------------------

Ante el aumento del fraude en el uso de las tarjetas de crédito
tradicionales y hasta que se generalice el uso de las tarjetas basadas en chip
inteligente, el teléfono GSM se está ¡convirtiendo en un firme candidato a
cubrir este nicho del mercado. No entraremos en detalles técnicos del
funcionamiento del sistema GSM, pero hablaremos un poco de sus características
de seguridad.

En primer lugar, el usuario está¡ identificado en la red a través de su
tarjeta SIM (Subscriber Identity Module), la cual, en teoría, es personal e
intransferible. Cada tarjeta dispone, de un código interno o clave, a la que se
le asocia un número de teléfono usando el sistema de gestión de la red. Por
ello, el usuario siempre estᡠidentificado en la red por su código SIM, que
teóricamente es secreto y no se puede extraer de la tarjeta, impidiendo así­, la
posibilidad de clonar la tarjeta y hacerse pasar por el usuario. Opcionalmente,
se puede proteger la tarjeta SIM, utilizando un código de cuatro cifras, que
solamente le será¡ solicitado, cuando se active el teléfono.

En segundo lugar, las comunicaciones entre la base y el teléfono móvil
GSM, están codificadas mediante un algoritmo, propietario y secreto, denominado
A5/1, que en teoría, impide interceptar las comunicaciones de voz o de datos,
pero recuerde y esto es importante, dicha codificación se realiza solamente
en el tramo va radio. Lo que pase cuando la comunicación entre en la red del
operador, dependerᡠde cada red y no hay mucha información respecto a ello.

En tercer lugar, cada teléfono dispone de un número, denominado IMEI,
que permite identificar un teléfono en la red GSM, aunque se le cambie el SIM.
Para evitar el posible uso del teléfono con otro SIM (si lo pierde, o se lo
roban), puede activar una opción de seguridad, que solicitarᡠun código de 5
cifras cuando se cambie de tarjeta SIM.

Además de todo lo anterior, a los usuarios de servicios de pago a
través de GSM, se les proporciona un sistema adicional de autenticación, basado
normalmente en un código secreto, que deberᡠutilizar para poder realizar las
operaciones de pago y que podrá¡ cambiar en cualquier momento.

Como se puede ver, el sistema GSM identifica al usuario en la red y
protege las comunicaciones, por lo que no deberá haber ningún problema, para
poder utilizar estas características y realizar pagos a través de Internet, o
sustituir las inseguras tarjetas de crédito, pero hay algunas salvedades.



2.-Las raíces del problema
--------------------------

No entraremos en el análisis de la operativa concreta de los distintos
servicios de pago a través de GSM, algunos de los cuales, están en fase de
diseño y se sabe poco de ellos. Seguramente, las patentes alianzas entre
empresas implicadas, serán lo que definan estos servicios, lo que también
implicará¡, desgraciadamente, que unos serán más seguros que otros. Por el
momento y hasta saber más de ellos, nos limitaremos a repasar los fallos de
seguridad del sistema GSM. Fallos descubiertos por personas de reconocido
prestigio internacional y que analizaremos, sobre la base de la implantación de
un sistema de pago. A pesar de estos fallos, no se descarta que existan
sistemas de pago GSM, que teniendo en cuenta los fallos y limitaciones del
sistema, permitan trabajar con total seguridad ahora y en el futuro.

El sistema GSM utiliza cuatro algoritmos A3, A5/1, A5/2 y A8. El A3
realiza la autentificación del usuario y evita el clonaje de  teléfonos. El
A5/1 se encarga del cifrado fuerte de la comunicación. El A5/2 es similar al
anterior, pero se usa para la exportación a ciertos pases y es mucho más
débil. El A8 se utiliza para la generación de la clave que utilizará¡
posteriormente el A5/1 o A5/2. Todos estos algoritmos, que se desarrollaron en
secreto y nunca fueron publicados, se reconstruyeron mediante ingeniería
inversa por Marc Briseño, en colaboración con la Smartcard Developer
Asociación y posteriormente, se analizaron por Ian. Goldberg, David. Wagner.
El fruto de este trabajo conjunto se llamó "A pedagogical implementation of
A5/1" y se publicó en mayo de 1.999. Aunque esta revelación no supuso una
brecha en la seguridad, sirvió para descubrir muchos fallos del diseño y fue
un ejemplo de que el oscurantismo no garantiza la seguridad en criptografía. Ya
en el año 1.994 el investigador Ross Anderson, había dado la voz de alarma,
pero nadie le hizo caso en aquel momento.

La mayoría de los proveedores GSM utilizan un mismo algoritmo,
denominado COMP128, para el cifrado A3 y A8. Este algoritmo es
criptográficamente débil y no es difícil romperlo con la finalidad de clonar
los teléfonos GSM. El ataque requiere enviar 2^18 retos al teléfono, lo que
se puede hacer en aproximadamente 8 horas y se puede realizar con acceso físico
a la tarjeta SIM (opción barata) o sin acceso físico,  va radio (opción cara).
El grupo de Berkeley publicó el análisis de este algoritmo en abril de 1.998 y
demostró que se su seguridad no era demasiado buena, por haber sido debilitado
deliberadamente. De los 64 bits que componen la clave, solamente se utilizan
54, lo que equivale a reducir la efectividad 1.024 veces. Si tuviera un
ordenador que tardase un año en comprobar todas las claves de 64 bits posibles,
la reducción a 54 bits, supone que usando el mismo sistema informático,
tardará entre cuatro y ocho horas y media en descubrir la clave correcta.
Seguramente, esta reducción en la clave fue motivada por el deseo de poder
acceder a la escucha de las conversaciones GSM con una relativa facilidad.
Incluso hay una versión del algoritmo, mucho más débil el A5/2, que tenía como
objetivo la exportación a ciertos pases y en la que intervino la NSA
americana. Esta versión fue analizada en agosto de 1.999 por el grupo de
Berkeley, descubriendo que se podía romper en tiempo real, con solamente 2^16
operaciones. Esta misma asociación, en mayo de 1.999 ya había publicado el
algoritmo A5/1.



3.- Clonaje de tarjetas SIM e IMEI
----------------------------------

El 13 de abril de 1998, la Smartcard Developer Association y el grupo
de investigadores de la Universidad de Berkeley, los mismos que descubrieron
el fallo de seguridad en el SSL de las primeras versiones Netscape, anunciaron
que era posible clonar un teléfono GSM. El primer teléfono móvil GSM que se
logró clonar pertenecía a la Pacifica Bell, pero más tarde, el CCC (Chaos
Computer Club) en Alemania, también publicó que había clonado un teléfono GSM
del operador D2. La North American GSM Alliance lo negó todo desde el primer
momento, pero la empresa Omnipoint reconociendo el fallo, decidió cambiar los
algoritmos. En la actualidad, parece la mayoría de las operadoras lo ignoran
y no hay estadísticas de fraude telefónico en las redes GSM, pero es algo que
se debe tener en cuenta si piensa utilizar el móvil GSM para algo más que
hablar con la familia.

Todo es relativamente simple, si se tiene acceso a la tarjeta SIM
durante las seis u ocho horas que dura el proceso. El sistema de
autentificación de los teléfonos GSM se basa en enviar unos retos a la tarjeta
SIM, que devuelve convenientemente cifrados. Recordemos que la clave utilizada
para cifrar/descifrar los retos, solamente es conocida por la tarjeta SIM y por
la red en la que estᡠtrabajando. El proceso comienza por la inserción de la
tarjeta en un adaptador especial, con un coste de unas seis mil pesetas y
mediante un programa específico, mandarle una serie de retos cuidadosamente
seleccionados, haciendo creer a la tarjeta que está¡ contestando a la red en un
proceso que dura entre seis y ocho horas. Las contestaciones a los retos se
almacenan en un archivo y posteriormente, utilizando otro programa, se analizan
con el objeto de calcular el código secreto oculto en la tarjeta SIM, que como
hemos dicho, no se puede obtener directamente y se logra con una fiabilidad del
75%. Posteriormente, con una tarjeta virgen y un programador smartcard adecuado,
se genera una réplica de la tarjeta SIM usando el código que se ha obtenido en
el proceso anterior y todo ello, sin necesidad de conocer el código PIN del
usuario. La tarjeta SIM creada, no es una copia, es una simulación de tarjeta
real, por lo que tiene algunas limitaciones. Por ejemplo, solamente funcionará¡
en ciertas redes o modelos de teléfono y no permitirá¡ acceder a determinados
servicios. Para crear un clon exacto de un teléfono GSM, también es necesario
modificar el IMEI, lo que es mucho más sencillo. Con un cable y un programa que
se puede obtener de Internet, se puede editar el contenido de la memoria
EEPROM/FLASH de algunos teléfonos y con ello, su IMEI.

Como hemos dicho, esta opción barata necesita tener acceso físico a la
tarjeta a duplicar, pero desde 1.999 se sabe que se puede realizar enviando los
retos va radio, incluso a varios teléfonos al mismo tiempo, pero es más
laborioso y se necesita equipo caro. Para poder obtener la clave secreta de una
tarjeta SIM, es necesario disponer de la contestación a unos 175.000 retos,
aunque esta cantidad se puede reducir aumentando el tiempo de proceso con el
ordenador. Debe tener en cuenta, que una tarjeta puede contestar a unos 6 retos
por segundo, lo que implicará unas 8 horas de interrogaciones va radio. Para
que el usuario no note el ataque, los periodos de interrogación se deberán
limitar en el tiempo, evitando así­ un consumo anormal de la bateara.

Otro tema es el comportamiento de las redes con los teléfonos clonados.
Por el momento, no hay datos fiables de lo que pasará en las redes de los
operadores españoles y todo son especulaciones. En las basadas en la tecnología
de Motorola, la red detecta que hay dos teléfonos iguales y desactiva los dos.
En otros casos, cuando se recibe una llamada, suena uno de los teléfonos de
forma aleatoria, pero las llamadas se pueden originar desde cualquiera de los
dos. Desgraciadamente, pensando en que era algo improbable, muchas redes no
disponen de tecnología anti-fraude y aunque la tuviera la que está¡ utilizando,
Aquí© impide que el fraude se realice haciendo roaming sobre una red que no la
tiene?. En todo caso, ninguna red será¡ capaz de detectar un teléfono clonado,
cuando el teléfono original está¡ apagado, o fuera de cobertura. Una posibilidad
será la utilización de sistemas expertos que detecten ciertas anomalías, como
los cambios "imposibles" en la ubicación teléfono, o cambios en las pautas de
utilización.

Dadas las circunstancias, si usted utiliza su teléfono móvil para
realizar pagos y lo pierde o se lo roban, lo mejor que puede hacer es anularlo y
avisar, lo antes posible, a la empresa de pagos a través del móvil. Si lo
recupera, antes de darlo de alta de nuevo, cambie de tarjeta SIM, lo que no le
costará¡ mucho dinero, ni le implicará¡ cambiar el número de teléfono.



4.-Escucha de teléfonos GSM
---------------------------

El primer ataque al algoritmo A5/1 fue realizado por Jovin Golic y
necesitó 2^40 operaciones, lo que significaba que solamente se podía romper en
tiempo real utilizando hardware especializado. Más tarde, el 10 de abril de
2000, Alex Biryukov, Adi Shamir (uno de los padres de la criptografía actual y
coautor del sistema de cifrado RSA) y David Wagner, presentaron en Nueva York,
durante la Fast Software Encryption Workshop, el documento titulado "Real Time
Cryptanalysis of A5/1 on a PC". En este documento se explicaba, de forma
detallada, la forma de descifrar una comunicación codificada mediante el
algoritmo A5/1. Se trataba de la versión más segura del algoritmo de cifrado,
utilizado por más de 130 millones de usuarios GSM en toda Europa, para proteger
las comunicaciones de datos o voz. Los fallos en el algoritmo A5/1 no son muy
evidentes, al contrario que el A8, que proporciona las claves para el A5/1 A5/2
y que se había debilitado premeditadamente. El ataque se basa en fallos en el
diseño del algoritmo, más concretamente, en la estructura de registros, en su
mecanismo de temporización y en las frecuentes inicializaciones que se producen
durante su funcionamiento normal. Para poder realizar este ataque, es necesario
preparar unas tablas de decodificación, que pueden ocupar entre dos y cuatro
discos de 73 TB cada uno, dependiendo del tipo de ataque elegido.
Afortunadamente, estas tablas solamente se tienen que calcular una vez y se
puede realizar utilizando una red de ordenadores en paralelo.

Una vez obtenidas las tablas, las comunicaciones GSM se pueden
descifrar en tiempo real, utilizando un simple PC con 128 Mb de RAM, dos discos
de 80 TB y un receptor adecuado al tipo de comunicaciones. De este ataque hay
dos versiones. La primera requiere la salida del algoritmo A5/1 durante los dos
primeros dos minutos de conversación y calcula la clave en un segundo. La
segunda, necesita la salida del algoritmo A5/1, durante dos segundos de
conversación y calcula la clave en varios minutos. Ambas versiones serán
válidas para capturar el código de acceso de un usuario que realiza un pago
usando el GSM ya que incluso, no es necesario que la decodificación se realice
en tiempo real y las comunicaciones duran más de dos segundos. Actualmente, por
una cantidad entre 10.000 y 60.000 dólares, se puede adquirir un equipo de
monitorización GSM, a través de conocidos proveedores de material de Defensa.
Cantidad que está fuera del alcance de la mayoría, pero que bien puede ser
pagada por redes de delincuentes sin escrúpulos.

Pero es realmente necesario recurrir a tanta complicación
tecnológica para obtener el código del usuario, probablemente no. En primer
lugar, el cifrado en las redes GSM se establece solamente para las
comunicaciones entre el terminal y la estación, por lo que no sabemos nada del
factor humano, o de las medidas seguridad de los operadores fuera de este tramo
va radio, problema que incluso puede heredar el UTMS, si no se tiene en
cuenta. En segundo lugar, seguramente sea más sencillo y barato, recurrir a la
ingeniería social, o a una simple cámara de vadeo, convenientemente situada,
para conocer el código de acceso de un usuario. Por ello, si lo utiliza el
móvil para pagar, también es recomendable que cambie su número clave con
frecuencia y que no lo anote en ningún sitio.



5.- Un fallo que tiene carácter temporal
----------------------------------------

Los fallos en la seguridad que hemos visto, se deben a errores en el
diseño GSM, que como están bien reconocidos por los técnicos en la materia, se
están intentando eliminar en los nuevos sistemas de telefonía móvil, como es el
caso del UTMS. De hecho, el sistema de cifrado UTMS es mucho más robusto y se
ha sometido públicamente a la comunidad internacional, para su escrutinio y
comprobación. Una solucin a corto plazo para el GSM, será cambiar las
tarjetas SIM de los usuarios y los sistemas de gestin de la red, por otros que
utilicen un cifrado más seguro, pero es difícil que las operadoras están por la
labor. Pensemos en la fuerte inversion y el problema logístico que ello supone,
sobre todo, si tenemos en cuenta que la tecnología UTMS, con sus inversiones
multimillonarias, parece solucionar este problema y está a la vuelta de la
esquina.

Las Últimas noticias del Ministerio de Ciencia y Tecnología, indican
que el GSM va a durar algo más de lo esperado, retrasando la entrada de la
tecnología UTMS en beneficio de las operadoras, lo que amplía la ventana de
riesgo para los usuarios. Tampoco hay que perder de vista, que dependiendo de
la aceptacion del UTMS por los usuarios, convivirán las dos tecnologías durante
algún tiempo. La convivencia se materializará como GSM, o en forma de
tecnologías derivadas como el GPRS, que aunque utiliza algoritmos nuevos, es
posible que hereden fallos en la seguridad. Por la ampliacion de la vida del
GSM y aprovechando su gran número de usuarios, los sistemas de pago a través de
movil, nacerán y se mantendrán sobre el GSM, antes de pasar al UTMS.

Pero aunque el UTMS sea la meta y se considere seguro, este es un mundo
muy cambiante con dos Únicas verdades; primero, no hay nada completamente
seguro y segundo, lo que hoy nos parece o se comporta como seguro, es posible
que mañana no lo haga. Por ello, las empresas que pongan en servicio medios de
pago basados en la tecnología, deben estar atentas a los posibles fallos en la
seguridad, corrigiendo o adaptando sus operativas y sistemas, en el momento que
se detecten y si no se puede, incluso dejando de operar.



6.- El usuario frente a servicios de alta tecnología
----------------------------------------------------

A pesar de lo dicho hasta el momento, no hay que dramatizar demasiado.
Es completamente cierto que el sistema GSM es el sistema de comunicaciones
inalámbricas más seguro de los que hay en la actualidad en servicio. También es
cierto, que al da de la fecha, aún con los fallos descritos en el presente
artículo, los pagos a través de movil GSM son, con mucha diferencia, más
seguros que los que pueda realizar cualquier usuario utilizando una tarjeta de
crédito tradicional. Pero como habrá podido comprobar, se le puede vender como imposible, lo que por el momento, es solamente improbable. Pero la situacion puede cambiar a peor, cuando el volumen de negocio a través del GSM valga la pena para los delincuentes. Recordemos que incluso hay equipos en el mercado,
capaces de interceptar las comunicaciones GSM.

Para que los usuarios puedan aceptar estas tecnologías sin reservas,
es necesario que los contratos y operativas sean realistas y tengan en cuenta
las limitaciones de seguridad de la tecnología utilizada. Desgraciadamente, si
se revisa la evolución histórica de las tarjetas de crédito, con el dinero que
mueven, el fraude que registran y el comportamiento de algunas entidades de
crédito cuando aparecen los problemas, no es para tener mucha fe, pero espero equivocarme. Por si alguien no lo ha pensado, es precisamente esa falta de fe de los usuarios, lo que está provocando su temida respuesta a las nuevas tecnologías del comercio electrónico. Como Último recurso, con las inseguras tarjetas de crédito de banda magnética, podrá recurrir a un calígrafo, para demostrar que no firmó un determinado recibo, posibilidad que ahora no tiene.

Como cliente, antes de lanzarse a la aventura tecnológica, revise
cuidadosamente la operativa y el contrato que le ofrecen y piense en las
dificultades que puede tener a la hora de demostrar un posible fraude, si es
víctima de ello. El contrato que firme, si no tiene en cuenta los fallos del
sistema, puede hacerle responsable de cualquier operación fraudulenta,
invalidando casi cualquier cláusula de responsabilidad limitada que pueda
imaginar. Sobre el papel, la Única persona que puede cumplir con todo lo
necesario para realizar un pago con un GSM es usted y además, solamente es
posible usando su teléfono. Por ello, a la vista de los problemas tecnológicos
del GSM, deberá establecerse un sistema que permita rechazar o detectar las
operaciones fraudulentas, o de otro modo,  tiene la posibilidad, aunque muy
remota por el momento, de pagar una cuenta que no es suya. Y se niega, ya
sabe... listas de morosos, servicios de reclamaciones que no saben dada del
tema, implacables servicios jurídicos sin visión realista del problema,
lentitud de la justicia, minutas de abogados y pocas posibilidades de
encontrar un perito que le pueda ayudar a demostrar lo que aquí­ se dice,
cuando todo el mundo cree y mantiene lo contrario.

No hay comentarios:

Publicar un comentario