Modificar configuración capa TCP

Iniciado por Kaxperday, 17 Septiembre 2016, 15:25 PM

0 Miembros y 1 Visitante están viendo este tema.

Kaxperday

Buenas,

Necesito cambiar el timestamp, el escalado de ventana que se producen en el negociado del handshake al producirse una conexión TCP desde windows, en función de la red que nos encontremos el SO nos da unos valores u otros, ahora bien yo uso un programa que hace redirecciónes TCP y el SO no cuenta con esa latencia por lo que en redes demasiado rápidas el programa no funciona como debería ya que la capa TCP desecha los paquetes que llegan fuera de tiempo que son provenientes de mi fordward TCP (Mi programa servidor da conexiones con timestamp muy bajo y escalado de ventana muy alto en redes rápidas).

¿Que debería de cambiar en la configuración TCP para que no se produjeran problemas de este tipo?, el timestamp sino me equivoco es como un temporizador por lo que puede influir y el escalado de ventana desconozco si puede provocar el error, pero si una red es muy rápida quizás iría más rápido que lo que pueda soportar el programa y se ignoren paquetes o no sé, las posibilidades son muchas, seguiré mirando TCP, pues quizás no sea lo único que haya que tocar para que todo vaya fluido.

Y me gustaría saber si es posible hacerlo para un solo socket (el del servidor) haciendo que las conexiones que produzca ese socket tengan esa configuración TCP pero sin afectar a los demás programas.

Saludos y gracias.

Edito: He comparado con wireshark los SYNs de una red muy rápida y una normal o lenta, y la diferencia es que el de la rápida lleva el en un FLAG de SYN timestamps que son temporizadores TCP, creo que son los responsables de que en redes rápidas se colapse mi sslstrip, así pues he probado con "netsh int tcp set global timestamps=disabled" y claro funciona PERO solo en la comunicación de el equipo donde se ejecuta con el server, es decir las víctimas que se conectan a mi llevan en el SYN el timestamp al ser una red de gran velocidad, lo que quiero es mandarlas un SYN/ACK desactivando el timestamp, y con este comando parece que no se puede, espero que haya otra forma porque sino mal vamos.

En fín necesito que mi servidor de windows al aceptar conexiónes SYN con timestamp reponda con timestamp nulo desactivando así el timestamp durante todo el proceso de conexión TCP, hasta ahora solo he visto desactivarlo como cliente es decir que windows mande SYNs sin timestamp, pero lo que quiero es que al recibirlos como servidor los desactive en el SYN/ACK, y eso no he encontrado como, si alguien sabe estaría bien que lo pusiera, gracias.

Edicion delicatesse: Al final tuve una ingeniosa idea de modificar los SYN entrantes de las víctimas que tuvieran el campo del timestamp y eliminarlo, la respuesta fue satisfactoria la conexión servidor cliente se producía sin timestamps y se podían mandar todos los datos sin problemas de corte de conexión, funcionaba de la manera que el cliente mandaba un SYN con timestamp y yo le mando al server un SYN sin timestamp el server responde sin timestamp y la víctima lo acata, gg.

Eso sí el server tiene un serio problema con la velocidad y con al carga de algunas páginas que va a costar corregirlo.

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