XFLTReaT un framework modular para tunneling

Hasta ahora, seg�n el protocolo permitido se ten�a que instalar una u otra herramienta, a elegir dentro de un abanico de posibilidades cada vez m�s amplio. De hecho, en el blog ya hemos un buen n�mero de ellas, para realizar t�neles TCP (sobre HTTP) con regeorg, tunna, ABPTTS, Chisel, tcp-over-websockets, UDP con OpenVPN, DNS con dns2tcp o Iodine (DNSCat y Ozymandns son otros) e ICMP con icmp-tunnel (Hans, Ping Tunnel, ICMPTx son tambi�n otras opciones).
Pero Balazs Bucsay (@xoreipeip), un hacker h�ngaro de NCC Group, nos plantea XFLTReaT, un framework para hacer tunneling que precisamente elimina la necesidad de tener que usar distintas herramientas seg�n cada situaci�n. XFLTReaT est� escrito en Python 2.7 y es de c�digo abierto, pero sobretodo su principal caracter�stica es que es modular, tanto para t�neles como para cifrado y autenticaci�n. Y pretende ser lo m�s plug & play posible: copiar m�dulos a /modules, ficheros de soporte en /support, editar config y ejecutar.
XFLTReaT nos da esa versatilidad que, como decimos, permite adaptarnos a situaciones diferentes: si s�lo se permite tr�fico web configuraremos el servidor en el puerto TCP/80, si s�lo se permite ICMP del tipo 0 (Echo reply) copiaremos el m�dulo ICMP y cambiaremos el tipo de 8 a 0, si s�lo se permite tr�fico HTTP con una cabecera especial podremos configurarlo en el source, si se permite HTTPS pero solo con TLSv1.2 podremos forzarlo e incluso podremos ex filtrar datos mediante mensajes de texto/SMS.

M�dulos disponibles
- TCP
- UDP
- ICMP
- SOCKS v4, 4a, 5
- HTTP CONNECT
- DNS (A/CNAME, PRIVATE, NULL) - por el momento s�lo PoC
Actualmente hay dos ramas diferentes del framework. La rama o branch principal es una versi�n estable (v0.1) sin el m�dulo DNS. La otra rama se llama next-version y tiene la versi�n m�s reciente (v0.2), que incluye soporte DNS para algunos registros (A/CNAME, PRIVATE, NULL). Esta rama no ha sido probada a fondo a�n.
Para tener una versi�n estable (sin DNS), utiliza:
# git clone https://github.com/earthquake/xfltreat/
Para obtener el soporte DNS de la rama next-version (que no se ha probado a fondo, tenlo en cuenta):
# git clone https://github.com/earthquake/xfltreat/
# cd xfltreat
# git checkout -b next-version v0.2
Para configurar DNS revisa DNS_notes.md.
Instalaci�n
# git clone https://github.com/earthquake/xfltreat/
# pip install -r requirements.txt
edita xfltreat.conf
# server side: python xfltreat.py
# client side: python xfltreat.py --client
Preparaci�n del servidor
Activa el IP forwarding como root:
# sysctl -w net.ipv4.ip_forward=1
o
# echo 1 > /proc/sys/net/ipv4/ip_forward
Realiza el NAT mediante iptables:
# iptables -t nat -A POSTROUTING -s 10.9.0.0/24 -o eth0 -j MASQUERADE
Proyecto:
https://github.com/earthquake/XFLTReaT
http://xfltreat.info
download file now
alternative link download