Taller de Criptografía - Informe 26

La seguridad de los teléfonos móviles



 


Fecha: 16 Marzo 2001


Con la excepción del venerable (y ya próximo a la jubilación) DES, los algoritmos de cifrado usados por los teléfonos móviles son los más usados en el mundo. Cada vez que un usuario echa mano de su móvil, un sofisticado sistema de protocolos criptográficos se pone en marcha. El objetivo es hacer la conversación impenetrable a fisgones indeseables, al menos en el tramo de la conversación comprendido entre el teléfono y la estación base que recibe la llamada. ¿Cómo son esos algoritmos? ¿De qué tipo? ¿Son seguros?

En este Taller de Criptografía no podíamos menos que involucrarnos en el asunto. Casualmente, pocas horas antes de escribir estas palabra, el Chapucero Jefe escuchaba atentamente un noticia en Informativos Telecinco sobre la seguridad de los teléfonos móviles. El caso es que recientes descubrimientos han puesto en tela de juicio la seguridad de las comunicaciones móviles. Veamos qué hay de cierto, y qué de leyenda urbana. No voy a desvelar el final de la película, así que a ponerse cómodo y a aprender se ha dicho.


Antecedentes y precedentes

Hasta el advenimiento de la telefonía móvil, y con raras excepciones, las conversaciones telefónicas no han incluido una protección mediante cifrado. Los motivos son diversos. Aparte las motivaciones conspirativas del tipo "el gobierno no quiere que cifremos para poder oír todas nuestras llamadas" (que de todo hay en esta viña), el hecho es que antes de la invención de la telefonía digital era muy difícil cifrar llamadas. Los sistemas de encriptación actuales -basados en algoritmos y códigos ejecutados en sistemas informáticos- son inaplicables en telefonía analógica, ya sea fija o móvil. Sería como intentar usar Word o Excel en una máquina de escribir.

Existían, eso sí, dispositivos "mezcladores" [scrambler] que permitían embarullar la conversación de forma que no pudiese ser oida por terceros. Esto resulta más difícil de lo que parece, puesto que el ser humano tiene una asombrosa capacidad para "corregir errores" y entender voces incluso fuertemente alteradas. Los mezcladores existentes estaban destinados a proteger llamadas en entornos de alto secreto (redes diplomáticas o militares), y ciertamente no estaban al alcance de ciudadanos de a pie.

Incluso en la década de los noventa, los teléfonos seguros estaban fuera de límites. Bruce Schneier, en su Applied Cryptography (2ª Edición, 1996) menciona un teléfono diseñado por la NSA (Agencia de Seguridad Nacional) llamado STU, que utilizaba sistemas criptográficos de clave pública, y que sería usado por el Departamento de Defensa de EEUU y sus contratistas. Existe una versión comercial, pero tiene sus sistemas de cifrado muy debilitados, y una versión para la exportación, más insegura todavía.

Posteriormente, la NSA volvió a la carga con el Surity 3.600, modelo fabricado (al igual que el STU) por la AT&T. Su seguridad vendría de la mano del chip Clipper, que usaba un algoritmo llamado Skipjack. Con su clave de 80 bits, hubiese sido una buena opción... de no ser por la insistencia por parte del gobierno de quedarse con una copia de la clave usada por cada teléfono. Aunque se intentó persuadir a las empresas para que lo usasen como estándar, al final no fue usado ni por el propio gobierno norteamericano.

Resulta digno de mención el proyecto PGPfone. Fue un intento por parte de Philip Zimmermann de dotar a las conversaciones de voz transmitidas por Internet de la misma seguridad que otorga a los mensajes de correo electrónico el programa PGP. Desafortunadamente, parece que nunca tuvo éxito comercial, y a pesar de los esfuerzos de Will Price y del propio Zimmermann, no pasó de la versión 2.1 y no llegó a ser comercializado.


Digital y móvil

Con el advenimiento de la telefonía móvil, el cifrado se convirtió en una necesidad. Para "pinchar" un teléfono fijo, antiguamente había que introducirse físicamente en el sistema, sea en la central telefónica, en los cables de transmisión o en el propio teléfono. ¿Quién no ha visto en una película al agente federal de turno insertar un micro o pinchar unos cables con clips de cocodrilo?. Pero si usamos un teléfono móvil, el tramo final de la conversación (entre la estación base y el teléfono) tiene lugar en el aire mediante microondas. Estas, a fin de cuentas, no son sino un tipo de ondas de radio, y pueden ser captadas con un receptor adecuado. La situación no es muy diferente, en ese sentido, de las conversaciones entre radioaficionados de onda corta.

