Jirafa egoísta, un regalo de la NSA destinado a los usuarios de TOR

Noticias de abajo, 2 de enero de 2012

En una anterior entrada se explicaba el funcionamiento de una de las herramientas disponibles en Internet para facilitar las comunicaciones anónimas: http://noticiasdeabajo.wordpress.com/2012/01/06/tor-el-desvio-una-tecnologia-que-parecia-desechada-por-los-gobiernos/

El funcionamiento de la red Tor

En general, la criptografía por sí sola no es suficiente para garantizar el anonimato de los usuarios, ya que siempre es posible identificar el origen y el destino de los paquetes en Internet. Con base en el mecanismo de enrutamiento Onion (literalmente, enrutamiento cebolla), la red Tor se ha construido para evitar que nadie sepa el origen y destino de los paquetes.

El principio de enrutamiento Onion es un mecanismo por el cual se codifica la información varias veces con diferentes claves de cifrado, y luego los paquetes son enviados a múltiples nodos de la red. Los datos están protegidos por varias capas de cifrado, que son eliminadas de forma sucesiva en cada nodo, hasta llegar a su destino final, en el que podrá leerse el mensaje de nuevo.

Para garantizar la comunicación anónima, los datos transferidos a través de la red Tor tienen que pasar por lo menos por tres routers diferentes. El origen de las comunicaciones se conoce como routers de entrada y el destino de las comunicaciones se conoce cono routers de salida. Los demás nodos de la red son routers intermedios que no conocen el origen y destino de los paquetes que transfieren.

Los routers de entrada son los nodos a los que se conecta el usuario para acceder a la red Tor. Desde la dirección IP de los usuarios, por necesidad visible, y punto débil de la red, los usuarios deben asegurarse de que no se conectan con malas intenciones. Tor ha introducido una serie de directorios oficiales para proporcionar a los usuarios una lista de nodos de Tor que certifiquen que el usuario puede confiar en ellos. Cuando un usuario desea comunicar o recibir información de forma anónima, el software de Tor construye un camino al azar con tres nodos diferentes que se encargará de transferir los paquetes desde la dirección de origen hasta su destino final, que sólo es conocido por los routers de salida”.

Pues bien, ahora sabemos que la NSA (Agencia Nacional de Seguridad) estadounidense dispone de un programa, cuyo nombre clave es EgotisticalGiraffe, para interceptar las comunicaciones realizadas mediante la herramienta TOR ( The Onion Router). Las siguientes diapositivas explican el funcionamiento de los programas de control de la NSA, aprovechando distintas vulnerabilidades del software instalado en sus ordenadores.

Diapositiva 1.- Pelando las sucesivas capas de TOR con EgotisticalGiraffe

egotistical_giraffe1Diapositiva 2.- Clasificación del Informe

egotistical_giraffe2Diapositiva 3.- Descripción general:

  • ¿Qué es TOR?

  • El problema de TOR

  • Cabra egoísta

  • Jirafa egoísta

  • Desarrollo futuro

egotistical_giraffe3Diapositiva 4.-

  • The Onion Router (TOR)

  • Habilita el anonimato en Internet

  • Privacidad general

  • Imposibilidad de reconocimiento

  • Eludir las políticas restrictivas de Internet en algunos países

  • Miles de usuarios

  • Disidentes (Irán, China, etc)

  • Terroristas

  • También otros objetivos

egotistical_giraffe4Diapositiva 5 y 6.- ¿Qué es TOR?

  • El cliente a través de la red TOR instalada: entrada, retransmisión, salida, sitio de Internet

egotistical_giraffe5egotistical_giraffe6Diapositiva 7.- ¿Qués es TOR?

  • El paquete TOR instalado en el navegador

  • Disponible en Firefox 10 ESR (tbb-firefox.exe)

  • Vidalia

  • Polipo

  • TorButton

  • TOR

  • Para torpes

