Udp2raw-tunnel: Una herramienta para evadir firewalls que bloquean tráfico UDP

Escrito por Sergio De Luz

La herramienta gratuita Udp2raw-tunnel nos va a permitir evadir cortafuegos que bloquean el tráfico UDP. Gracias a esta herramienta, cualquier tráfico UDP generado por diferentes equipos, podremos enviarlo a un destino de forma cifrada y ofuscada en cabeceras ICMP y TCP, de esta forma, esta información pasará sin problemas por los firewalls que bloquean el tráfico UDP.

Principales características de Udp2raw-tunnel

Esta herramienta nos va a permitir enviar tráfico UDP de un origen a un destino aunque el firewall bloquee tráfico UDP. Esto es gracias a que se enviará el contenido en bruto a través de las cabeceras del protocolo ICMP y TCP, de esta manera, el firewall no detectará que realmente el tráfico que está pasando es UDP.

Podremos enviar y recibir paquetes UDP dentro de las cabeceras de protocolos como ICMP, TCP e incluso UDP. Esta herramienta permite tunelizar toda la información a través de estos protocolos, de esta forma, evadiremos firewalls y políticas QoS de tráfico UDP Si utilizamos el protocolo UDP para tunelizar esta información, la herramienta nos proporcionará características que UDP no posee: cifrado, mecanismo anti-replay y estado de conexión (como TCP).

El esquema básico de esta herramienta es el siguiente:

 

Si vamos a utilizar el protocolo TCP, udp2raw simula el típico 3-way handshake de TCP para establecer la conexión, simulando el SEQ y ACK_SEQ mientras se transfieren datos. También es capaz de simular otras opciones de TCP como el MSS, sackOK, wscale etc. Los firewalls considerarán esta conexión como una conexión normal de TCP, pero por debajo tenemos tráfico UDP sin control de congestión ni retransmisión.

Esta herramienta como hemos dicho anteriormente, incorpora características de cifrado, podremos cifrar todos los datos con AES-128-CBC, y también podremos comprobar la integridad de los datos utilizando MD5 o CRC32. Aunque actualmente hay protocolos más seguros, estos son los que hay disponibles actualmente en la herramienta. Otra característica interesante es que es capaz de defenderse de ataques de repetición (anti-replay), similar a la que se usa en OpenVPN y IPsec.

udp2raw-tunnel es capaz de detectar y recuperar la conexión en caso de que haya demasiados errores. Los fallos de la conexión se detectan mediante un “heartbeat” que se envía, si se agota el tiempo el cliente cambiará automáticamente el número de puerto y volverá a conectarse. Si la reconexión tiene éxito, se recuperará la conexión anterior y todo el tráfico UDP existente será válido, no es necesario que empiece la comunicación desde el principio. Un claro ejemplo de esta característica tan útil, es que podremos utilizar udp2raw con OpenVPN, de esta forma, OpenVPN no perderá la conexión después de volver a conectarse (no hará falta volver a iniciar todo el túnel OpenVPN).

Si estás interesado en pasar cualquier tipo de tráfico (TCP, ICMP etc.) a través de este túnel UDP, podrás hacerlo sin problemas combinando udp2raw y OpenVPN. De esta forma, podremos pasar cualquier tipo de tráfico de un origen a un destino, evadiendo los firewalls que haya en medio:

Otras características de udp2raw-tunnel es que incorpora multiplexación, un cliente puede gestionar varias conexiones UDP, pero todas ellas irán por la misma conexión en bruto. Permite múltiples clientes a un mismo servidor udp2raw, también soporta NAT y es muy fácil de compilar, instalar y poner en marcha.

Compatibilidad con diferentes sistemas operativos

Esta herramienta está disponible para usarse en cualquier equipo basado en Linux, incluyendo todos los sistemas operativos, sistemas Android, e incluso se puede instalar en routers con OpenWRT o en cualquier Raspberry Pi que use un sistema operativo basado en Linux. El único requisito es tener acceso root para poder ejecutarla.

Si tienes un ordenador Windows o MacOS, el equipo de desarrollo ha creado una imagen virtual de la herramienta ya preinstalada, podremos cargarla con VMware o Virtual Box. Esta imagen virtual ya está preparada para funcionar inmediatamente, lo único que hay que tener en cuenta es configurar la red de la VM como bridge o puente.

Os recomendamos visitar el proyecto de udp2raw-tunnel en GitHub, aquí encontraréis todas las características y también cómo instalarlo y utilizarlo en nuestro sistema.

Últimos análisis

Valoración RZ
8
Valoración RZ
8
Valoración RZ
8
Valoración RZ
10
Valoración RZ
8
Valoración RZ
9
Valoración RZ
9
Valoración RZ
10