Así pues, los teléfonos móviles de primera generación (los analógicos) carecían de protección contra escuchas ilegales. En España, hasta donde yo sé, solamente Moviline comercializó este tipo de sistemas. Y aunque eran inseguros, no hubo mucha gente que cayera en ese detalle. A fin de cuentas, eso de liberarnos del cable y caminar por la calle con el teléfono en la mano y aires de superioridad era ya novedad suficiente para los usuarios de la nueva telefonía.

Pero como contrapartida, se emitían al éter conversaciones confidenciales de personas que creían hablar por un teléfono más seguro que los de tipo fijo. En un caso que se hizo famoso, el dirigente del PSOE Txiqui Benegas sufrió el pinchazo de su móvil por parte de un grupo de avispados periodistas. El grado de desconocimiento sobre los problemas de la telefonía móvil analógica era tal que el propio Benegas se negó a creer que le habían interceptado las llamadas, replicando que "iba a más de 200 km/h, y es imposible que me hayan pinchado el móvil." Dejando aparte el riesgo de accidente inherente a una carrera a tales velocidades por las calles de Madrid, creo que alguien debiera haber informado al señor Benegas sobre la velocidad de las ondas electromagnéticas...

En cualquier caso, la segunda generación de telefonía móvil aparecía en el horizonte. Al contrario que su hermana, ésta usaba tecnología digital. Como consecuencia de ello, el usuario tenía un canal de comunicación más claro y libre de interferencias. Y más seguro, porque las señales digitales se pueden cifrar a conveniencia. Recordemos que ello no significa un cifrado durante todo el recorrido de la llamada, sino solamente entre la estación base y el teléfono receptor; el resto del camino, la señal va sin cifrar. Pero por fin se pudo cerrar la "ventana de vulnerabilidad" base-receptor. Al mismo tiempo, se perfeccionan los sistemas de autenticación, de manera que nadie puede "clonar" un móvil y hacerse pasar por otro. A cada uno, su móvil ... y su factura.

Pero si hay algo que los fieles lectores de estos Informes habrán aprendido a estas alturas, es que en el mundo de la criptografía suele haber un buen trecho entre teoría y práctica. ¿Cómo han respondido los móviles a las pruebas del mundo real?


El debilucho primo americano

Las siglas GSM son para los europeos sinónimas de móvil digital, pero no sucede así en Estados Unidos. En 1992, su Asociación de Industrias de Telecomunicaciones (TIA) desarrolló un conjunto de estándares para la integración de las tecnologías de cifrado en sus sistemas de telefonía celular avanzada. Se eligieron los mejores sistemas diseñador por sus mejores técnicos. Sin embargo, el proceso se llevó a cabo en un ambiente cerrado, sin escrutinio público y sin revisión por parte de expertos externos. Y, como en muchos otros casos de "seguridad mediante oscuridad", esto resultó ser una mala idea.

Ya en 1992 se pudo comprobar que el algoritmo usado para el cifrado de voz era inseguro (esto no significa necesariamente que sea inútil, pero sí que es cuando mínimo mucho menos fuerte de lo que se suponía que debería ser). Posteriormente fue atacado el algoritmo usado para cifrar servicios de datos. Y en 1997, se anunció que su algoritmo CMEA era asimismo inseguro. Para no extendernos en explicaciones, baste decir que CMEA protegía los números que se pulsaban en el teclado del móvil, incluyendo los del código de identificación (PIN).

La historia de la ruptura de CMEA y sus repercusiones no tiene desperdicio. Para empezar, CMEA es un código de cifrado con clave de 64 bits. Eso significa que, de haber estado bien diseñado, un atacante habría tenido que probar 2^64 claves distintas. O dicho en lenguaje técnico, tendría un "factor de trabajo" de 64 bits. Sin embargo, David Wagner, Bruce Schneier y John Kelsey mostraron que el factor de trabajo real estaba entre 24 y 32 bits. Es decir: a todos los efectos, es como si el algoritmo tuviese solamente entre 24 y 32 bits. Puede hallarse el artículo que muestra dicho ataque en la página de Counterpane.

Pongamos el consabido ejemplo del maletín con cerradura de combinación. Una combinación de tres digitos que varían entre 0 y 9 nos da un total de 1.000 posibles combinaciones. Así, un ladrón que no conozca la combinación tendría que probar los 1.000 posibles números. Ahora bien, supongamos que haya un error de diseño, gracias al cual un ladrón inteligente solamente tuviese que probar las combinaciones que fuesen múltiplos de tres. Esto significa que solamente habría que probar 333 números. De repente, la tarea del ladrón se ha hecho tres veces más fácil. En el caso de CMEA, el trabajo del atacante se ha hecho hasta un billón de veces más sencillo. Conclusión: las escuchas, que antes eran poco menos que imposibles, se hacen factibles.

Las reacciones al ataque WSK (Wagner, Schneier, Kelsey) son dignas de pasar a la historia del disparate. En un comunicado, la CTIA (Asociación de Industrias de Telecomunicaciones Celulares) se defiende afirmando que:

  • el algoritmo de cifrado de voz no fue atacado en esta ocasión. Cierto. Pero ese algoritmo ya fue atacado en 1992. De hecho, estaba basado en el cifrado Vigenère, que fue reventado !durante la década de 1.850!

  • el ataque requiere "conocimientos criptográficos muy sofisticados" Por lo que yo he visto, cualquier criptógrafo medianamente competente podría entender y aplicar dichos conocimientos.

  • cualquier tecnología desarrollada por una persona puede ser reventada por otra con la aplicación de la suficiente tecnología. Cierto. Pero me pregunto: si me venden una puerta acorazada y un atacante consigue abrirla con un abrelatas, ¿sirve esa explicación como consuelo?

  • es irrelevante para los usuarios de telefonía analógica. Claro que los teléfonos analógicos no sufren ataques criptoanalíticos: !no tienen sistemas de cifrado en absoluto!

  • un teléfono con algoritmos de cifrado seguro sería inviable por su coste y exigencias técnicas. Aunque como afirma Schneier, "se requiere más procesamiento computacional para digitalizar la voz que para encriptarla."

El lector interesado puede leer por sí mismo el comunicado de la CTIA y la respuesta de Bruce Schneier.

Resulta asimismo muy instructivo leer los comunicados de prensa de algunas de las empresas fabricantes de teléfonos analógicos. Qualcomm, sin reconocer ni negar la veracidad del ataque WSK, se ratifica en la necesidad de aumentar la seguridad y privacidad para los usuarios. Pacific Bell Mobile Services afirma tajante que las escuchas telefónicas son actividades ilegales, si bien tanto esta empresa como Omnipoint y Powertel afirman ser inmunes a este ataque. El motivo es que no usan CMEA ni ningún otro algoritmo de la TIA. En su lugar, han preferido apostar por una tecnología de allende los mares, denominada GSM. "Nuestra tecnología pone una sólida barrera contra intentos de intrusión electrónica", llega a afirmar Omnipoint

Pero como dijo Pedro Navaja, sorpresas te da la vida.


Entra el GSM

Por qué son los protocolos criptográficos de los teléfonos móviles norteamericanos es un tema de debate. Algunos ven tras ello la mano de la poderosa NSA, que durante décadas se ha esforzado en restringir el uso de criptografía fuerte. Otros lo explican en términos de simple incompetencia, sazonada con algo de arrogancia. Probablamente habrá de todo un poco. En cualquier caso, los ataques anteriormente descritos elevaron la cotización de la telefonía GSM.

El sistema GSM (Global System for Mobile communications, o Grupe Speciál Mobile, que en esto no hay unanimidad) fue desarrollado por el Instituto Europeo de Estándares en Telecomunicaciones ETSI para proporcionar un estándar común a los sistemas de telefonía móvil en el viejo continente. Al igual que en el caso norteamericano, se incluyeron un conjunto de protocolos criptográficos para proporcionar tanto confidencialidad como autenticación. Son los siguientes:

  • A3 Es el algoritmo de autenticación. Es el que hace que cada teléfono móvil sea único. Permite, entre otras cosas, saber a quién hay que cobrar la llamada.

  • A5 Es el algoritmo de cifrado de voz. Gracias a él, la conversación va encriptada. Se trata de un algoritmo de flujo [stream cipher] con una clave de 64 bits. Hay dos versiones, denominadas A5/1 y A5/2; esta última es la versión autorizada para la exportación, y en consecuencia resulta más fácil de atacar.

  • A8 Es el algoritmo que genera claves tanto para autenticación (A3) como para encriptación (A5). Básicamente, se trata de una función undireccional parecida a las funciones "hash" (tipo MD5 o SHA-1) que permiten la firma digital en los documentos electrónicos.

  • COMP128 Es un algoritmo que permite funcionar a los A3 y A8. Las especificaciones GSM permiten el uso de varios tipos de algoritmos como "corazón" de A3 y A8. COMP128 es uno de ellos. No es el único posible, pero sí uno de los más usados.

Y ahora, agárrense, porque para entender los ataques contra los algoritmos GSM hemos de explicar cómo funcionan. No se preocupen, que no vamos a sacar código fuente ni funciones matemáticas. Simplemente, vamos a explicar los rasgos básicos de su funcionamiento. Apuesto a que lo hallará bastante instructivo.

