26 agosto 2011

Romper la criptografía haciendo trampas

Los criptoanalistas rara vez admiten que necesitan ayuda. Hay una feroz independencia innata que caracteriza el negocio. Sin embargo, no siempre tienen éxito a través del criptoanálisis clásico. Se sabe que han llegado a hacer trampas. Y no son siempre honestos sobre esto a veces incluso mienten acerca de sus trampas.
El párrafo anterior es la traducción literal del inicio de un articulo desclasificado, titulado “The Sting - Enabling Codebreaking in the Twentieth Century” publicado originalmente en Cryptologic Quaterly una revista interna de la NSA.
Cuando se habla de seguridad de comunicaciones uno piensa automáticamente en criptografía y si se trata de romper esta criptografía vienen a la mente los dos ataques básicos, la fuerza bruta y el criptoanalis. El primero consiste en la comprobación exhaustiva de todas las posibles claves mediante el uso de la potencia pura de computación, mientras que el segundo supone la búsqueda de debilidades en los algoritmos criptográficos, o en la forman en la que se implementan, que permitan finalmente descifrar el contenido de las comunicaciones.
Sin embargo y tal como advertía el artículo de Cryptologic Quarterly no siempre es posible utilizar algunas de estas vías, puede darse el caso de un algoritmo del que no se conozcan debilidades y que implementado correctamente no puede ser atacado mediante criptoanálisis. Y aunque siempre queda la fuerza bruta en muchas ocasiones el recorrer el espacio de claves posibles se mide en cientos o en miles de años, y no es extraño el caso en la que la resistencia de un algoritmo se considera tal que el tiempo requerido para su cracking supera al tiempo que los astrofísicos suponen que le queda de vida a nuestro universo, al menos usando los ordenadores actuales.

Por tanto hay ocasiones en las que aquellos que deben romper la criptografía deben hacer trampas. Muchas veces esas trampas, a las que se refiere el artículo de la NSA consisten en obtener atajos para descifrar las comunicaciones, con artimañas poco honorables como robar, extorsionar o sobornar. La típica operación de servicio de inteligencia que recluta al encargado de cifra empleado en la sala de comunicaciones de la embajada de turno, para que directamente proporcione las claves utilizadas. Aunque otra opción es capturar un equipo de cifrado del enemigo o material de clave, aunque sea anticuado, para acelerar el proceso de criptoanálisis clásico.

No obstante existe otra forma bastante más elegante de hacer trampas, y consiste en usar argucias para que el enemigo deje voluntariamente de usar la criptografía y pase a comunicarse en texto plano o en claro. ¿Misión imposible?
En el mundo de internet estamos acostumbrados a que la criptografía desde el punto de vista del usuario sea prácticamente transparente y no tenga apenas ninguna penalización. Pero no siempre es así. Los sistemas de cifrado acrecientan la complejidad en los sistemas de comunicación, aumentan los puntos de fallo. Especialmente cuando se trata de comunicaciones por radio pueden darse casos en los que la criptografía provoca errores que hacen imposibles la comunicación, las claves criptográficas pueden estar incorrectamente configuradas, por ejemplo por un error de transcripción. También puede ocurrir que los sistemas de cifrado necesiten de una sincronización previa a la comunicación y esta falle, algo bastante común en los sistemas de secrafonia analógica usados para hacer ininteligible la voz en la comunicación por radio, en los primitivos sistemas de cifrado que se basaban en algoritmos de flujo , o en los sistemas de salto de frecuencia que dependen de una cuidadosa sincronización con un tiempo de referencia compartido de alta exactitud.

Un ataque contra estos sistemas consiste en interrumpir selectivamente las comunicaciones del contrario cuando estas son cifradas (por ejemplo mediante perturbadores de frecuencia) y en cambio no realizar ninguna acción cuando el enemigo intenta comunicarse en claro. Así el ingenuo operador de radio entiende que el fallo de comunicación es debido a algún problema de malfuncionamiento del equipo y desactiva el cifrado moviendo el conmutador correspondiente a la posición PLAIN. Entonces todo funciona con normalidad y ante la necesidad de comunicarse continua emitiendo en voz o texto plano.
Este tipo de ataque no es exclusivo de la guerra electrónica en mitad de una batalla, si no que recientemente se han publicado en el ámbito de la seguridad informática diversos ataques y las herramientas asociadas que hacen uso de esta técnica.

En la última edición de Usenix celebrada hace escasos días un grupo de investigadores de seguridad, entre los que se incluyen algunos nombres bastante conocidos como los de Matt Blaze o Travis Goodspeed, presento "Why (Special Agent) Johnny (Still) Can’t Encrypt:
A Security Analysis of the APCO Project 25 Two-Way Radio System". Se trata de un estudio de vulnerabilidades en el sistema de radio APCO 25, el utilizado habitualmente por la emisoras y walky-talkies de policías y organismos de seguridad en EEUU. La investigación incluía entre otras posibles vulnerabilidades una demostración de un interferidor inteligente basado en un transmisor de juguete, que se vende por unos pocos dólares, reprogramado. Este aparato una vez modificado no solo es capaz de bloquear la señal, si no que lo hace de forma inteligente, detectado el inicio de las tramas de datos y provocado errores que hacen descartar el frame entero. Una técnica que permite realizar la interferencia bastante eficiente.
Lo interesante es que coincidiendo con el escenario de ataque que planteábamos, también han implementado la capacidad de realizar esta interferencia de forma selectiva, de tal manera que solo interfiera las comunicaciones cifradas y deje pasar las comunicaciones en claro. Lo que permitiría la escucha ya que existen receptores de radio en el mercado capaces de recibir estas comunicaciones digitales cuando no van cifradas, siendo posible mediante el ataque convencer al usuario de la radio de que el problema está en su equipo, y que mágicamente este desaparece si desactiva la opción de cifrado y que entonces puede usar la radio normalmente. Especialmente si el usuario es un policía sometido en ese momento a una situación de estrés como dar respuesta un delito en curso.
Otra herramienta que implementa este tipo de ataque aunque con otro sistema inalámbrico bien distinto es MDK3 , se trata de una suite para la realización de ataques de denegación de servicio sobre redes Wifi, incorporando opciones como Floodeo de beacon frames malformados o de-autenticación automática estaciones . Desde la versión 5 este software añade el que denomina WPA-Downgrade Test , una curiosa funcionalidad por la cual desconecta mediante de-autenticaciones spoofeadas a los usuarios de una red wireless cuando emplean WPA y sin embargo les permite la conexión cuando se emplea el cifrado WEP vulnerable o se desactiva el cifrado dejando la red abierta. Todo ello con la esperanza de que el administrador de la red inexperto piense que eso del WPA "no funciona bien" desistiendo del uso del cifrado y deje la red accesible.
Finalmente y salvando las distancias también se podría incluir en este tipo de ataques algunos man in the middle destinados a eliminar el cifrado de una forma más o menos automática, que a diferencia de la técnica objeto de esta entrada, no se requiere la participación activa del usuario. Dentro de esta categoria estaría la captura de comunicaciones GSM utilizando BTS maliciosas que desactivan el cifrado o el famoso SSLstrip , la herramienta que permite sniffar SSL no rompiendo la criptografía, si no eliminado al propio cifrado de la ecuación.

La próxima vez que se encuentre ante un problema de comunicación entre dispositivos encriptados y este desaparezca incomprensiblemente cuando desactivamos el cifrado lo más probable es que se trate de un simple error de configuración…. o quizá no.


No hay comentarios:

Publicar un comentario