Nabend zusammen,
habe im Forum gelesen, dass einige Lose-Seiten Betreiber offensichtlich Probleme mit (D)DoS Attacken haben, und das schon über längere Zeit.
Ich möchte hier einfach mal über die Möglichkeiten und Chancen solche Angriffe abzuwehren, bzw. einfach nur abzulehnen, und dem "gewünschten" regulären User dennoch auf die Seite zu lassen, diskutieren. Eventuell auch eine Kleine "Linksammlung" zu nützlichen Hinweisen, Tutorials und Neuigkeiten (s.u.)
Oftmals nutzen solche Bot-Netze relativ ähnliche (um nicht zu sagen gleiche) GET/POST Anfragen an den Server. Diese sind mit normalen Useranfragen oftmals sehr ähnlich. Meistens machen sich die Angreifer jedoch nicht die Mühe, Varianz in die gestellten Anfragen zu bringen. Und ein gewisses System sollte man (zumindest als Mensch mit Hilfe von Maschinen) eigentlich immer erkennen können. Ist ja schließlich berechnet, also kann man in der Regel auch Muster erkennen.
Ich habe für ein privates Projekt vor ein paar Tagen einen Server etwas nach einem gefundenen Tutorial angepasst. Hier der Link dazu. Ich find das wirklich gut erklärt und hatte keine größeren Probleme das einzubauen. Der Server hatte zwar noch keine (richtige) Attacke, aber einige Tests sind sehr gut gelaufen.
Nachteil ist natürlich, dass man den Anfang der Attacke möglichst früh mitbekommen muss. Da wird sich ja aber vielleicht über die Zeit ne "Sammlung" an sogenannten "SecRules" zusammenstellen lassen, ganz nach dem Motto gemeinsam seid ihr stark. Vielleicht können ja einige User Ihre Einstellungen nach Attacken hier posten, dann spricht sich das schnell rum und man ist für den Fall einer Attacke direkt gerüstet.
Ich denke nur über dieses Thema, und Server-Sicherheit im Allgemeinen, ist recht viel Gesprächsbedarf vorhanden und jeder Webmaster/Admin sollte sich heutzutage mehr denn je damit auseinandersetzen.
Auf der oben verlinkten Seite finden sich auch noch weitere Tuts in welchen erklärt wird, wie man seinen Server generell "etwas" sicherer bekommt. Ich kann eigentlich nur empfehlen, darüber nachzudenken vielleicht lieber zu einem kleineren und unbekannteren Hoster zu gehen. Diese sind zwar meist etwas teuer, gehen aber individuell viel besser auf die Kundenwünsche ein (so meine Erfahrung). Da lässt sich dann eventuell auch über eine extern geschaltete Hardware-Firewall reden. Diese ist dann nur zum ablehnen da und kann sich voll und ganz auf das konzentrieren was sie machen soll. Den Apachen freuts dann ebenso
Bei Fragen versuche ich auch gerne zu helfen, kein Problem. Wobei auf der Seite auch zu vielen Dokumentationen und Erklärungen verlinkt wird - und hier unten auch!
Ich finds eigentlich nicht sooo schwer, wenn mans erstmal verstanden hat. Viel Spaß beim antworten!
In diesem Sinne: Kämpft!
Gute Nacht!
Stefan
Links:
Installation/Grundkonfiguration von mod_security2
mod_security2 actions (Aktionen - vor allem deny sollte interessant sein)
mod_security Variablen (hier sind die wichtigsten QUERY_STRING, REMOTE_ADDR, REQUEST_BODY & vor allem REQUEST_HEADERS)
Infos:
Es können mehrere "SecRules" angelegt werden, einfach in mehreren Zeilen untereinander schreiben. Sollte dann min. Eine der Regeln zutreffen wird die Anfrage einfach gedroppt, und bei Bedarf mitgeloggt, etc. pp. Dabei werden die Regeln von oben nach unten durchgegangen.
habe im Forum gelesen, dass einige Lose-Seiten Betreiber offensichtlich Probleme mit (D)DoS Attacken haben, und das schon über längere Zeit.
Ich möchte hier einfach mal über die Möglichkeiten und Chancen solche Angriffe abzuwehren, bzw. einfach nur abzulehnen, und dem "gewünschten" regulären User dennoch auf die Seite zu lassen, diskutieren. Eventuell auch eine Kleine "Linksammlung" zu nützlichen Hinweisen, Tutorials und Neuigkeiten (s.u.)
Oftmals nutzen solche Bot-Netze relativ ähnliche (um nicht zu sagen gleiche) GET/POST Anfragen an den Server. Diese sind mit normalen Useranfragen oftmals sehr ähnlich. Meistens machen sich die Angreifer jedoch nicht die Mühe, Varianz in die gestellten Anfragen zu bringen. Und ein gewisses System sollte man (zumindest als Mensch mit Hilfe von Maschinen) eigentlich immer erkennen können. Ist ja schließlich berechnet, also kann man in der Regel auch Muster erkennen.
Ich habe für ein privates Projekt vor ein paar Tagen einen Server etwas nach einem gefundenen Tutorial angepasst. Hier der Link dazu. Ich find das wirklich gut erklärt und hatte keine größeren Probleme das einzubauen. Der Server hatte zwar noch keine (richtige) Attacke, aber einige Tests sind sehr gut gelaufen.
Nachteil ist natürlich, dass man den Anfang der Attacke möglichst früh mitbekommen muss. Da wird sich ja aber vielleicht über die Zeit ne "Sammlung" an sogenannten "SecRules" zusammenstellen lassen, ganz nach dem Motto gemeinsam seid ihr stark. Vielleicht können ja einige User Ihre Einstellungen nach Attacken hier posten, dann spricht sich das schnell rum und man ist für den Fall einer Attacke direkt gerüstet.
Ich denke nur über dieses Thema, und Server-Sicherheit im Allgemeinen, ist recht viel Gesprächsbedarf vorhanden und jeder Webmaster/Admin sollte sich heutzutage mehr denn je damit auseinandersetzen.
Auf der oben verlinkten Seite finden sich auch noch weitere Tuts in welchen erklärt wird, wie man seinen Server generell "etwas" sicherer bekommt. Ich kann eigentlich nur empfehlen, darüber nachzudenken vielleicht lieber zu einem kleineren und unbekannteren Hoster zu gehen. Diese sind zwar meist etwas teuer, gehen aber individuell viel besser auf die Kundenwünsche ein (so meine Erfahrung). Da lässt sich dann eventuell auch über eine extern geschaltete Hardware-Firewall reden. Diese ist dann nur zum ablehnen da und kann sich voll und ganz auf das konzentrieren was sie machen soll. Den Apachen freuts dann ebenso
Bei Fragen versuche ich auch gerne zu helfen, kein Problem. Wobei auf der Seite auch zu vielen Dokumentationen und Erklärungen verlinkt wird - und hier unten auch!
In diesem Sinne: Kämpft!
Gute Nacht!
Stefan
Links:
Installation/Grundkonfiguration von mod_security2
mod_security2 actions (Aktionen - vor allem deny sollte interessant sein)
mod_security Variablen (hier sind die wichtigsten QUERY_STRING, REMOTE_ADDR, REQUEST_BODY & vor allem REQUEST_HEADERS)
Infos:
HTML:
SecRule REQUEST_LINE "get\s*\d+\s*http/1\.0$" "phase:1,t:lowercase,msg:'DDos match',drop,auditlog,exec:'/etc/apache2/wrapper'"
SecRule REQUEST_HEADERS:User-Agent "blablabla" "phase:1,t:lowercase,msg:'DDos match',drop,auditlog,exec:'/etc/apache2/wrapper'"