Supongamos que usted va tan tranquilo por la calle cuando decide llamar a su suegra. Inserta su número PIN (si es que no lo hizo con anterioridad), y mientras usted se pega el auricular a la oreja, en las tripas electrónicas de su móvil se llevan a cabo los siguientes pasos:

  • Su teléfono toma de la tarjeta (SIM) una clave que estaba almacenada en su interior. Llamaremos Ki a dicha clave.

  • A continuación, el teléfono toma ciertos datos aleatorios que se intercambian entre éste y la estación base más cercana. A este paquete de datos se le suele llamar "semilla aleatoria" [random seed].

  • El conjunto clave+semilla son transformados mediante el algoritmo de autenticación A3. El resultado de dicha transformación es enviada a la estación base.

  • La estación base autentica la identidad del llamante. Es decir, toma los datos de semilla aleatoria y la clave del teléfono Ki (que están almacenados a disposición de dicha estación) y realiza la comprobación.

  • Si la estación base ha quedado satisfecha con los resultados de la comprobación, da vía libre a la comunicación. Toma la clave del teléfono Ki y una semilla aleatoria para crear una clave de sesión Kc, de 64 bits de longitud. Esa clave es usada para encriptar la comunicación, gracias al algoritmo A5.

Y eso es todo. El resto son detalles triviales: que el teléfono receptor tenga cobertura, que no se quede usted sin batería, que no salte el contestador ... pecata minuta. Los algoritmos han cumplido su función.

Véase, por lo tanto, cómo la autenticación de la llamada recae sobre el algoritmo A3, en tanto que la confidencialidad de ésta es tarea de A5. Ambos algoritmos requieren de una clave, generada mediante A8. De hecho, los algoritmos A3 y A8 suelen tratarse prácticamente como si fuesen uno solo.

¿Y qué pinta el COMP128? Como he dicho, es una de las posibles variantes que se pueden usar en A3 y A8. Digamos que, si A3 y A8 fuesen un modelo de automóvil, COMP128 sería uno de los motores que pueden llevar en su interior (TDi, gasolina, inyección directa, GTi...). Se supone que cada empresa de telecomunicación puede usar su propio algoritmo. Pero en la práctica, la gran mayoría de ellas se limitaron a implementar COMP128, que es el algoritmo de prueba presente en las especificaciones técnicas (Vodaphone, según Marc Briceno, es una de las compañías que NO utiliza COMP128).

Y ya basta de tecnicismos. Pasemos al ataque


Ataque al A3

Puesto que A3 es el algoritmo de autenticación, su ruptura permitiría "clonar" teléfonos, es decir, hacer que un tercero utilizase el mismo número de teléfono que otro ... y le cargase a éste las facturas. Ni que decir tiene que las telecos se guardarían mucho de permitir que eso ocurriese.

En Abril de 1998, se publicó la noticia de que Ian Goldberg y David Wagner (del grupo ISAAC de la Universidad de Berkeley), junto con Marc Briceno (de la Smartcard Developer Association) consiguieron "clonar" un móvil que usaba COMP128 como algoritmo de A3 y A8. Lo que hicieron se denomina ataque mediante texto escogido [chosen-challenge attack]. Básicamente, "interrogaban" al teléfono de forma controlada. Cotejando los datos emitidos por el móvil, los investigadores consiguieron obtener la clave Ki, que como vimos anteriormente se utilizaba para autenticación.

El proceso requería acceso físico al teléfono, cierto equipo informático y un proceso de interacción con el teléfono de unas 8 horas de duración. No es tan rápido como hacer fotocopias, pero el hecho de que se pudiese extraer la clave Ki del SIM con poco más de 150.000 interacciones hacía quedar mal tanto al algoritmo como a sus dueños.

La GSM Alliance contraatacó vigorosamente, intentando cuando menos minimizar los daños (recomiendo leer la interesante lista de puntualizaciones redactada por Jesús Cea Avión al respecto). En primer lugar, negaron que el ataque permitiese clonar teléfonos, ya que no se pueden usar dos teléfonos con el mismo número al mismo tiempo. Esto es discutible, cuando menos, ya que las redes de telefonía móvil se diseñaron pensando que eso no sucedería, y muchas simplemente no pueden adaptarse a la nueva situación.

A continuación, se cuidaron de recordar que el ataque requería acceso físico. Es decir, habría que obtener el teléfono, interactuar con él y devolverlo sin que su dueño se percatase (ya que llamar para desactivarlo es cuestión de segundos). Sin embargo, hay que tener un hecho bien claro: un ataque "en el aire" (interactuando desde el aire, sin acceso físico) no es imposible. De hecho, los investigadores fueron incapaces de clonar un móvil "en el aire", no porque no fuese técnicamente posible, sino porque es ilegal. De hecho, David Wagner afirma que:

    Extensas conversaciones con ingenieros de GSM nos hacen concluir que los ataques "por el aire" deben ser considerados posible en la práctica para un atacante sofisticado. No hemos intentado aún construir una demostración de laboratorio (parece que sería ilegal, bajo las leyes de EEUU, hacer este tipo de investigación), pero los expertos de GSM con los que hemos hablado han confirmado que sería posible en teoría y en la práctica. Han informado de que diversos aspectos de los protocolos GSM se combinan para permitir montar el ataque matemático de entrada escogida sobre COMP128, si se pudiese construir una estación base falsa. Tal estación base no necesita soportar todo el protocolo GSM, y podría ser construida por unos 10.000 dólares

Es decir, que con un par de millones de pesetas podríamos montar una estación "de pega" que se dedicase a interrogar a todo móvil que permaneciese unas cuantas horas en su radio de acción, 24 horas al día.

En algunos puntos las empresas usuarias de GSM tienen razón. Copiar teléfonos mediante la técnica de interrogación electrónica mediante contacto físico sería técnicamente difícil, y de resultados limitados, ya que el teléfono clonado no puede en teoría usarse simultáneamente con el legítimo y no podría, por tanto, usarse para espiar conversaciones. Pero sin duda tiene muchas aplicaciones. Por ejemplo, es una buena herramienta para las agencias de espionaje electrónico, grupos del crimen organizado y, en general, entidades con recursos económicos y técnicos que tengan necesidad y ganas de complicarse la vida si la recompensa lo requiriese.

Cualesquiera que fuesen sus resultados en la práctica, el hecho es que el que se creía invulnerable algoritmo A3 resulta de calidad mediocre; o, para ser más exacto, el algoritmo COMP128 usado por A3 resulta vulnerable. Resulta especialmente llamativo el hecho de que COMP128 era un algoritmo secreto. Sin embargo, los investigadores consiguieron recomponerlo mediante técnicas de ingeniería inversa y diversos documentos (algunos públicos, otros filtrados de una u otra forma). Esto no es sino otro recordatorio de que la técnica de seguridad mediante oscuridad, simplemente, no funciona.

Y si tres científicos norteamericanos pudieron atacarlo, otros podrían copiar dicho ataque. De hecho, a finales de Abril, el grupo alemán Chaos Computer Club anunció que había puesto en práctica el ataque a A3 con éxito en una de las redes alemanas GSM, llamadas D2. Incluso afirmaron que consiguieron conectar a la red ambos teléfonos (el legítimo y el clonado) simultáneamente.

Como vemos, el esquema de "seguridad mediante oscuridad" simplemente no funciona. Ya en 1997, dentro de la conferencia Global Communications Interactive ´97, Ilhana Nurkic afirmaba que una de las debilidades en el diseño del sistema GSM era la ausencia de la resistencia de los algoritmos usados. Y añadía: "Parece que no es posible un cambio dramático positivo en el clima actual, donde se mantiene el ´mito´ de la GSM segura... parece que los intereses comerciales y políticos (de cortas miras) quieren explorar la infraestructura proporcionada por GSM, así como las soluciones de seguridad fragmentadas y convencionales de tipo GSM (que también permite la interceptación por motivos de ´interés último´)". Como mínimo, los telecos no podrán decir que no estaban avisados.


Ataque al A5... en varios asaltos

Como hemos visto, el conocimiento de la clave Ki permite "clonar" teléfonos. En principio, también permitirían descifrar la conversación, es decir, poder escuchar lo que dos interlocutores hablan. Esto es posible porque la clave de sesión Kc (usada para cifrar la llamada) se obtiene mediante la clave Ki y una semilla aleatoria. Pero habría que obtener esa semilla para cada conversación, y hay que recordar que el ataque anteriormente descrito requiera horas o días. Y recordemos que solamente son vulnerables los sistemas que utilicen el algoritmo COMP128 para autenticación y generación de claves. Por ello, ni los propios autores estimaron que su método fuese útil en la práctica para interceptar y descifrar la llamada. Pero se las arreglaron para darnos otro susto.

Como ya se ha dicho, la clave de sesión Kc -usada por el algoritmo A5 para cifrar las llamadas- tiene una longitud de 64 bits. Esto significa que, si el algoritmo estuviese bien diseñado, un atacante tendría que probar las 2^64 combinaciones posibles de claves para descifrar el mensaje. Y 2^64 son casi veinte trillones, una cantidad grande. Está teóricamente al alcance de atacantes bien organizados, pero sólo mediante esfuerzos enormes tanto en material como en recursos económicos (véase los Informes 22 y 23). Demasiado trabajo para pinchar una simple llamada.

Sin embargo, Goldberg, Wagner y Briceno hicieron un inquietante descubrimiento adicional. Su análisis de los algoritmos del sistema GSM mostraron inequívocamente que, de los 64 bits de la clave de sesión Kc, !diez de ellos son siempre iguales a cero! Este debilitamiento, aparentemente deliberado, de la clave, pone las cosas 2^10 = 1.024 veces más fáciles a un atacante interesado ... como, por ejemplo, una agencia de inteligencia con gran presupuesto. Por supuesto, la industria no reconoce que sea ése el motivo. En una vuelta de tortilla, afirmaron que los 10 bits proporcionan una "flexibilidad adicional en respuesta a amenazas de fraudes y de seguridad." Este debilitamiento se vio en todos las implementaciones del algoritmo generador de claves A8, incluso las que no usaban COMP128. Es decir, parece ser una característica global a toda la infraestructura GSM.

Segundo asalto: nótese que hace dos párrafos aparece el condicional "si el algoritmo estuviese bien diseñado." Al igual que su primo autenticador, A5 fue desarrollado de puertas para adentro, en la creencia de que mantener el algoritmo secreto evitaría que se le pudiese atacar. Parece que nadie les ha explicado todavía que existe algo llamado ingeniería inversa. Marc Briceno afirma haber reconstruido el algoritmo A5 en sus ratos libres, a lo largo de unos pocos meses, bajo un presupuesto de menos de cien dólares.

Podría haberse ahorrado el trabajo. Cuenta Bruce Schneier en su Applied Cryptography que:

    una compañía telefónica británica dio toda la documentación [sobre A5] a la Universidad de Bradford sin recordarles que debían firmar un acuerdo de no revelación. Se filtró aquí y allí, y eventualmente acabó en Internet. Un artículo describiendo A5 fue [presentado en el congreso CHINACRYPT´94] ...

Añade Schneier que hubo muchas cosas raras alrededor de A5. Según ciertos rumores, hubo diversas peleas entre agencias de inteligencias europeas: los alemanes querían cifrado más fuerte, pero los otros países ignoraron sus peticiones y acabaron imponiéndose las tesis francesas. Rumores aparte, hay un ataque criptoanalítico que requiere un total de 2^40 cifrados, y entre 2^40 y 2^45 operaciones informáticas, bien al alcance de los ordenadores actuales de alta velocidad, o bien de chips construidos a tal efecto. Ya en 1994, el criptógrafo Ross Anderson abogaba porque A5 se considerase un algoritmo exportable, ya que parecía ser equivalente en fortaleza a sistemas como RC2 o RC4 con clave de 40 bits.

A5 tiene dos "sabores": la versión A5/1 (para uso doméstico) y la A5/2 (para la exportación). No hay que ser un genio para suponer que la versión exportable estará lo bastante debilitada como para que cualquier agencia de espionaje electrónico medianamente competente pueda comérsela con patatas.

No he hallado datos sobre la fortaleza teórica de A5/2, salvo un documento titulado Informe sobre la especificación y evaluación del algoritmo de cifrado GSM A5/2 redactado en 1996 por el Grupo de Expertos sobre Seguridad de Algoritmos [Security Algorithms Group of Experts, SAGE] del Instituto Europeo de Estándares de Telecomunicación [ETSI]. Dicho documento (código ETR 278) se prodiga poco en datos técnicos, pero afirma que:

    los resultados de los análisis matemáticos no identificaron características del algoritmo que pudieran ser explotadas para un ataque de interceptación práctico en el tramo radio de GSM

Una de dos: o el grupo de expertos SAGE es una banda de chapuceros o, por el contrario, hicieron un excelente trabajo de evaluación ante un algoritmo deliberadamente debilitado. Un ataque diseñado por Wagner, Goldberg y Briceno en agosto de 1999 mostró que solamente tenía una resistencia equivalente a la de un algoritmo de 16 bits. Es decir, solamente hay que hacer un esfuerzo computacional equivalente a probar 66.000 claves, y ya está. En palabras de Goldberg, "puede ser reventado en tiempo real ... lo mismo daría que los GSM no llevasen esta algoritmo de privacidad de voz." Efectivamente, un mensaje que pueda ser descifrado en milisegundos tanto daría que no fuese cifrado.

Un miembro de otro equipo de criptógrafos que criptoanalizó la variante A5/2 con éxito afirmó "nuestro ataque solamente funciona porque diversas propiedades del sistema de cifrado son justo las correctas. ¿Casualidad? Muchos lo dudan. Solamente podemos esperar y ver si las mismas ´coincidencias afortunadas´ funcionan también en un ataque contra A5/1." Ese era el estado de cosas a finales de 1999, mientras el mundo estaba preocupado por el cambio de milenio (o no).


