El protocolo Obfs4…

Marvin G. Soto
4 min readSep 29, 2018

--

Imagen tomada de Internet

Los gobiernos y sus agencias siempre han espiado a sus pueblos. Desde antes de la llegada de Internet, el espionaje y la vigilancia han sido empleados como formas de control. La conciencia llegó a las masas cuando Edward Snowden, un ex empleado de la NSA, explicó que toda nuestra actividad en Internet fue espiada por la Agencia Nacional de Seguridad del Gobierno de los Estados Unidos (NSA). Aunque esto también se aplica a las personas que no viven en Estados Unidos, dado que la mayoría de los servidores de Internet están ubicados en los Estados Unidos.

En la búsqueda del anonimato y la protección a la privacidad, era necesario desarrollar una solución y entonces surgió el proyecto TOR.

TOR usa el protocolo Onion, que básicamente encripta su tráfico, creando múltiples capas de cifrado (analogía con la cebolla), luego envía el tráfico a diferentes nodos (routers de Onion) y descifra cada capa en un solo nodo que muestra solo donde el tráfico debe ser enviado a continuación.

La razón por la que TOR es tan seguro, es porque no se revela la información, sino en un solo nodo, es decir; en el nodo de salida que es el último nodo en la línea y allí el tráfico llega a su destino final.

Se ha popularizado que algunos gobiernos restrinjan el acceso a la red TOR. Para ello, están utilizando inspectores de paquetes que analizan los datos de la conexión a Internet y si detectan que está utilizando el protocolo Onion, restringen esa conexión. Algunos de los países que han bloqueado o están intentando bloquear TOR son: China, Arabia Saudita, Irán y Francia.

El fin último de estos gobiernos es prohibir el anonimato en Internet. Para las personas que viven en esos países, la única forma de usar TOR y sus beneficios es de alguna manera, “enmascarar” u “ofuscar” el uso de TOR.

De forma casi natural, los países bloqueados pueden acceder a TOR mediante la creación de túneles de red (VPN). El asunto con este enfoque es que la conexión entre el usuario y el país al que el usuario intenta conectarse no está cifrada, lo que significa que el ISP, el gobierno u otros, pueden inspeccionar los datos. Es decir; con tuneles los datos siguen visibles, porque no se encriptan, lo que se encripta es el túnel. De manera que en cada salto entre nodos el tráfico es o puede ser inspeccionado.

Aquí es donde aparece la ofuscación. Lo cierto es que existen muchas técnicas de ofuscación, no obstante la más segura es obsf4.

Obsf4 confunde o encripta los datos entre el usuario y el nodo TOR, por lo que es imposible para el “hombre en el medio” (MITM) analizar los paquetes y detectar que se utiliza TOR. Obsf4 es una capa de ofuscación de protocolo, para protocolos TCP. Su propósito es evitar que un tercero le diga qué protocolo se está utilizando según el contenido del mensaje.

A diferencia de obfs3 (version previa), obfs4 intenta proporcionar autenticación e integridad de los datos, mediante una capa de ofuscación para un protocolo autenticado existente, como Shell seguro (SSH) o Seguridad en la Capa de Transporte (TLS). Al igual que obfs3, el protocolo Obfs4 tiene dos fases: en la primera fase ambas partes establecen claves y en la segunda, las partes intercambian tráfico supercifrado.

Los protocolos previos (ScrambleSuit y obfs3), utilizan UniformDH para el handshake criptográfico el cual tiene graves implicaciones de rendimiento debido a que la exponenciación modular, es una operación costosa.

Además, el intercambio de claves no está autenticado, por lo que los atacantes activos pueden montar un MITM, asumiendo que conocen el secreto compartido entre el cliente y el bridge.

Es decir; obfs4 intenta abordar estas deficiencias mediante el uso de un mecanismo de intercambio de claves autenticado basado en un “handshake” ntor del proyecto Tor.

Además, obfs4 ofrece protección contra máquinas pasivas de inspección profunda de paquetes que esperan el protocolo obfs4. Dichas máquinas no deberían poder verificar la existencia del protocolo obfs4 sin obtener el ID del nodo y la clave pública de identidad del servidor. También ofrece protección contra los atacantes activos que intentan sondear los servidores obfs4. Dichas máquinas no deberían poder verificar la existencia de un servidor obfs4 sin obtener el ID de nodo y la clave pública de identidad del servidor. Ofrece adicionalmente, protección contra atacantes activos que han obtenido el ID del nodo y la clave pública de identidad del servidor, lo que genera que dichas máquinas no puedan suplantar al servidor sin obtener la clave privada de identidad del servidor.

Para seguir sumando, obfs4 ofrece protección contra algunas huellas digitales de protocolos sin contenido, específicamente respecto al tamaño del paquete y opcionalmente, de la sincronización de paquetes; proporcionando integridad y confidencialidad al tráfico subyacente y autenticación al servidor.

--

--

Marvin G. Soto
Marvin G. Soto

Written by Marvin G. Soto

Pensador, innovador, luchador, enamorado de su profesión, apasionado por las letras… de dificil renunciar y lejano a rendirse…

No responses yet