# Port 80 gefloodet



## ulf123 (6. August 2006)

Hallo leute ich habe das Problem das der Port 80 meines Servers
suse linux zu gespammt wird.. Hostname des angreifers hab ich.... was kann ich gegen diesen angriff tun?
Firewall bringt nichts

MfG Ulf


----------



## Azi (6. August 2006)

iptables -A INPUT -s IP_VOM_FLOODER --dport 80 -j DROP


----------



## ulf123 (6. August 2006)

hmmm


> server:~ # iptables -A INPUT -s 81.169.135.165  --dport 80 -j DROP
> iptables v1.3.1: Unknown arg `--dport'
> Try `iptables -h' or 'iptables --help' for more information.



Danke Ulf


----------



## Azi (6. August 2006)

Oh, sorry:

```
iptables -A INPUT -p tcp -s IP_VOM_FLOODER --dport 80 -j DROP
```


----------



## Dennis Wronka (7. August 2006)

Ich hab mich noch nicht naeher damit beschaeftigt wie sich das auf die Systemperformance auswirkt. Aber falls bei Dir die entsprechende Kernel-Option aktiviert ist koenntest Du anstelle von DROP auch mal MIRROR probieren.  Dadurch wirfst Du den Traffic zurueck.
Wie gesagt, ich weiss aber nicht genau wie sich das auf die Performance auswirkt. Dafuer hab ich damit bislang zu wenig rumgespielt.


----------



## takvorian (7. August 2006)

ulf123 hat gesagt.:
			
		

> ... was kann ich gegen diesen angriff tun? .....MfG Ulf



Wenn Du einen Root-Server Dein eigen nennen kannst, installiere Dir eine
sogenannte teergrube (oder heute eher honeypot genannt). Dann gibts
das Problem garnichtmehr^^


----------



## ulf123 (7. August 2006)

teergrube?

bitte erleutern.... es sit mein eigener root!!



Danke für die antwort


----------



## takvorian (7. August 2006)

der Einfachheit halber kopiere ich Dir den wiki-Eintrag rein, es ist nicht ganz einfach ein
"labrea" zum Laufen zu kriegen, am Besten wäre ein eigener rechner hierfür. Ich habe auch nur einen Root-Server und da funktioniert es wunnebar:

~~~~~~~
Der Teergruben-Computer lauscht auf unbeantwortete ARP-Requests (normalerweise eine unbenutze Adresse) und beantwortet Anfragen an diese, d. h., er täuscht vor, die gesuchte IP-Adresse zu besitzen. Wenn er daraufhin das initialisierende SYN-Paket des Angreifers (häufig ein Portscanner) erhält, sendet er nur noch eine SYN/ACK-Antwort, danach nichts mehr. Für diese Verbindung wird kein Socket geöffent und keine "echte" Verbindung eingerichtet. Die Teergrube speichert keine Daten der Verbindung nach dem gesendeten SYN/ACK. Somit braucht die Teegrube keinerlei eigene Ressourcen wie Rechenzeit, Sockets, Speicher oder Netzwerkbandbreite.

Der Computer der Remote-Seite (der "Angreifer") sendet daraufhin sein ACK-Paket, um den für den Verbindungsaufbau nötigen 3-way-handshake abzuschließen. Schon dieses Paket wird von der Teergrube ignoriert, da aus Sicht des "Angreifers" bereits eine etablierte Verbindung vorliegt. Er beginnt seine Daten zu senden, die jedoch niemanden erreichen.

Da im TCP eine Bestätigung für jedes Paket vorgesehen ist, wird die Verbindung in der Regel nach einer Zeit durch ein Time-out unterbrochen. Bis dahin verharrt die sendende Maschine jedoch in einem Zustand, der darauf ausgelegt ist, die Verbindung zu einem potentiellen tatsächlichen Kommunikationspartner nach aller Möglichkeit aufrecht zu erhalten. Diese Kommunikation kostet Zeit und Rechenleistung, je nach Art des Netzwerkstacks (Anzahl der Wiederholungen, back-off, retransmit, usw.) oft sogar sehr viel.

~~~~~~~~~~~

... und das funktioniert richtig prima.


----------



## ulf123 (7. August 2006)

ok hört sich ja ganz gut an.... bzw supaaaaaaaaaaaaaaa xD

bloß wie mach ich sowas? 

hat wer n howto zur hand

Danke für eure hilfe


----------



## takvorian (7. August 2006)

was anderes hab ich leider nicht:
http://sourceforge.net/projects/labrea


----------



## Dennis Wronka (7. August 2006)

Ich nehme an Du hast auf Port 80 ganz regulaer einen Webserver laufen, richtig?
Dann ist meiner Meinung nach der Einsatz eines Tarpits oder Honeypots nicht so ganz das richtige, denn die Anfragen gehen doch gezielt an den Webserver, oder?
Es waere hier vielleicht sinnvoller die Anzahl der Anfragen von einer IP zu limitieren.
IPTables bietet dafuer eine Funktion, die habe ich mir aber bisher noch nicht weiter angeguckt, sodass ich spontan kein Beispiel zur Hand habe.
Handelt es sich bei dem Flooding um einen normalen SYN-Flood?


----------



## ulf123 (7. August 2006)

da ist zwar ein webserver aber es kommen anfragen von einem 
ROOTSERVER

aber IP tables und firewall bringen nix da die anfragen beim apache nicht ankommen

das einziegste wo ich die vielen anfragen sehe ist in der netstat

Danke ulf


----------



## Dennis Wronka (7. August 2006)

Wenn die Anfragen den Apache nicht erreichen dann werden sie wohl schon ausgefiltert. Obwohl, eigentlich duerften sie dann auch nicht in netstat auftauchen mein ich.
Was genau meinst Du damit, dass sie von einem Rootserver kommen? Ich denke mal nicht, dass sie von einem der DNS-Roots kommen?

Und halte Dich doch bitte an Gross- und Kleinschreibung.


----------



## ulf123 (7. August 2006)

nein sie kommmen aus einem RZ aus berlin .... also aus einem anderen Rz als der rechner selbst
der hostname des angriefers ist ein hXXXXXXX.serverkompetenz.net rechner das heißt ein rechner aus dem Strato RZ.

hmm bloß was soll ich tun


----------



## Dennis Wronka (7. August 2006)

Es waere nicht uninteressant davon ein wenig Traffic zu sehen um zu wissen was da genau ablaeuft.
Was ich Dir auch raten wuerde ist diese Infos mal per Mail an den Admin des Servers, gegebenenfalls sogar auch direkt an Strato zu mailen, evtl. auch mit dem Trafflic-Log.
Ansonsten solltest Du am besten saemtlichen Traffic von der betreffenden IP sperren.


----------



## ulf123 (7. August 2006)

wie log ich das am besten.... ich habe die strato abuse auch schon benachrichtigt

könntest du mir sagen wo ich das loggen kann


danke Ulf


----------



## Dennis Wronka (7. August 2006)

Du kannst entweder die Logging-Faehigkeiten von IPTables nutzen, oder aber TCPDump oder Wireshark, welche direkt als PCAP loggen koennen, was dann recht einfach mit anderen Tools, z.B. dem GUI von Wireshark, auszuwerten ist.


----------