Efecto 2000, versión israelí

En Diciembre de 1999, los investigadores israelíes Alex Biryukov y Adi Shamir (la S en RSA) lanzaron un ataque criptoanalítico sobre A5/1 aprovechando ciertos "fallos sutiles." Con el título de Criptoanálisis de A5/1 en tiempo real con un PC, el artículo de Biryukov y Shamir sorprendió a los entendidos por la relativa facilidad con la que se pueden descifrar conversaciones cifradas mediante A5/1. ¿Los medios? Nada de grandes equipos informáticos ni presupuestos multimillonarios. Esto es lo que necesita el malo de la película para husmear donde no le llaman: un ordenador personal con 128 Mb de RAM (el artículo menciona los PC, pero no creo que le hagan ascos a los Mac :-), una capacidad de almacenamiento equivalente a entre dos y cuatro discos duros de 73 Gb cada uno y un escáner digital (esto último no se menciona en el artículo, pero sería necesario para un ataque real).

El ataque precisa de una etapa de cálculo previo consistente en unos 2^48 pasos, que solamente ha de llevarse a cabo una vez. Una vez hecho, el atacante puede elegir entre diversos tipos de ataque. En uno de ellos se precisa el equivalente a un par de segundos de conversación (cifrada), y el ataque requiere unos minutos. En otro, es preciso obtener dos minutos de conversación, pero el tiempo del ataque se reduce a apenas un segundo.

No cabe duda que estos datos pueden mejorarse, tal y como sugieren los propios autores. Una de las cosas que llaman la atención es que NO se aprovechan del hecho de que 10 de los 64 bits de la clave de cifrado son cero. Es decir, el ataque valdría hasta para claves que incorporasen lo que la industria denominaba "flexibilidad adicional" ¿Podría obtenerse un resultado más rápidamente para una clave de 54 bits efectivos? Hagan sus apuestas.

Como puede uno imaginarse, un ataque criptoanalítico prácticamente en tiempo real, al alcance de cualquiera que sepa leer inglés, programar y disponga de un ordenador de sobremesa y unos 150 Gb no es lo que denominaríamos trivial. Pero no parece que la industria de telecomunicaciones pierda el sueño por ello. En un artículo del New York Times de 7 de Diciembre, un portavoz de Ominpoint (la que presumía de ser inmunes a los ataques contra el algoritmo CMEA, ¿recuerdan?) calificó los resultados como "ridículos... lo que describen es un ejercicio académico que nunca funcionaría en el mundo real."

