17 agosto 2008

MIG-in-the-middle


Un ataque man-in-the-middle se produce cuando un tercero se sitúa entre dos principales, ya sean personas o algún tipo de equipo, y les engaña haciéndoles creer a cada de ellos que él es el otro principal. Para ello actúa de intermediario modificando el flujo de información intercambiado por los principales según sus intereses. La única solución a este tipo de ataques es el cifrado de la comunicaciones mediante un protocolo que implique un intercambio de claves a través de un canal seguro, de manera que aunque un atacante pudiese intervenir la comunicación sería incapaz de entenderla o de modificarla sin ser detectado por los controles de integridad.

Hasta ahí la teoría. La práctica admite multitud de variantes, que de hecho se han dado a lo largo de la historia. Uno de los ejemplos más espectaculares me lo he encontrado durante la lectura de Security Engineering, de Ross Anderson. Para ilustrar la disertación sobre los ataques man-in-the-middle, el autor cuenta el desastre sufrido por las tropas sudafricanas a raíz de una variante del ataque que el tiempo ha acabado llamando MIG-in-the-middle.

======================================
Nota del autor: Como Zooko comentó en la versión inglesa de este artículo, Ross Anderson admitió en la segunda edición de su libro que recientemente había descubierto que esta historia no era cierta. Sin embargo, podría haber pasado (cambiando los actores) en cualquier otra guerra en cualquier otro sitio, por eso pienso que sigue siendo interesante.
======================================

A finales de los 80, Sudáfrica estaba implicaba en una guerra en el norte de Namibia y en el sur de Angola. Su objetivo era mantener al gobierno blanco de Namibia y poner al gobierno títere de la UNITA en Angola. Como el ejército sudafricano estaba formado exclusivamente por reclutas blancos y estos no representaban precisamente un segmento de población numerosa era esencial mantener una tasa de bajas lo más reducida posible. Por eso el ejército sudafricano prefería concentrarse en mantener el orden en Namibia y apoyar con sus fuerzas aéreas a las tropas de la UNITA en Angola. Para evitar que las tropas rebeldes angoleñas y sus aliados cubanos realizasen contraataques aéreos contra Namibia, Sudáfrica desplegó una poderosa barrera de baterías antiaéreas. Para que no se diese el llamado "fuego amigo", los aviones sudafricanos iban equipados con dispositivos IFF (identify-friend-or-foe), comunes hoy día, los cuales respondían según un algoritmo preestablecido a las señales enviadas por las baterías antiaéreas de manera que estas identificasen como amigos a los aviones sudafricanos. En realidad no era sino la versión tecnológica del clásico sistema de "santo-y-seña".

El sistema defensivo parecía imbatible y, sin embargo, un buen día un escuadrón de MIGs cubanos atravesó la línea de defensa y bombardeó uno de los principales campamentos sudafricanos de Namibia sin que las baterías antiaéreas de la frontera disparasen un sólo tiro. Las bajas fueron terribles y motivaron que el gobierno sudafricano decidiese retirar las tropas de Namibia, lo que con el tiempo llevó a que cayese el gobierno blanco de aquel país.

Pasó un tiempo hasta que se descubrieron (y se confesaron) las causas de aquel fallo garrafal en la defensa sudafricana. Parece ser que la inteligencia angoleña averiguó que los sudafricanos, quizás por un exceso de confianza, dejaban encendidos sus dispositivos IFF cuando realizaban misiones sobre territorio angoleño por lo que hicieron que una escuadrilla de MIGs esperase cerca de la frontera de Namibia a que otra escuadrilla, esta vez sudafricana (SAAF en la figura), sobrevolase Angola para realizar un bombardeo. Cuando los sudafricanos hicieron acto de presencia sobre Angola para llevar a cabo sus respectivas misiones, los MIGs penetraron en territorio de Namibia. Por supuesto, las baterías antiaéreas sudafricanas detectaron a los MIGs y lanzaron las señales IFF para averiguar si se trataba de aviones amigos o enemigos. Los MIGs carecían de las claves necesarias para responder correctamente a las señales IFF, por eso su plan era reenviar las señales a sus estaciones de radio en Angola y que estas se las sirviesen a la escuadrilla sudafricana que estaba sobrevolando aquel país en ese momento. El plan funcionó porque los aviones sudafricanos tenían encendidos sus IFF y, cuando las estaciones de radio angoleñas emitieron las señales remitidas por los MIGs, los sudafricanos comenzaron a emitir sin saberlo las señales de respuesta correctas que por supuesto los angoleños se ocuparon de captar y de reenviarselas a sus MIGs para que estos se las sirviesen en bandeja a las baterías de Namibia. Así, las defensas aéreas sudafricanas en Namibia se tragaron que aquella escuadrilla de MIGs eran aviones amigos, dándole vía libre.

Aquel ataque obligó a replantearse profundamente la tecnología, los protocolos y los procedimientos operativos utilizados para el IFF. Para empezar, a nivel operativo se prohibió a los pilotos que tuviesen sus IFFs encendidos cuando volasen sobre territorio enemigo. A nivel de protocolo la solución fue mucho más difícil de encontrar y desde luego no fue definitiva, ya que lo que se empezó a hacer fue incluir la identificación del avión en la respuesta devuelta por el IFF de manera que se pudiesen cruzar los datos de las torres de control con los de las baterías para obtener divergencias. Otro método que se intentó fue medir los retardos de las respuestas de manera que si alguna llegaba "mas tarde" de lo normal se podía sospechar que el IFF que la había generado estaba más lejos que el avión detectado. Hay que tener en cuenta que ante este ataque concreto el cifrado de las comunicaciones no supone defensa alguna ya que los MIGs no necesitaban romper ni la confidencilidad ni la integridad de las señales IFF, ya que les bastaba con "reflejarlas" hacia sus estaciones de radio. Todas estas respuestas distan mucho de ser perfectas y mucho menos viables en áreas de batalla atestadas de tráfico aéreo de los dos bandos, es por ello que las técnicas de IFF suponen un campo en constante desarrollo para evitar desastres como el provocado por el ataque MIG-in-the-middle.

13 agosto 2008

Seguridad en Facebook

Facebook ha resultado ser uno de los fenómenos más sorprendentes ocurridos en Internet en los últimos años. Con un crecimiento aproximado de hasta 100.000 nuevos usuarios al día se ha convertido en un medio habitual de muchos grupos de amigos para estar al tanto de la vida de sus miembros y mantenerse en contacto. Sin embargo, también presenta importantes desafíos desde el punto de vista de la seguridad al ofrecer una vía para acceder a nuestros datos personales, con el peligro que ello supone. 

Una cosa es que nuestros amigos íntimos accedan a nuestras fotos haciendo el chorra durante las vacaciones y otra que el que acceda sea nuestro jefe. Otro posible riesgo, aparte de la pérdida de privacidad, viene del cruce de nuestros datos personales con el fin de deducir nuestras claves y contraseñas. 

 A pesar de todo lo anterior, la mayor parte de la gente deja su perfil de Facebook accesible y deposita en él datos que jamás pondría en el tablón de anuncios de su urbanización o de su trabajo. A lo largo de este artículo veremos una serie de parámetros con los que reforzar la seguridad de los datos personales que constan en nuestro perfil. 

Todos estos parámetros se configuran dentro del apartado de Privacidad, accesible desde la esquina superior derecha de Facebook. Dentro del apartado de Privacidad, el primer elemento a configurar es el de Perfil, con el se define quién puede ver los distintos elementos de nuestro perfil. Hay que tener en cuenta que Facebook utiliza por defecto el valor "Mis redes y amigos", lo que supone un auténtico agujero de seguridad ya que si pertenecemos a una red nacional (Facebook nos sitúa por defecto en la red de nuestro país) todos los miembros que sean de nuestro país (o de cualquiera de nuestras redes) podrá ver nuestro perfil. Lo más seguro es fijar todos los elementos al valor "Sólo mis amigos". A no ser que se tenga muy claro lo que se está haciendo, lo mejor es no usar el valor "Amigos de mis amigos" ya que implica unas transitividad muy peligrosa en las relaciones de confianza que estamos intentando configurar (cuando hablamos de seguridad, los amigos de mis amigos NO necesariamente tienen que ser mis amigos). 

El siguiente apartado a configurar dentro del de Privacidad es el de Búsqueda, a través del que se configura si queremos que nuestro perfil pueda ser localizado a través de la barra de búsquedas de Facebook. Si no queremos que la gente que conocemos sepa que usamos Facebook lo mejor es que fijemos esta opción a "Sólo mis amigos" y que desmarquemos la opción que se encarga de anunciar nuestro perfil a los motores de búsquedas. El resto de las opciones fijan los medios que tienen los que aún no son nuestros amigos para contactarnos. Hay que tener en cuenta que algunas de estas opciones (el envío de mensajes y el toque) permiten que personas que no sean nuestros amigos puedan ver nuestro perfil durante un tiempo por lo que se recomienda desactivarlos. Si se quiere dejar una foto de perfil que nos identifique, lo mejor es que esta no sea muy comprometedora o que desactivemos la opción de que sea visible a los desconocidos. Por último, lo más recomendable es desactivar la opción de que nuestra lista de amigos sea visible, así evitaremos que se pueda obtener información sobre nosotros de manera indirecta a través de nuestros amigos, por ejemplo a través de las fotografías que tengan de nosotros. 

Lo siguiente a configurar es lo referente a las "Noticias y mini-noticias". En esta sección se define de cuales de nuestras actividades se puede notificar a nuestros amigos cuando acceden a su Facebook. Lo que configuremos aquí depende del nivel de "ruido" que queramos meter a nuestros amigos, pero no supone un riesgo excesivo de seguridad. Por último está el apartado del acceso que le damos a las aplicaciones que instalamos en nuestro Facebook. En general, las aplicaciones podrán acceder a un subconjunto determinado de información de nuestro perfil por lo que se debe tener cuidado con las aplicaciones que se añaden a los perfiles, ya que la información puede compartirse con los creadores de las mismas. Facebook ha publicado términos del servicio para informar a los usuarios sobre los comportamientos aceptables, pero siempre existe el peligro de que alguien no los cumpla, así que lo mejor es instalar sólo lo imprescindible. A pesar de todo, y a modo de advertencia, los parámetros anteriores no son la panacea y hay que reconocer que Facebook sufre agujeros de seguridad fruto de su diseño. Uno de estos agujeros se refiere a las fotos de nuestros álbumes. A pesar de que podemos configurar los álbumes para que sólo sean accesibles por nuestros amigos, lo cierto es que cada una de esas fotos está referenciada con una URL que se puede utilizar para visualizar la foto sin necesidad de estar logueado en Facebook. Así que sólo hace falta un amigo desleal que haga circular la URL de una foto comprometedora para que esta sea visualizable por todo Internet. Así que mucho ojo con lo que colgamos en Facebook. Lo mejor es seguir el criterio de poner sólo aquello que no nos importaría ver colgado del tablón de anuncios de nuestra urbanización u oficina.