Los gobiernos de muchos países restringen el acceso de los ciudadanos a información y servicios en Internet. Combatir esta censura es una tarea importante y compleja. Generalmente, las soluciones simples no pueden presumir de una alta fiabilidad o eficacia a largo plazo. Los métodos más complejos para sortear bloqueos tienen desventajas en términos de usabilidad, bajo rendimiento o no permiten mantener la calidad de uso de Internet a un nivel aceptable.
Un grupo de científicos estadounidenses de la Universidad de Illinois ha desarrollado un nuevo método para sortear bloqueos, que se basa en el uso de tecnología de proxy y en la segmentación de los usuarios según su nivel de confianza para detectar eficazmente a los agentes que trabajan para los censores. Presentamos los puntos clave de este trabajo.
Descripción del enfoque
Los científicos han creado la herramienta Salmon: un sistema de servidores proxy gestionados por voluntarios de países sin restricciones en el uso de Internet. Para proteger estos servidores de los bloqueos de los censores, el sistema utiliza un algoritmo especial que asigna un nivel de confianza a los usuarios.
El método implica la exposición de posibles agentes de censura que se presentan como usuarios comunes para conocer la dirección IP del servidor proxy y bloquearlo. Además, se lleva a cabo la mediante la exigencia de proporcionar, al registrarse en el sistema, un enlace a una cuenta activa en redes sociales o recibir una recomendación de un usuario con un alto nivel de confianza.
¿Cómo funciona?
Se presume que el censor es un organismo controlado por el estado que tiene la capacidad de tomar el control de cualquier enrutador dentro del país. También se supone que la tarea del censor es bloquear el acceso a ciertos recursos, y no identificar usuarios para futuros arrestos. El sistema no puede evitar este tipo de situaciones, ya que el estado tiene múltiples formas de descubrir qué servicios utilizan los ciudadanos. Una de ellas es el uso de servidores honeypot para interceptar comunicaciones.
También se supone que el estado posee recursos significativos, incluidos los humanos. El censor puede resolver tareas que requieren cientos o miles de empleados a tiempo completo.
Algunos puntos básicos adicionales:
- La tarea del sistema es permitir eludir bloqueos (es decir, proporcionar la dirección IP de un servidor proxy) a todos los usuarios que viven en regiones con censura en línea.
- Los agentes/empleados de las entidades censores de internet pueden intentar conectarse al sistema haciéndose pasar por usuarios ordinarios.
- El censor puede bloquear cualquier servidor proxy cuyo dirección le sea conocida.
- Los organizadores del sistema Salmon, en tal caso, comprenden que el censor de alguna manera ha descubierto la dirección del servidor.
Todo esto nos lleva a la descripción de tres componentes clave del sistema de elusión de bloqueos.
- El sistema calcula la probabilidad de que un usuario sea un agente de organizaciones censores. A los usuarios que se consideran tales agentes con alta probabilidad se les prohíbe el acceso.
- Cada usuario tiene un nivel de confianza que debe ganarse. Los servidores proxy con mayor rendimiento son designados para usuarios con los niveles de confianza más altos. Además, esto permite separar a los usuarios confiables y probados en el tiempo de los novatos, ya que es entre estos últimos donde es más probable que se encuentren los agentes censores.
- Los usuarios con un alto nivel de confianza pueden invitar a nuevos usuarios al sistema. Al final, se genera un gráfico social de usuarios confiables.
Todo es lógico: el censor normalmente necesita bloquear un servidor proxy de inmediato, no esperará mucho tiempo para intentar "mejorar" las cuentas de sus agentes en el sistema. Además, también está claro que los nuevos usuarios pueden recibir diferentes niveles de confianza desde el principio: por ejemplo, amigos y familiares de los creadores del proyecto tienen menos probabilidades de colaborar con estados censores.
Niveles de confianza: detalles de implementación
El nivel de confianza no solo existe para los usuarios, sino también para los servidores proxy. El sistema asigna a un usuario un servidor con el mismo nivel de confianza. A su vez, el nivel de confianza de los usuarios puede aumentar o disminuir, mientras que el de los servidores solo crece.
Cada vez que los censores bloquean un servidor con el que ha trabajado un usuario determinado, su nivel de confianza disminuye. La confianza aumenta si el servidor no es bloqueado durante un tiempo prolongado; con cada nuevo nivel, el tiempo requerido se duplica: para pasar del nivel n al n+1, se necesitan 2n+1 días de funcionamiento ininterrumpido del servidor proxy. El camino hasta el máximo, el sexto, nivel de confianza dura más de dos meses.

La necesidad de esperar tanto tiempo para averiguar las direcciones de los proxies de mayor calidad es una medida extremadamente eficaz contra los censores.
El nivel de confianza de un servidor es el nivel mínimo de confianza otorgado por sus usuarios. Por ejemplo, si un nuevo servidor en el sistema se asigna a usuarios con una calificación mínima de 2, entonces el proxy también obtendrá esa calificación. Si luego alguien con una calificación de 3 utiliza el servidor, pero todavía hay usuarios de nivel 2, la calificación del servidor será 2. Sin embargo, si todos los usuarios del servidor elevan su nivel, también lo hará el proxy. A su vez, un servidor no puede perder su nivel de confianza; por el contrario, si es bloqueado, los usuarios son penalizados.
Los usuarios con un alto nivel de confianza reciben recompensas de dos tipos. En primer lugar, los servidores no son iguales. Existen requisitos mínimos de ancho de banda (100 Kbit/s), pero el propietario voluntario del servidor puede ofrecer más; no hay límite superior. El sistema Salmon selecciona los servidores más potentes para los usuarios con la calificación más alta.
Además, los usuarios con un alto nivel de confianza están mejor aislados de los ataques de los censores, ya que el censor necesita esperar meses para averiguar la dirección del proxy. Como resultado, la probabilidad de bloqueo de servidores para personas con alto riesgo es mucho menor que para aquellos con baja confianza.
Para conectar a la mejor proxy a tantos usuarios merecedores como sea posible, los creadores de Salmon desarrollaron un sistema de recomendaciones. Los usuarios con una alta calificación (L) pueden invitar a sus amigos a unirse a la plataforma. Las personas invitadas reciben una calificación de L-1.
El sistema de recomendación funciona por olas. La primera ola de usuarios invitados solo puede invitar a sus amigos después de aproximadamente cuatro meses. Los usuarios de la segunda ola y las posteriores deben esperar 2 meses.
Módulos del sistema
El sistema consta de tres componentes:
- cliente Salmon para Windows;
- programa demonio del servidor, que es instalado por voluntarios (versiones para Windows y Linux);
- Servidor del directorio central que almacena la base de datos de todos los servidores proxy y se encarga de distribuir las direcciones IP entre los usuarios.

Interfaz de la aplicación cliente del sistema
Para utilizar el sistema, una persona debe crear una cuenta utilizando un perfil de Facebook.
Conclusión
Hasta el momento, el método Salmon no ha ganado amplia adopción, solo se conocen pequeños proyectos piloto para usuarios en Irán y China. A pesar de ser un proyecto interesante, no asegura totalmente la anonimidad, ni la protección de los voluntarios, y los propios creadores reconocen que es vulnerable a ataques con servicios honeypot. Sin embargo, la implementación de un sistema con niveles de confianza se presenta como un experimento interesante que podría tener continuidad.
¡Esto es todo por hoy, gracias por su atención!
Enlaces y materiales útiles de :
Fuente: habr.com
