Resultados 1 al 2 de 2

Problema de tuberia rota y yo sin fontanero

  1. #1 Problema de tuberia rota y yo sin fontanero 
    Avanzado
    Fecha de ingreso
    Jun 2006
    Ubicación
    Valhala
    Mensajes
    1.167
    Descargas
    4
    Uploads
    0
    Buenas noches, a ver os comento, he estado haciendo unas pruebecillas con un exploit para Apache 2.0.52. Y al ejecutarlo, me sale un problema de tubería rota. Pensé que tendría algun fallo a proposito para que no se pueda usar sin arreglarlo. ASi que me he puesto a añadir lineas de impresion para ver donde da el fallo. El caso, esque lo da en la siguiente parte:
    Código:
    if((connect(sock, (struct sockaddr*)&addy, sizeof(addy))) < 0){
    		perror("connect()");
    		exit(1);
    	}
    Pero no lo da a la primera, sino que establece varias conexiones y a un numero x salta el error de tuberia rota. Y no siempre, ya que tras varias ejecuciones, he conseguido que funcione el exploit y cause la DoS para la que esta programado.
    Ahora al volver a ejecutarlo, me sigue dando el mismo problema a veces con las tuberias.
    Me pregunto, si sabriais a que es debido, ya que yo ando un poco pez en c y mas aun en conexiones de red.
    Gracias y un saludo!

    PD: El exploit , se ejecuta en multihilo, y crea varios procesos que son los encargados de colapsar la conexion, ahora me pregunto, el problema de tuberia es a la hora de la conexion de red con el host victima o es un fallo de la comunicacion entre los diferentes hilos??
    Última edición por smaug_; 06-05-2008 a las 01:49
    http://www.project-longinus.es
     

  2. #2  
    Moderador Global Avatar de hystd
    Fecha de ingreso
    Jul 2005
    Ubicación
    1, 11, 21, 1211...
    Mensajes
    1.596
    Descargas
    58
    Uploads
    0
    ¿Has tenido en cuenta que haya sincronismo entre los hilos? Piensa que si no pones un mecanismo de orden, la ejecución de los hilos es asíncrona, y puede que funcione y puede que no... debes tener cuidado de no hacer que un mismo instante de tiempo se llame dos veces a connect desde el mismo recurso. Si lo haces puede haber colisión.

    Por ejemplo, si un hilo abre un socket, este hilo no debe volver a abrirlo hasta que no finalice. Sin embargo si estás usando un solo socket, piensa que es un recurso compartido, y que si un hilo abre el socket, otro no puede usarlo hasta que el que lo está usando no lo libere... o bien lo libere tras una condición (por ejemplo pasado un tiempo).

    Un saludo
    El optimista tiene ideas, el pesimista... excusas

     

Temas similares

  1. Televisión Brimax rota
    Por hckr en el foro TELEVISION
    Respuestas: 2
    Último mensaje: 12-08-2011, 20:14

Marcadores

Marcadores