Experimento: Cómo ocultar el uso de Tor para eludir bloqueos

Experimento: Cómo ocultar el uso de Tor para eludir bloqueos

La censura en Internet se está convirtiendo en un problema cada vez más importante en todo el mundo. Esto lleva a una intensificación de la "carrera armamentista": organismos estatales y empresas privadas en diferentes países buscan bloquear diversos contenidos y luchan contra los métodos para eludir dichas restricciones, mientras que desarrolladores e investigadores intentan crear herramientas efectivas para combatir la censura.

Investigadores de las universidades Carnegie Mellon, de Stanford y de SRI International llevaron a cabo un experimento, en el que desarrollaron un servicio especial para ocultar el uso de Tor, una de las herramientas más populares para eludir bloqueos. Les presentamos un relato sobre el trabajo realizado por los investigadores.

Tor contra bloqueos

Tor garantiza la anonimidad de los usuarios mediante el uso de relés especiales, es decir, servidores intermedios entre el usuario y el sitio que desea visitar. Normalmente, hay varios relés entre el usuario y el sitio, cada uno de los cuales puede descifrar solo una pequeña cantidad de datos en el paquete enviado, suficiente precisamente para conocer el siguiente punto en la cadena y enviarlo allí. Como resultado, incluso si se añade un relé controlado por criminales o censores a la cadena, no podrán conocer ni el destinatario ni el destino del tráfico.

Como herramienta de lucha contra la censura, Tor opera de manera efectiva; sin embargo, los censores todavía tienen la capacidad de bloquearlo completamente. Irán y China han llevado a cabo campañas exitosas de bloqueo. Han logrado identificar el tráfico de Tor mediante el escaneo de los handshakes TLS y otras características distintivas de Tor.

Posteriormente, los desarrolladores lograron adaptar el sistema para eludir bloqueos. Los censores respondieron bloqueando conexiones HTTPS a numerosos sitios, incluido Tor. Los desarrolladores del proyecto crearon un programa llamado obfsproxy, que cifra adicionalmente el tráfico. Esta competencia continúa de manera constante.

Datos iniciales del experimento

Los investigadores decidieron desarrollar una herramienta que pudiera ocultar el uso de Tor, para hacer posible su uso incluso en regiones donde el sistema está completamente bloqueado.

  • Como hipótesis iniciales, los investigadores propusieron lo siguiente:
  • El censor controla un segmento interno aislado de la red que se conecta a internet sin censura.
  • Las autoridades encargadas de los bloqueos controlan toda la infraestructura de red dentro del segmento censurado, pero no el software en las computadoras de los usuarios finales.
  • El censor busca evitar que los usuarios accedan a materiales que considera indeseables, asumiendo que todo este material se encuentra en servidores fuera del segmento de red controlado.
  • Los routers en el perímetro de este segmento analizan los datos no cifrados de todos los paquetes para bloquear contenido no deseado y evitar que paquetes correspondientes entren en el perímetro.
  • Todos los nodos de Tor están ubicados fuera del perímetro.

¿Cómo funciona?

Para ocultar el uso de Tor, los investigadores crearon la herramienta StegoTorus. Su principal objetivo es mejorar las capacidades de Tor para resistir el análisis automatizado de protocolos. La herramienta se coloca entre el cliente y el primer nodo en la cadena, utiliza su propio protocolo de cifrado y módulos de esteganografía para dificultar la identificación del tráfico de Tor.

En el primer paso, entra en funcionamiento un módulo llamado chopper, que transforma el tráfico en una secuencia de bloques de diferente longitud, que se envían desordenadamente.

Experimento: Cómo ocultar el uso de Tor para eludir bloqueos

Los datos se cifran utilizando AES en modo GCM. El encabezado del bloque contiene un número de secuencia de 32 bits, dos campos de longitud (d y p) que indican el volumen de datos, un campo especial F y un campo de comprobación de 56 bits, cuyo valor debe ser cero. La longitud mínima del bloque es de 32 bytes y la máxima de 217+32 bytes. La longitud es controlada por los módulos de esteganografía.

Al establecer una conexión, los primeros bytes de información son un mensaje de handshake, con el que el servidor entiende si está tratando con una conexión existente o nueva. Si la conexión pertenece a un nuevo enlace, el servidor responde con un handshake, y cada parte de la comunicación extrae de él las claves de sesión. Además, se ha implementado un mecanismo de rekeying en el sistema, que es similar a la extracción de claves de sesión, pero en este caso se utilizan bloques en lugar de mensajes de handshake. Este mecanismo cambia el número de secuencia, pero no altera el ID del enlace.

Después de que ambas partes de la comunicación de datos hayan enviado y recibido el bloque fin, el enlace se cierra. Para protegerse contra ataques de repetición o retrasos en la entrega de bloques, ambas partes deben recordar el ID durante un tiempo después del cierre.

El módulo de esteganografía integrado oculta el tráfico de Tor dentro del protocolo p2p, de manera similar a cómo funciona Skype en las comunicaciones VoIP seguras. El módulo de HTTP esteganografía simula tráfico HTTP sin cifrar. El sistema se mimetiza como un usuario real con un navegador común.

Resiliencia a ataques

Para verificar en qué medida el método propuesto mejora la eficiencia de Tor, los investigadores desarrollaron ataques de dos tipos.

El primero consiste en extraer flujos de Tor de flujos TCP basándose en las características fundamentales del protocolo Tor; este método fue utilizado para bloquear el sistema por parte del gobierno de China. El segundo ataque implica el estudio de flujos de Tor ya conocidos para extraer información sobre qué sitios visitó el usuario.

Los investigadores confirmaron la efectividad del ataque de primer tipo contra "Tor vanilla"; para ello, recolectaron huellas de visitas a sitios del top 10 de Alexa.com veinte veces a través de Tor normal, obfsproxy y StegoTorus con el módulo de HTTP esteganografía. Como referencia para la comparación, se utilizó el conjunto de datos CAIDA con datos del puerto 80, casi con certeza todas estas son conexiones HTTP.

El experimento mostró que es bastante fácil calcular el típico Tor. El protocolo Tor es demasiado específico y tiene una serie de características que se pueden calcular fácilmente; por ejemplo, al usarlo, las conexiones TCP duran entre 20 y 30 segundos. La herramienta Obfsproxy tampoco oculta de manera efectiva estos puntos evidentes. StegoTorus, por su parte, genera tráfico que se asemeja mucho más a la referencia de CAIDA.

Experimento: Cómo ocultar el uso de Tor para eludir bloqueos

En caso de un ataque que implique el cálculo de los sitios visitados, los investigadores compararon la probabilidad de tal revelación de datos en el caso del 'Tor vainilla' y su solución StegoTorus. Se utilizó una escala para la evaluación. AUC (Área Bajo la Curva). Según los resultados del análisis, en el caso del Tor habitual sin protección adicional, la probabilidad de revelación de datos sobre los sitios visitados es significativamente más alta.

Experimento: Cómo ocultar el uso de Tor para eludir bloqueos

Conclusión

La historia de la confrontación entre los gobiernos que imponen censura en internet y los desarrolladores de sistemas de elusión de bloqueos indica que solo pueden ser efectivas las medidas de protección complejas. El uso de una sola herramienta no puede garantizar el acceso a los datos necesarios ni que la información sobre la elusión de bloqueos no se haga conocida por los censores.

Por lo tanto, al utilizar cualquier herramienta para garantizar la privacidad y el acceso al contenido, es importante recordar que no hay soluciones ideales y, siempre que sea posible, combinar diferentes métodos para lograr la mayor efectividad.

Enlaces y materiales útiles de Infatica:

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster