elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
08 Octubre 2008, 13:20  



+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking Avanzado
| | |-+  Hacking Linux/Unix (Moderador: berz3k)
| | | |-+  pregunta sobre el protocolo.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Imprimir
Autor Tema: pregunta sobre el protocolo.  (Leído 2058 veces)
neuromante

Desconectado Desconectado

Mensajes: 63


Ver Perfil
pregunta sobre el protocolo.
« en: 15 Mayo 2005, 20:43 »

Hola lista, no se si este sea el lugar mas idioneo
para preguntar esto pero andube preguntando en otros
lugares y no obtube respuesta.

Trato de hacer una prueba con un generador de
paquetes, mas precisamente el sendip para linux.
Lo que estoy intentando haceres establecer una
conexión simplemente generando paquetes.
Para saber los paquetes que debo generar abro un
servidor en una maquina linux dentro de mi red local
con el nc.
Despues me conecto desde otra con un cliente y observo
los paquetes con tcpdump.
Creo los paquetes de la misma forma que lo hace el
programa, calculando la secuencia en el segundo
paquete(ack) para reconocer el syn/ack que me envia el
servidor.
Tambien incluyo las mismas opciones tcp que veo en la
conexión generada con netcat, dentro de estas los
timestamp los genero de acuerdo a la respuesta syn/ack
generada por el servidor.

A menos que me este olvidando de algo esto deberia
funcionar pero por desgracia no es asi.
Porfavor si alguien tiene alguna idea se lo
agradeceria mucho ya que me esta quemando un poco la
cabeza y realmente me interesa saber si esto se puede
hacer o de lo contrario quiero demostrar el porque no
se puede.

Saludos para todos y muchas gracias!
En línea
Hertz Cool

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #1 en: 15 Mayo 2005, 21:12 »

No conozco ese packet generator, pero supongo que será similar a todos.

Por lo que te he entendido, quieres establecer una conexión mandando paquetes...me parece que no va a ser posible.

Cuando tu inyectas un paquete (con flag SYN activo)  y le llega al receptor, éste contesta con un SYN+ACK...pero cuando llega al equipo con el packet generator, como este no mando ningún SYN (fuieste tú de estranjis) contesta con un RST y finaliza la conexión.

Para poder simular el establecimiento de conexión tendrás que programar con sockets (SOCK_STREAM), como hará netcat.

Saludos
En línea
neuromante

Desconectado Desconectado

Mensajes: 63


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #2 en: 16 Mayo 2005, 01:53 »

Hertz, gracias por tu respuesta pero aun me quedan algunas dudas.
Primero que nada, entiendo que la mejor manera de hacerlo es programando pero quiero ver si solo lo puedo hacer con paquetes.
He probado en ambas maquinas que no salgan ni entren paquetes rst y segun tu respuesta deberia funcionar??
Gracias de nuevo.
En línea
Hertz Cool

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #3 en: 16 Mayo 2005, 02:38 »

Lo del Flag RST es en teoría, no dispongo de tiempo ahora mismo para comprobar mi afirmación en mi Red.

A ver, te lo explico de otra forma. Para que puedas establecer una comunicación con el servidor netcat enviando paquetes debería de ocurrir algo similar a esto:
tu packet generator debería de mandar un SYN, el servidor con netcat debería de responder con un SYN+ACK al "envite" que le enviaster. Y ahora es donde viene el problema... NO HAY NINGUNA APLICACION que espere ese SYn+ACK por lo que el host debería de responder con RST para cerrar esa "conexión".
Para que funcionase tu packet generator debería de tener un sockets abierto a la escucha y esperando ese SYN+ACK para que de inmediato mandase el ACK.
Si tu envías el ACK mediante otra inyección de paquetes, el servidor(que ya habrá cerrado ese intento de conexión)  rechazará el asentimiento.

Uff no sé si me estoy explicando bien, la dialéctica no es lo mio.

Saludos.
En línea
neuromante

Desconectado Desconectado

Mensajes: 63


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #4 en: 16 Mayo 2005, 02:56 »

Hertz, te estas explicando mas que bien y me alegro que me ayudes con esto ya que eres el unico que me lo ha explicado.

Yo pienso que el tema es por ese lado que dices tu pero aun me quedan dudas por lo tanto continuo la discusion ..jeje.

En la maquina local (en la que envio el syn inicial) yo veo con mi sniffer(tcpdump) el syn-ack que me envia el servidor y contesto a este con un ack avisando que recibi el syn-ack que me envio el servidor de acuerdo al numero de secuencia que este me envia.
Es un ack 1 en respuesta al paquete del servidor y es exactamente lo que veo  cuandoconecto con netcat.
No deberia establecerse la conexión en ese momento??

En caso de que como tu dices deba haber un socket esperando me gustaria saber un poco mas del porke de este ya que sigo pensando que no tendria que ser absolutamente necesario.

En caso de que tenga que si o si existir este socket, se puede crear de alguna forma y enviar los paquetes manualmente para establecerla conexión??

Porsupuesto que estas preguntas me las contestas silas sabes, no quiero que invesitigues por mi y pierdas el tiempo.
Muchas gracias de nuevo.
En línea
Hertz Cool

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #5 en: 16 Mayo 2005, 03:11 »

Hola Neuromante, tú pregunta todo lo que no entiendas que para esto estamos aquí.

Citar
En la maquina local (en la que envio el syn inicial) yo veo con mi sniffer(tcpdump) el syn-ack que me envia el servidor y contesto a este con un ack avisando que recibi el syn-ack que me envio el servidor de acuerdo al numero de secuencia que este me envia.
Es un ack 1 en respuesta al paquete del servidor y es exactamente lo que veo  cuandoconecto con netcat.
No deberia establecerse la conexion en ese momento??
No, porque el servidor ya no espera ese ACK, jaja es lioso lo sé. me intento explicar mejor:

El enviar paquetes o mejor dicho, el inyectar paquetes haciendo uso de los RAW Sockets, utilizando la librería libpcap para sistemas UNiX-Like o Winpcap para plataformas windows, tiene el problema que son paquetes "aislados".

Cuando el servidor te responde a tu SYN, el host cliente NO ESPERA ese SYN+ACK (ESTO ES FUNDAMENTAL Y ES LO QUE NO ACABAS DE ENTENDER). No lo espera porque fuiste tú mediante una herramienta especial, que inyecto un paquete aislado pidiendo una conexión. Ese packet Generator desaparece del intento de conexión en el momento que inyectas el primer paquete.Aunque tú después mandes un ACK con el número de secuencia y asentimiento adecuado, el intento de conexión (SYN, ACK+SYN.) ha desaparecido.

Otra forma de decirlo:
En el tiempo que transcurre desde que capturas el paquete SYN+ACK hasta que mandas el nuevo ACK, cliente y servidor han cerrado ese intento de conexión.

Por favor, todo lo que no entiendas pregunta.

Saludos
En línea
pepel
Colaborador

Desconectado Desconectado

Mensajes: 1.099


Uno más


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #6 en: 16 Mayo 2005, 12:06 »

Me voy a unir a las explicaciones, pero dando una distinta version de lo mismo que explicas.

Como vas a crear una conexion entre 2 maquinas que no saben que se estan comunicando? Las conexiones se producen a nivel de la capa del SO, y tu estas trabajando directamente con la tarjeta de red.

   saludos!
En línea

Para algunos, la vida es galopar un camino empedrado de horas, minutos y segundos.
Yo, más humilde soy, y sólo quiero que la ola que surge del último suspiro de un segundo, me transporte mecido hasta el siguiente.
Hertz Cool

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #7 en: 16 Mayo 2005, 15:46 »

Bienvenidas sean, pepel  ;)

En línea
neuromante

Desconectado Desconectado

Mensajes: 63


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #8 en: 16 Mayo 2005, 16:24 »

hola bienvenido pepel.
se les  ocurre alguna ide de enga~ar al servidor para que no corte la conexión y se piense que hay canal de comunicacion(socket) aunque no lo haya??
En línea
Hertz Cool

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #9 en: 16 Mayo 2005, 17:23 »

No.

Saludos
En línea
pepel
Colaborador

Desconectado Desconectado

Mensajes: 1.099


Uno más


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #10 en: 16 Mayo 2005, 22:49 »

es que no se trata de engañar al servidor... el servidor ni se entera de que quieres establecer una conexion, la unica manera es programando un socketttttttt

    saludos,
En línea

Para algunos, la vida es galopar un camino empedrado de horas, minutos y segundos.
Yo, más humilde soy, y sólo quiero que la ola que surge del último suspiro de un segundo, me transporte mecido hasta el siguiente.
neuromante

Desconectado Desconectado

Mensajes: 63


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #11 en: 18 Mayo 2005, 15:43 »

sigo pensando que puede haber una manera de enga~ar al sistema operativo para que la conexión se logre aunque aun no se como hacerlo ...
Salu2 y hasta otra, muchas gracias pepel y Hertz Cool por colaborar.
En línea
pepel
Colaborador

Desconectado Desconectado

Mensajes: 1.099


Uno más


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #12 en: 19 Mayo 2005, 12:06 »

pues si lo conseguis hazmelo saber!!!! (porque esto de crear una conexion generando directamente los paquetes, y luego hacer un netstat y verla... tiene que ser la polla! jajajjaa)


    suerte! (la vas a necesitar)

          pepel
En línea

Para algunos, la vida es galopar un camino empedrado de horas, minutos y segundos.
Yo, más humilde soy, y sólo quiero que la ola que surge del último suspiro de un segundo, me transporte mecido hasta el siguiente.
neuromante

Desconectado Desconectado

Mensajes: 63


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #13 en: 20 Mayo 2005, 21:39 »

me extra~a pepel, que poco creativo que eres ...
no creo que puedas llegar a nada con tan poco curiosidad.
cuando tratas de solucionar un problema, te rindes sin estar seguro de que el problema no tiene solucion?
me parece poco hacker que es lo que supuestamente algunos deseamos o decimos que somos.
si no hay curiosidad y empe~o para hacer las cosas me parece que nunca se podrian descubrir nuevos avances en cualquier campo.
un saludo, esto es sin ofender, es simplemente una opinion ...
En línea
pepel
Colaborador

Desconectado Desconectado

Mensajes: 1.099


Uno más


Ver Perfil
Re: pregunta sobre el protocolo.
« Respuesta #14 en: 21 Mayo 2005, 14:44 »

jejejejejejjeje no es cuestion de poca curiosidad... si una conexion se produce a nivel de SO y tu estas trabajando a nivel fisico es imposible que puedas crear una conexion, es asi de simple :)

Por enviar paquetes tu puedes enviar lo que te de la gana, pero no son los paquetes lo que generan lo conexion!!!! la conexion la genera el SO mediante paquetes (que es muy diferente). Los paquetes son solo el medio para generar una conexion.

Lo interesante en todo caso seria engañar a un servicio generando tu los paquetes del otro lado. Es decir, montamos un servicio de http(p.e.), y le enviamos un SYN, el servicio devolvera un SYN+ACK, sobre el que nosotros generaremos un ACK. Ahora si que para la maquina que corre el servicio de http existe una conexion (aunque para la maquina desde la que has generado los paquetes, en caso de ser otra, esa conexion no existe)

Decirte tambien que no me conoces de nada, y que no puedes juzgar mi poca o mucha creatividad/curiosidad simplemente por el hecho de que te diga que lo que estas intentando no es posible. Pero no es que no sea posible porque lo diga yo (jejejje que tambien xDDDD) sino porque las conexiones no funcionan así.

Ah! También decir que esta muy bien que pruebes esas cosas, porque aunque no sirvan para nada (las cosas como sean) al menos ahora conoces seguro mucho mejor el protocolo TCP/IP, y eso es siempre interesante (jugando con el se pueden llegar a hacer cosas realmente interesantes).

  animo y suerte!

      Pepel

En línea

Para algunos, la vida es galopar un camino empedrado de horas, minutos y segundos.
Yo, más humilde soy, y sólo quiero que la ola que surge del último suspiro de un segundo, me transporte mecido hasta el siguiente.
Páginas: [1] 2 Ir Arriba Imprimir 
Ir a:  







Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.6 | SMF © 2006-2008, Simple Machines LLC