egotistical_giraffe7Diapositiva 8: El problema de TOR

  • Identificación digital de TOR

  • Aprovechar las vulnerabilidades de TOR

  • Retrollamada (callback) a TOR (Es una linea de código en un programa en la que se llama a un subprograma para que corra y, generalmente, obtener algo de él).

egotistical_giraffe8Diapositiva 9: Identificación digital de TOR

Windows XP, Firefox 10.0.5 ESR; Ubuntu 11.10, Firefox 10.0.7 ESR; Mac OS X 64-bit, Firefox 10.0.4 ESR; Windows 7 64-bit, Firefox 10.0.10 ESR.

  • Windows 7 32-bit

  • Firefox/10.0

egotistical_giraffe10Diapositiva 10: Identificación digital de TOR

  • Elaboración en el momento del lanzamiento de Firefox. de una identificación numérica en la que aparezcan la fecha y la hora

egotistical_giraffe11Diapositiva 11: Identificación digital de TOR

  • TorButton cuida de que los usuarios de TOR no se distingan de otros usuarios de TOR

  • Sólo se preocupa los usuarios de TOR frente a los que no usan TOR

  • Gracias a TorButton es fácil.

egotistical_giraffe12Diapositiva 12: El problema de TOR

egotistical_giraffe13Diapositiva 13: Aprovechar las vulnerabilidades de TOR

  • tbb-firefox en los barebones (ordenadores semiensamblados):

  • Flash es inadmisible

  • Instalada la extensión NoScript… pero no está activada por defecto

  • TOR recomienda de forma explícita que no se usen otros complementos o extensiones salvo TorButton y NoScript

  • Se necesita un Firefox nativo para aprovechar sus vulnerabilidades

egotistical_giraffe14Diapositiva 14: Aprovechar las vulnerabilidades de TOR

  • ERRONEOUSINGENUITY

  • Comúnmente conocido como ERIN

  • Primer Firefox nativo en mucho tiempo del que pueden aprovechar vulnerabilidades

  • Trabaja bien sólo entre 13.0 a 16.0.2

  • EGOTISTICALGOAT

  • Comúnmente conocido como EGGO

  • Configurado para 11.0 a 16.0.2… pero la vulnerabilidad también existe en 10.0

egotistical_giraffe15Diapositiva 15: EGOTISTICALGOAT

  • “Type confusion”, una vulnerabilidad en E4X (una extensión del lenguaje de programación que añade la implementación de XML nativo a JavaScript )

  • Activar el acceso de escritura/lectura arbitraria en los procesos de la memoria

  • Ejecución remota de código a través del módulo Ctypes.

egotistical_giraffe16Diapositiva 16: Aprovechar las vulnerabilidades de TOR

  • No se puede distinguir el Sistema Operativo hasta que está en el ordenador

– Eso está bien

  • No se puede distinguir la versión de Firefox hasta que está en el ordenador

  • Eso también está bien

  • No se puede distinguir un Sistema Operativo de 64-bit de otro de 32-bit hasta que no está en el ordenador

  • Aquí dejo que usted lo considere

egotistical_giraffe17Diapositiva 17: El problema de TOR

egotistical_giraffe18

Diapositiva 18: Retrollamadas (callbacks) a TOR

  • Se han realizado pruebas en Firefox 10 ESR

  • Pruebas en tbb-firefox no se han hecho

  • ejecución lograda

  • No se recibe FINKDIFFERENT

  • Derrotado por Prefilter Hash

  • Solicita EGGI: Hash ( tor_exit_ip || session_id )

  • Solicita FIDI: Hash ( target_ip || session_id )

egotistical_giraffe19Diapositiva 19: Retrollamada a TOR

  • Resolución fácil

  • Desactivar Prefilter hashing

  • FUNNELOUT

  • En lo que concierne a OPSEC

  • Preparación del ataque

  • PSPs

  • actores adversarios

  • ¿Ha merecido la pena?

egotistical_giraffe20Diapositiva 20: El problema de TOR

egotistical_giraffe21

Procedencia de las diapositivas: http://www.slideshare.net/jonbonachon/peeling-back-the-layers-of-tor-with-egotisticalgiraffe