elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Sistemas Operativos
| |-+  Windows (Moderador: Randomize)
| | |-+  Windows NAT equivalente a IPTABLES
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Windows NAT equivalente a IPTABLES  (Leído 5,611 veces)
Kaxperday


Desconectado Desconectado

Mensajes: 702


The man in the Middle


Ver Perfil WWW
Windows NAT equivalente a IPTABLES
« en: 20 Junio 2016, 19:55 pm »

Hola, os copio una duda que posteé en otro foro y que sigue sin respuesta, quizás vosotros me podáis ayudar:

¿Cómo puedo redirigir el tráfico IP entrante proveniente de otros hosts de la red hacia el router mediante el SO y filtrar el tráfico TCP con destino puerto 80 hacia un servidor local HTTP?.

En linux se usa "echo “1” > /proc/sys/net/ipv4/ip_forward" para hacer IP fordward, y en windows el homólogo es poner "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\IPEnableRouter" a 1 para activarlo.

Sin embargo en linux se puede optar por redirigir el tráfico saliente de la máquina (incluido el procedente del fordward) con iptables con: "iptables -t nat -A PREROUTING -p tcp –destination-port 80 -j REDIRECT –to-port 8080" podemos redirigir todo el tráfico IP con destino puerto 80 al 8080 de nuestra misma máquina, ESO quiero hacer con windows.

¿Cómo puedo hacerlo?, he leído acerca de netsh pero no se me ocurre algún comando equivalente, ¿alguna idea?.

Saludos y gracias.


En línea

Cuando el poder económico parasita al político ningún partido ni dictador podrá liberarnos de él. Se reserva el 99% ese poder.
andavid


Desconectado Desconectado

Mensajes: 1.845


Lo que no me mata, me fortalece.


Ver Perfil WWW
Re: Windows NAT equivalente a IPTABLES
« Respuesta #1 en: 22 Junio 2016, 02:31 am »

No es lo mismo, IPTABLES es una herramienta cortafuegos, el de windows primero no tiene cortafuegos decente, y segundo no hay necesidad de modificar el registro si uno usa la ayuda del comando route desde el CMD. Un proxy es la opcion.


En línea


Kaxperday


Desconectado Desconectado

Mensajes: 702


The man in the Middle


Ver Perfil WWW
Re: Windows NAT equivalente a IPTABLES
« Respuesta #2 en: 22 Junio 2016, 19:15 pm »

Ey! Buenas agradezco la respuesta,

He estado indagando con route y netsh como alternativas, y haciendo ingeniería inversa a intercepter-ng (que hace la NAT que estoy buscando).

Expongo mi problema más detalladamente para que me podáis ayudar:

Tengo hosts en la red mandandome paquetes pensando que soy su gateway, yo los hago fordward al router y tienen conexión (mediante código y con winpcap), también puedo hacerles fordward activando el registro etc.. Sin embargo quiero hacer de proxy para el tráfico HTTP es decir no hacer un simple fordward en la capa 1 y pasar a manipular todo el contenido de la capa de aplicación (un proxy de toda vida con sockets).

Yo con el código puedo detectar paquetes entrantes de los hosts de tipo TCP a puerto 80 (HTTP), esos paquetes de tipo IP apuntan a la IP destino y cuando los redirijo a mi proxy para que puedan llegar tengo que cambiar la IP destino por la de mi servidor proxy y actualizar el checksum eso sí es ineficiente puesto que tengo que esperar a que me llegue todo el paquete lo tengo que leer, manipularle el campo IP y volverlo a reenviar a la red igual para que lo reciba mi máquina.

Luego cuando mi proxy recibe el paquete lo quiere responder, para que se produzca conexión debe de haber el 3-Handshake, y aún no lo he conseguido hacer, porque hago el fordward a medias.

Cuando el proxy responde manda su paquete con destino IP del host que solicito el paquete, PERO de nuevo debo de cambiarle el campo checksum por la IP que solicito el host (y ojo aqui que IP pongo pues un host puede tener conexión con varias IPs..),y mandarlo de nuevo a la red, es decir con este método cada paquete es enviado y recibido 2 veces, el doble de tráfico para mi máquina. ¿No se puede hacer el IP fordward de otra manera?, pensaba en algo a nivel de SO, que me lea hasta la capa IP y la modificara y reenviara, no que tenga que hacerlo yo, puesto que yo tengo que trabajar con todo el paquete que ya tiene todas las capas hechas.

Mirando intercepter-ng me fijé si hacía algún route o netsh, y usando "route print" pude ver que no añadia nuevos encaminamientos, respecto al netsh se puede hacer algo parecido con:

Código
  1. BOOLEAN CoreUser::EnablePortFordwarding(std::string ip, std::string sourcePort, std::string destinationPort)
  2. {//Filtrando por distintas versiones de windows.
  3. std::string command;
  4. command = "netsh interface portproxy add v4tov4 listenport=" +
  5. sourcePort + " listenaddress=" + ip + " connectport=" +
  6. destinationPort + " connectaddress=" + ip;
  7. system(command.c_str());
  8. return TRUE;
  9. }
  10.  

Esto por ejemplo hace que el tráfico de una IP que vaya con destino el puerto X vaya también al puerto Y de esa misma IP, útil para redirigir el tráfico al puerto del servidor proxy, sin embargo, no encuentro manera de extrapolarlo para darlo productividad en la NAT de una manera eficiente al menos. Todo parece apuntar a que intercepter-ng hace la NAT mediante código y eso se traduce a código puro y duro con winpcap.

Saludos y gracias, a ver si me podéis dar más ideas ;)


Pero el problema haciendolo con código además de que es ineficiente
« Última modificación: 22 Junio 2016, 19:20 pm por Kaxperday » En línea

Cuando el poder económico parasita al político ningún partido ni dictador podrá liberarnos de él. Se reserva el 99% ese poder.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Equivalente al gpedit.msc en Windows 7
Windows
Hurubnar 4 21,143 Último mensaje 27 Enero 2011, 20:09 pm
por Hurubnar
[cmd] comando equivalente a who (linux) en Windows (SOLUCIONADO)
Windows
moikano→@ 5 15,008 Último mensaje 21 Agosto 2011, 23:37 pm
por moikano→@
equivalente del comando "advfirewall" en windows xp
Windows
zuekamo 2 3,509 Último mensaje 19 Marzo 2013, 09:31 am
por zuekamo
El malware convierte a Android en el equivalente de Windows en el mercado móvil
Noticias
wolfbcn 0 1,440 Último mensaje 26 Agosto 2013, 13:52 pm
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines