[COLOR="#00ffff"]Hallo
Einen guten Artikel dazu findest du hier: Denial-of-service attack - Wikipedia, the free encyclopedia
------
Da viele Pserver bzw. Hompge´s keine ahnung haben sich gegen DDos zu schützen habe ich mal vor langer zeit ein kleines tut geschrieben... Viel Spaß
------
Sich vor DDoS zu schützen ist fast immer ein Problem.
Zuerst solltest du bei deiner Firewall "fallback" anwenden, um dich nicht selbst bei einer fehlerhaften Konfiguration zu sperren:
Bei diesem Befehl wird die Firewall eine Minute (60 Sekunden) gestartet und man kann das Ganze testen.
Falls bereits eine ip-tables-Konfiguration besteht, dann verwende folgenden Befehl:
und danach
<Strg>+<D>
Die Konfiguration von IP-Tables wird gesichert und nach 5 Minuten wieder hergestellt.
Die wichtigste Abwehr bei SYN-Flood ist unter Linux folgender Befehl:
Wenn du nur von ein paar Rechnern angegriffen wirst, dann kannst du diese einfach mit ip-tables blocken:
Falls der Angreifer auf die Idee kommt und wählt sich neu ins Internet ein, dann sperre einfach einen Gesamten IP-Bereich:
Eine weitere Möglichkeit wäre ".htaccess":
Dazu erstellst du dir eine Datei namens ".htaccess" (der Punkt davor ist wichtig
!) (ins Hauptverzeichnis) mit folgendem Inhalt:
Danach musst du noch eine Datei namens ".htpasswd" erstellen. Zum Beispiel mit dem Inhalt:
Nun wäre der Benutzername "ddos" und das Passwort ebenfalls "ddos". Einen Passwort-Generator findest du hier: Kreiter Wassenberg: .htaccess Passwort Generator
Von dieser Methode rate ich allerdings ab, da es die Benutzer nervt und lange nicht so viel wie iptables bringt.
Die wohl beste Möglichkeit wäre eine Hardware-Firewall. Dies ist aber zugleich auch die teuerste Lösung.

Im Internet gibt es aber auch Anti-DDos Scripte. Diese sollen die Angriffe angeblich abwehren. Ich weiß aber nicht, ob das wirklich etwas bringt.
Aber eins solltest du dir merken:
Wenn jemand eine 100K Armee Bots auf dich loslässt dann hilft das auch nicht mehr, und erst Recht nicht wenn 50k SYN Flood und 50K ICMP und noch TCP UDP, wenn man das alles mischt dann ist sense mit allem.
Und natürlich auf jeden Fall sofort deinen Hoster melden und Anzeige erstatten.
Hier noch etwas zum lesen: Apache: DoS-Attacken abfangen @ huschi.net
----
Hab da noch etwas gefunden:
Hier auch noch ein paar Abwehrmaßnahmen (manche habe ich schon erwähnt, aber es sind auch neue dabei):
Zitat:
Einen guten Artikel dazu findest du hier: Denial-of-service attack - Wikipedia, the free encyclopedia
------
Da viele Pserver bzw. Hompge´s keine ahnung haben sich gegen DDos zu schützen habe ich mal vor langer zeit ein kleines tut geschrieben... Viel Spaß
------
Sich vor DDoS zu schützen ist fast immer ein Problem.
Zuerst solltest du bei deiner Firewall "fallback" anwenden, um dich nicht selbst bei einer fehlerhaften Konfiguration zu sperren:
Code:
./firewall start&&sleep 60&&./firewall stop
Bei diesem Befehl wird die Firewall eine Minute (60 Sekunden) gestartet und man kann das Ganze testen.
Falls bereits eine ip-tables-Konfiguration besteht, dann verwende folgenden Befehl:
Code:
iptables-save > /tmp/savediptables
und danach
Code:
at now + 5min
iptables-restore < /tmp/savediptables
<Strg>+<D>
Die Konfiguration von IP-Tables wird gesichert und nach 5 Minuten wieder hergestellt.
Die wichtigste Abwehr bei SYN-Flood ist unter Linux folgender Befehl:
Code:
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
Wenn du nur von ein paar Rechnern angegriffen wirst, dann kannst du diese einfach mit ip-tables blocken:
Code:
iptables -I INPUT -s dieIP -j ****
Falls der Angreifer auf die Idee kommt und wählt sich neu ins Internet ein, dann sperre einfach einen Gesamten IP-Bereich:
Code:
iptables -I INPUT -s dieIP/24 -j ****
Eine weitere Möglichkeit wäre ".htaccess":
Dazu erstellst du dir eine Datei namens ".htaccess" (der Punkt davor ist wichtig
!) (ins Hauptverzeichnis) mit folgendem Inhalt:
Code:
AuthType Basic
AuthName "Benutzername = ddos | Passwort = ddos"
AuthUserFile /deinpfad/.htpasswd
require valid-user
ErrorDocument 401 "<center><h3>DDoS-Attacken</h3></center><br>Wir stehen zur Zeit unter DDoS. Der Login blockt die Abfragen etwas ab. <br><br><B>Bitte geben Sie als Benutzernamen ddos ein und als Passwort ebenfalls ddos.</B> <br><br>Vielen Dank für Ihr Verständnis!"
Danach musst du noch eine Datei namens ".htpasswd" erstellen. Zum Beispiel mit dem Inhalt:
Code:
ddos:$1$AqACcmQm$M0JjIBBDlVtTtrYWsKE4G.
Nun wäre der Benutzername "ddos" und das Passwort ebenfalls "ddos". Einen Passwort-Generator findest du hier: Kreiter Wassenberg: .htaccess Passwort Generator
Von dieser Methode rate ich allerdings ab, da es die Benutzer nervt und lange nicht so viel wie iptables bringt.
Die wohl beste Möglichkeit wäre eine Hardware-Firewall. Dies ist aber zugleich auch die teuerste Lösung.

Im Internet gibt es aber auch Anti-DDos Scripte. Diese sollen die Angriffe angeblich abwehren. Ich weiß aber nicht, ob das wirklich etwas bringt.
Aber eins solltest du dir merken:
Wenn jemand eine 100K Armee Bots auf dich loslässt dann hilft das auch nicht mehr, und erst Recht nicht wenn 50k SYN Flood und 50K ICMP und noch TCP UDP, wenn man das alles mischt dann ist sense mit allem.
Und natürlich auf jeden Fall sofort deinen Hoster melden und Anzeige erstatten.
Hier noch etwas zum lesen: Apache: DoS-Attacken abfangen @ huschi.net
----
Hab da noch etwas gefunden:
Hier auch noch ein paar Abwehrmaßnahmen (manche habe ich schon erwähnt, aber es sind auch neue dabei):
Zitat:
[/COLOR]WICHTIGSTE ABWEHR:
1. Verwende Syn-Cookies und du hast garkeine Probleme mehr mit SYN-Attacken:
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
2. iptables, dort auffaellige Bereiche sperren, z.B. mit CIDR Notation (ggf. apt-get install netmask .. mit netmask ipstart:ipend ... gutes Umrechnungstool)
iptables -I INPUT -s 88.224.0.0/16 -j **** # block 88.224.0.0 to 88.255.255.255 TTNet (TTnet Autonomous System)
3. ddos deflate v0.6 installieren von deflate.medialayer.com/old/∞ - zaehlt wie oft eine ip gleichzeitig verbindungen aufbaut mittels netstat und wenn uebr schwellwert werden diese geblockt. am besten als cron job jede minute aufrufen.
/usr/local/ddos ... ddos.conf ... wenn kein apf installiert apf=0 ... connection limit z.b. 35 oder 50
DDOS Deflate v0.6 - v1.0 in Planung:
deflate.medialayer.com/old/∞ - Projektseite auf blog.medialayer.com/projects-ddos-deflate/∞
Script installiert sich in /usr/local/ddos/ und zaehlt Anzahl Verbindungen je IP, wenn ueber Schwellwert werden diese per
APF oder iptables fuer bestimmte Zeit (alles in ddos.conf einstellen) gebannt
Config: ddos.conf bei NO_OF_CONNECTIONS=150 ruhig runter gehen auf 35, apf auf 0, falls nicht vorhanden
CRON: cronjob ggf. manuell einrichten */1 * * * * root pfad parameter ...
IPTABLES
de.wikibooks.org/wiki/Linux-Kompe...P-Tables∞
de.wikipedia.org/wiki/Netfilter/iptables∞
#Limit bietet Schutz vor "Syn-Flood-Attacken
iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
Pakete bestimmter hosts/ranges wegschmeissen:
iptables -I INPUT -s 88.224.0.0/16 -j **** # block 88.224.0.0 to 88.255.255.255 TTNet (TTnet Autonomous System)
iptables -I INPUT -s 85.0.0.0/8 -j ****
iptables -I INPUT -s 88.0.0.0/8 -j ****
mit hilfe von iptables könnt ihr ein paar sachen festlegen, wie z.b die max connections pro IP beschränken auf z.b. 10
und ihr könnt mit hilfe von iptables packet verwerfen welche sich nicht an den korrekten Aufbau einer TCP Verbindung halten ..
z.b.
# alle TCP-Sessions müssen mit einem SYN beginnen, sonst werden sie verworfen
$iptables -A INPUT -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "Stealth Scan"
$iptables -A INPUT -p tcp ! --syn -m state --state NEW -j ****
# ungewöhnliche Flags verwerfen
$iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j ****
$iptables -A INPUT -p tcp --tcp-flags ALL ALL -j ****
$iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j ****
$iptables -A INPUT -p tcp --tcp-flags ALL NONE -j ****
$iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j ****
$iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j ****
# SYN-Flood-Schutz
$iptables -N syn-flood
$iptables -A INPUT -p tcp --syn -j syn-flood
$iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN
$iptables -A syn-flood -j ****
# Setzt die MMS (Maximum Segment Size) auf weniger 40Bytes für SYN,RST SYN Packete
$iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
# max. 10 neue Verbindungen in 5 Sekunden pro Quelladresse erlauben, nimmt man meist für SSH
$iptables -N tcp_packets
$iptables -A tcp_packets -p TCP -i $wan_iface --dport 22 -m state --state NEW -m recent --set
$iptables -A tcp_packets -p TCP -i $wan_iface --dport 22 -m state --state NEW -m recent --update --seconds 5 --hitcount 10 -j ****
$iptables -A tcp_packets -p TCP -i $wan_iface --dport 22 -j ACCEPT
oder
# limitiert die Anzahl von HTTP-Verbindungen einer IP-Adresse auf vier Verbindungen
iptables -A INPUT -p tcp --dport 80 -m iplimit --iplimit-above 4 -j REJECT
Es gibt noch weiter Möglichkeiten, musst ihr einfach mal suchen ..
--michael bonge--
SYN Cookies
syn wiki
Gröe der Backlog-Queue anpassen, je nach Hardware. Standard 1024 offene SYN_RECV's, z.B. auf 256:
echo 1024 > /proc/sys/net/ipv4/tcp_max_syn_backlog
Syn Packets Straffung:
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout
echo 1800 > /proc/sys/net/ipv4/tcp_keepalive_time
PDFs zu SYN Flood DDOS bei computec.ch: Downloads / Denial of Service (Dokumente) durcharbeiten
IP-Netze nach Ländern, fertig für die .htaccess habe ich unter tools.sistrix.com/co/
Schutz gegen Schutzgelderpressung mit DDoS-Attacken
Green Gate Labs Homepage
SYN flood -- hping network security tool
Syn Flood Attacken
CBACK Software • Willkommen
Achja, das ist auch eine gute Resource als Basis für IPTables Firewalls:
rfxnetworks.com/apf.php∞
rfxnetworks.com/apf/README∞
LinuxSecurity.com
Dämme gegen die SYN-Flut | heise Security
in der apache2.conf
<Files index.pl>
SetHandler perl-script
PerlHandler Apache:Zunge raus Rout
Order Deny,Allow
Deny from 85.
Deny from 88.
</Files>
<Location /> <-- nicht garantiert, bessere loesung gesucht, evtl <Files *> Container besser
Order Deny,Allow
Deny from 85.
Deny from 88.
</Location>
KeepAlive OFF setzen:
Bei mir /etc/apache2/apache2.conf folgendes suchen:
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
KeepAlive On
Ändern auf
KeepAlive Off
Auf die Weise bricht der Apache offene Anfragen einfach ab.... und die Last füllt wieder
.htaccess im Hauptverzeichnis - gilt fuer alle Unterverzeichnisse
Order Deny,Allow
deny from 192.168
APF
APF ist eine Abstraktionslayer zum einfachen konfigurieren von Netfilter via IPTables.
APF enthält schlicht bekannte Schalterchen und Drehknöpfe um verschiedenen Angriffsmustern den Hahn etwas abzudrehen.
Es höngt halt viel von dem auf RH verwendeten Linux ab, ob synflood protection schon an ist (Debian std.) usw.
APF (rfxnetworks.com/apf.php∞) legt halt viele Hebel schon mal richtig
OK, ihr könntet folgende 2 Programme noch zusätzlich installieren:
ossec.net/∞
und
sourceforge.net/projects/sentrytools/∞
Beides zusammen schafft auch noch mal einiges ins reine.
Und wenn nix mehr hilft dann:
Sperren einer einzelnen "bösen" IP-Adresse bzw. eines Netzblocks
per iptables-Filter lässt sich leicht eine einzelne IP-Adresse blocken
iptables -I INPUT -s böse_IP -j ****
Es kann auch ein ganzer IP-Adressbereich geblockt werden, z.B.
iptables -I INPUT -s 213.133.99.0/24 -j ****
Das Blockieren macht bei dynamischen Einwahl-IP's des Angreifers/Störers natürlich wenig Sinn.
Schalte doch einfach vor deinen Server (oder machst es auf Softwarebasis) einen Router die diese Pakete ausfiltert.
Ein Text dazu: Dämme gegen die SYN-Flut | heise Security
Ich weiß ja nicht, wo ihr eure Seiten hostet, aber wenn ihr einen Rootserver habt, könnt ihr Einstellungen vornehmen, wenn nicht mußt euer Provider irgendwas machen.
Eine kurze Recherche im ergab diese Seite:
cr.yp.to/syncookies.html∞ (link von der wikipedia).
Interssant ist eigendlich dies hier:
SYN cookies are now a standard part of Linux and FreeBSD. They are, unfortunately, not enabled by default under Linux. To enable them, add
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
to your boot scripts.
Ich hoffe, ihr könnt die Attacken abwehren.