El lector interesado puede leer los comentarios de Gregorio Álvarez Marañón (Boletín del Criptonomicón, nº 62 y Bruce Schneier (Crypto-Gram 15 Diciembre 1999; existe traducción en Kriptópolis: Cripto-Grama nº 20)

Al día de hoy, centenares de millones de teléfonos GSM siguen funcionando por todo el mundo. Puede que usted sea usuarios de este tipo de tecnología. Puede que, antes de leer este informe, se creyese a salvo de oídos indiscretos gracias a tanto código de bloqueo y desbloqueo, PIN, PUK y similares. Le pido disculpas por haberle robado su tranquilidad. Pero eso es lo que hay. ¿Y qué quiere que le diga? Se supone que los expertos sabían hacer su trabajo.

¿Lo saben todavía?


3G: la nueva generación

La tecnología analógica constituyó la "primera generación" de telefonía móvil. La telefonía digital (GSM) fue la segunda. Ahora se está preparando la tercera generación (llamada UMTS o 3G), que nos promete acceso móvil a Internet, videoconferencia y un sinnúmero de maravillas. A la vista de la historia reciente, cabe preguntarse si veremos cometerse los mismos errores.

En un principio, también los algoritmos de la telefonía de tercera generación (llamémosla 3G) fueron mantenidos en secreto. Pero en Septiembre de 2000, la ETSI publicó un comunicado en el que anunciaba la distribución de los algoritmos de confidencialidad f8 e integridad f9 que protegerán el tramo aéreo en las futuras comunicaciones 3G. También se han hecho públicos los detalles de funcionamiento del conjunto de algoritmos para autenticación y generación de claves (f1, f1*, f2, f3, f4, f5 y f5*). En realidad, la estructura 3G es bastante más compleja que la GSM a efectos de confidencialidad y autenticación, así que pido disculpas si cometo algún error. Vamos allá.

La seguridad en 3G será tal que no será necesario que todos los operadores usen los mismos algoritmos para autenticación o intercambio de claves. El problema es que lo mismo sucedión en el caso de GSM, y los operadores se limitaron en su mayoría a adoptar el algoritmo proporcionado como ejemplo. No obstante, a la vista de los documentos que he leído, parece que esta vez se toman más en serio la posibilidad de elegir algoritmos "a la carta."

En el caso de 3G, el conjunto de algoritmos de autenticación y generación de claves sugerido como ejemplo se denomina MILENAGE. Este es un conjunto construido alrededor del cifrado en bloque conocido como Rijndael. Existían buenos motivos para elegir Rijndael: tiene clave de 128 bits, ha sido bien estudiado, es de dominio público (es decir, carece de patentes que puedan limitar su uso), es eficiente tanto en funcionando en hardware como en software, y en el momento de ser propuesto era uno de los finalistas para ser elegido como Estándar de Cifrado Avanzado (AES), el sucesor del ya caduco DES. Esto último significa que Rijndael ya sido extensamente atacado por la comunicad criptográfica, y que por tanto Milenage no se convertiría en otro algoritmo desarrollado en secreto.

Aunque el grupo SAGE no lo sabía en ese momento, estaban dando en el clavo. Rijndael fue finalmente escogido por el NIST (Instituto Nacional de Estándares y Tecnología) norteamericano como algoritmo AES. Esto significa que el núcleo de la seguridad 3G es el mismo algoritmo que será difundido para todo tipo de aplicaciones de cifrado, y por lo tanto será uno de los más ampliamente estudiados de la historia.

Como contrapartida, la confidencialidad e integridad en el intervalo aéreo (entre el móvil y la estació base) es tarea reservada al algoritmo KASUMI. Traducible como "niebla", Kasumi parece ser un algoritmo en bloque de 128 bits que tiene ciertos derechos intelectuales. La ausencia de ataques conocidos hasta ahora contra Kasumi significa una de dos cosas: o bien yo soy un manta buscando información :-(, o bien no existen hasta la fecha.

A falta de más datos, quiero pensar que este algoritmo ha sido bien diseñado. Personalmente, hubiese preferido un algoritmo más conocido y usado (por ejemplo, el mismo Rijndael), pero reconozco que me baso en los prejuicios. En cualquier caso, es bueno que el algoritmo Kasumi haya sido hecho público, de forma que la "seguridad mediante oscuridad" sea sustituida por la alternativa "luz y taquígrafos" que tan buenos resultados ha dado hasta ahora para separar el trigo de la paja.

Y ahora, querido lector (o mejor: después de leer este Informe) puede usted echarle un vistazo a los algoritmos. Janows Csirij, de la AT&T Labs Research, mantiene una introducción a la seguridad en 3G, junto con enlaces a Milenage y Kasumi, en http://www.research.att.com/~janos/3gpp.htm. La ETSI, entidad co-custodia de los algoritmos f8 y f9, los tiene en un enlace en http://www.etsi.org/dvbandca. Y puede leer un artículo sobre la resistencia de Kasumi a los ataques de criptoanálisis, escrito por Johan Wallén de la Universidad Tecnológica de Helsinki, enhttp://www.niksula.cs.hut.fi/~jwallen/kasumi/kasumi.html. Pasen y pónganse cómodos.


Palabras finales (por ahora)

Debemos ahora bajarnos del limbo de las abstracciones criptográficas y poner los pies en el suelo. Incluso si Kasumi, Rijndael y toda su cohorte de algoritmos funcionan perfectamente, y aún si el esquema de seguridad para la telefonía 3G soporta los embates del mundo real debemos tener presentes que la conversación solamente es segura en el trayecto que va de la estación base al móvil. Durante el resto del trayecto (de la estación base de un interlocutor a la del otro), la conversación viaja sin cifrar. Esto significa que cualquier persona o entidad con acceso a la red telefónica podrá pinchar las llamadas. Nuestra privacidad sigue sin estar garantizada más que a trozos.

Y un aviso final. No crean que tanta autenticación y cifrado sirve para mantener sus comunicaciones a salvo de los oídos del Estado. Todos los sistemas de comunicación actuales incluyen sistemas para el llamado "acceso legal", de forma que una autoridad policial pueda espiar en la conversación haya o no cifrado de por medio. En el caso de la telefonía 3G, los requisitos sobre "interceptación legal" han sido plasmados en los documentos TR33.106 y TR33.107. Por cierto, una de las referencias contenidas en dichos documentos se denomina Resolución del Consejo de la Unión Europea sobre la Interceptación Legal de las Telecomunicaciones de 17 Enero de 1995. Esta Resolución fue ampliada en 1999 y se hizo muy conocida bajo el nombre de resolución Enfopol. Tal vez hayan oído hablar de ella.

 


© Arturo Quirantes 2005.  Correo electrónico: aquiran arroba ugr.es


 

Vuelta a la sección Informes del Taller de Criptografía