Was ist ein ddos-angriff. DDoS-Angriff: Wie geht das? Programme für DDoS-Angriffe

Wenn Sie unseren Leitfaden lesen und alle beschriebenen Technologien implementieren, sichern Sie Ihren Computer vor Hackerangriffen! Vernachlässige es nicht!

Im Bereich der Informationssicherheit nehmen DDoS-Angriffe einen der führenden Plätze im Ranking der elektronischen Bedrohungen ein. Aber die meisten Benutzer haben sehr begrenzte Kenntnisse in diesem Bereich. Jetzt werden wir versuchen, dieses Thema so detailliert und zugänglich wie möglich zu behandeln, damit Sie sich vorstellen können, was diese Art von elektronischer Bedrohung bedeutet, wie sie ausgeführt wird und wie Sie dementsprechend effektiv damit umgehen können. Machen Sie sich also vertraut - DDOS-Angriff.

Terminologie

Um die gleiche Sprache zu sprechen, müssen wir Begriffe und ihre Definitionen einführen.

Dos-Angriff ist ein Denial-of-Service-Angriff. Daher auch die englische Abkürzung dos – Denial of Service. Eine der Unterarten ist ein verteilter Angriff, der gleichzeitig von mehreren, in der Regel sehr vielen Hosts ausgeführt wird. Wir werden den Hauptteil der Diskussion diesen Optionen widmen, da ein DDoS-Angriff zerstörerischere Folgen hat und ein wesentlicher Unterschied nur in der Anzahl der für den Angriff verwendeten Hosts besteht.

Um Ihnen das Verständnis zu erleichtern. Solche Aktionen zielen darauf ab, den Betrieb eines Dienstes vorübergehend zu stoppen. Dies kann eine separate Site im Netzwerk, ein großer Internet- oder Mobilfunkanbieter sowie ein separater Dienst (Annahme von Plastikkarten) sein. Damit der Angriff erfolgreich ist und zerstörerische Aktionen hervorbringt, muss er von einer großen Anzahl von Punkten aus durchgeführt werden (dieser Punkt wird später ausführlicher besprochen). Daher der "verteilte Angriff". Aber die Essenz bleibt die gleiche - den Betrieb eines bestimmten Systems zu unterbrechen.

Um das Bild zu vervollständigen, müssen Sie verstehen, wer und zu welchem ​​​​Zweck solche Aktionen durchführt.

Denial-of-Service-Angriffe sind wie andere Computerkriminalität strafbar. Daher dient das Material nur zu Informationszwecken. Sie werden von IT-Spezialisten durchgeführt, Menschen, die sich mit den Themen „Computer“ und „Computernetzwerke“ auskennen, oder, wie es in Mode gekommen ist, von Hackern. Grundsätzlich ist diese Veranstaltung auf Profit ausgerichtet, denn in der Regel werden ddos-Angriffe von skrupellosen Konkurrenten in Auftrag gegeben. Hier wäre es angebracht, ein kleines Beispiel zu geben.

Angenommen, es gibt zwei große Internetanbieter auf dem Dienstleistungsmarkt einer kleinen Stadt. Und einer will einen Konkurrenten verdrängen. Sie beauftragen Hacker mit einem verteilten DOS-Angriff auf den Server eines Konkurrenten. Und der zweite Anbieter ist aufgrund der Überlastung seines Netzes nicht mehr in der Lage, seinen Nutzern einen Internetzugang bereitzustellen. Als Ergebnis - der Verlust von Kunden und Reputation. Hacker bekommen ihren Lohn, ein skrupelloser Anbieter – neue Kunden.

Aber es gibt Fälle, in denen sie nur zum Spaß "ddo" oder um ihre Fähigkeiten zu verbessern.

Verteilter DDoS-Angriff

Lassen Sie uns gleich zustimmen - wir werden Computerangriffe analysieren. Wenn wir also von mehreren Geräten sprechen, von denen aus der Angriff ausgeführt wird, handelt es sich um Computer mit illegaler Software.

Auch hier ist ein kleiner Exkurs angebracht.. Um den Betrieb eines Dienstes oder Dienstes zu stoppen, müssen Sie die maximal zulässige Last dafür überschreiten. Das einfachste Beispiel ist der Zugriff auf eine Website. So oder so ist es auf eine gewisse Besucherspitze ausgelegt. Wenn zu einem bestimmten Zeitpunkt zehnmal mehr Leute die Seite besuchen, dann kann der Server entsprechend eine solche Menge an Informationen nicht verarbeiten und funktioniert nicht mehr. Und in diesem Moment werden Verbindungen von einer großen Anzahl von Computern hergestellt. Dies sind dieselben Knoten, die oben besprochen wurden.

Mal sehen, wie es im Diagramm unten aussieht:

Wie Sie sehen können, übernahm der Hacker die Kontrolle über eine große Anzahl von Benutzercomputern und installierte seine Spyware darauf. Ihm ist es zu verdanken, dass er nun die notwendigen Maßnahmen ergreifen kann. In unserem Fall - um einen DDOS-Angriff durchzuführen.

Wenn Sie sich also bei der Arbeit am Computer nicht an die Sicherheitsregeln halten, können Sie einer Virusinfektion ausgesetzt sein. Und vielleicht wird Ihr Computer als Host für böswillige Aktivitäten verwendet.

Du wirst brauchen: Wir haben im Artikel einige Aspekte der Sicherheit beschrieben.

Wie sie verwendet werden, hängt jedoch davon ab, welche Option der Angreifer wählt

Klassifizierung von Ddos-Angriffen

Die folgenden Arten von Angriffen können von Angreifern versucht werden:

  1. Überlastung der Bandbreite. Damit mit dem Netzwerk verbundene Computer normal kommunizieren können, muss der Kommunikationskanal, über den sie verbunden sind, normal funktionieren und ausreichende Parameter für bestimmte Aufgaben bereitstellen (z. B. Bandbreite). Diese Art von Angriff zielt genau darauf ab, die Kommunikationskanäle des Netzwerks zu überlasten. Dies wird durch ständiges Senden von inkohärenten oder Systeminformationen (Ping-Befehl) erreicht.
  2. Ressourcenlimit. Diesen Typ haben wir oben bereits betrachtet, im Beispiel mit dem Zugriff auf eine Website. Wie wir festgestellt haben, konnte der Server eine begrenzte Anzahl gleichzeitiger Verbindungen verarbeiten. Ein Angreifer muss eine große Anzahl gleichzeitiger Verbindungen zum Server leiten. Infolgedessen wird der Server die Last nicht bewältigen und nicht mehr funktionieren.
  3. Angriff auf DNS-Server. Auch in diesem Fall soll der DDOS-Angriff den Zugriff auf die Website unterbinden. Eine andere Möglichkeit besteht darin, den Benutzer von der richtigen Seite auf die gefälschte umzuleiten. Dies kann geschehen, um personenbezogene Daten zu stehlen. Dies wird erreicht, indem die DNS-Server angegriffen und gefälschte IP-Adressen ersetzt werden. Lassen Sie uns dies anhand eines Beispiels untersuchen. Eine bestimmte Bank nutzt ihre Website, um über das Internet zu bezahlen. Der Benutzer muss dorthin gehen und die Details seiner Plastikkarte eingeben. Um diese Informationen zu stehlen, erstellt ein Angreifer eine Website des gleichen Typs und greift die DNS-Server (Nameserver) an. Der Zweck dieses Ereignisses besteht darin, den Benutzer auf die Website des Angreifers umzuleiten, wenn er versucht, auf die Website der Bank zuzugreifen. Gelingt dies, gibt der Nutzer, ohne sich der Bedrohung bewusst zu sein, seine persönlichen Daten auf der Website des Angreifers ein und verschafft sich Zugriff darauf
  4. Softwarefehler. Am schwierigsten ist diese Art von Angriff. Übeltäter decken Mängel in der Software auf und verwenden sie zum Zweck der Zerstörung des Systems. Um einen solchen Ddos-Angriff zu bestellen, müssen Sie viel Geld ausgeben

So führen Sie einen DDOS-Angriff mit Ihren eigenen Händen durch

Als Beispiel haben wir uns entschlossen, Ihnen zu zeigen, wie Sie mit spezieller Software einen DDOS-Angriff durchführen können.

Um loszulegen, laden Sie das Programm hier herunter. Danach starten Sie es. Sie sollten das Startfenster sehen:

Sie müssen die Mindesteinstellungen vornehmen:

  1. In die Spalte „URL“ schreiben wir die Adresse der Seite, die wir angreifen wollen
  2. Drücken Sie dann die Schaltfläche "Lock on" - Wir sehen die Zielressource
  3. Wir setzen die TCP-Methode ein
  4. Wählen Sie die Anzahl der Threads (Threads)
  5. Stellen Sie die Upload-Geschwindigkeit mit dem Schieberegler ein
  6. Wenn alle Einstellungen abgeschlossen sind, drücken Sie die Taste „IMMA CHARGIN MAH LAZER“.

Alle - der Angriff hat begonnen. Auch hier werden alle Aktionen zu Informationszwecken dargestellt.

So schützen Sie sich vor DDOS-Angriffen

Sie haben wahrscheinlich bereits verstanden, dass diese Art von Bedrohung sehr gefährlich ist. Daher ist es sehr wichtig, die Methoden und Prinzipien zur Bekämpfung und Verhinderung verteilter Angriffe zu kennen.

  1. Das Einrichten von Filtersystemen ist eine Aufgabe für Systemadministratoren und Hosting-Provider
  2. Beschaffung von Schutzsystemen gegen DDOS-Angriffe (Software- und Hardwaresysteme)
  3. Verwendung von Firewall- und Zugriffskontrolllisten (ACLs) – diese Maßnahme zielt darauf ab, verdächtigen Datenverkehr zu filtern
  4. Verfügbare Ressourcen erhöhen und Redundanzsysteme installieren
  5. Reagieren Sie auf technische und rechtliche Maßnahmen. Bis hin zur Strafverfolgung des Täters

Video zum Artikel:

Abschluss

Jetzt verstehen Sie wahrscheinlich die Gefahr von DDOS-Angriffen. Die Fragen der Gewährleistung der Sicherheit Ihrer Ressourcen müssen sehr verantwortungsbewusst angegangen werden, ohne Zeit, Mühe und Geld zu scheuen. Besser noch, haben Sie einen separaten Spezialisten oder eine ganze Informationssicherheitsabteilung.

Regelmäßige Leser stellten sehr oft die Frage, wie man den Text bearbeiten kann, wenn die Datei im PDF-Format vorliegt. Die Antwort finden Sie im Material -

Um Ihre Daten zu schützen, können Sie eine ganze Reihe von Maßnahmen ergreifen. Eine dieser Optionen ist

Wenn Sie Ihr Video online bearbeiten müssen, haben wir eine Übersicht der beliebtesten für Sie vorbereitet.

Warum auf anderen Seiten nach Informationen suchen, wenn alles bei uns gesammelt wird?

Die Bekämpfung von DDoS-Angriffen ist nicht nur eine schwierige, sondern auch eine spannende Arbeit. Es ist nicht verwunderlich, dass jeder Systemadministrator zunächst versucht, die Abwehr selbst zu organisieren – zumal dies noch möglich ist.

Wir haben uns entschlossen, Ihnen bei dieser schwierigen Aufgabe zu helfen und einige kurze, triviale und nicht universelle Tipps zum Schutz Ihrer Website vor Angriffen zu veröffentlichen. Diese Rezepte werden Ihnen nicht helfen, mit Angriffen fertig zu werden, aber sie werden Sie vor den meisten Gefahren bewahren.

Die richtigen Zutaten

Die harte Wahrheit ist, dass viele Websites von jedem heruntergefahren werden können, der den Slowloris-Angriff verwendet, der Apache knapp tötet, oder indem er eine sogenannte SYN-Flood mithilfe einer Farm virtueller Server arrangiert, die in einer Minute in der Amazon EC2-Cloud erstellt werden. Alle unsere weiteren Tipps, um sich selbst vor DDoS zu schützen, basieren auf den folgenden wichtigen Voraussetzungen.

1. Befreien Sie sich von Windows Server

Die Praxis legt nahe, dass eine Website, die unter Windows (2003 oder 2008 – es spielt keine Rolle) läuft, im Falle von DDoS dem Untergang geweiht ist. Der Grund für den Ausfall liegt im Windows-Netzwerkstapel: Bei vielen Verbindungen wird der Server sicherlich anfangen, schlecht zu reagieren. Wir wissen nicht, warum Windows Server in solchen Situationen so schlecht abschneidet, aber wir sind mehr als ein- oder zweimal darauf gestoßen. Aus diesem Grund konzentriert sich dieser Artikel auf die Mittel zum Schutz vor DDoS-Angriffen, wenn der Server unter Linux läuft. Wenn Sie ein glücklicher Besitzer eines relativ modernen Kernels (ab 2.6) sind, werden die primären Tools die Dienstprogramme iptables und ipset (zum schnellen Hinzufügen von IP-Adressen) sein, mit denen Sie Bots schnell sperren können. Ein weiterer Schlüssel zum Erfolg ist ein gut vorbereiteter Netzwerkstack, auf den wir auch gleich noch eingehen werden.

2. Trennen Sie sich von Apache

Die zweite wichtige Bedingung ist die Ablehnung von Apache. Wenn Sie Apache haben, dann stellen Sie zumindest einen Caching-Proxy davor - nginx oder lighttpd. Apache "ist extrem schwierig, Dateien zu verschenken, und, was noch schlimmer ist, er ist grundsätzlich (dh unverbesserlich) anfällig für den gefährlichsten Slowloris-Angriff, der es Ihnen ermöglicht, den Server fast von einem Mobiltelefon aus zu überfluten. Um verschiedene Arten von zu bekämpfen Slowloris, Apache-Benutzer kamen zuerst mit einem Patch Anti-slowloris.diff, dann mod_noloris, dann mod_antiloris, mod_limitipconn, mod_reqtimeout... Aber wenn Sie nachts gut schlafen wollen, ist es einfacher, einen HTTP-Server zu nehmen, der gegen Slowloris immun ist auf der Ebene der Code-Architektur. Alle unsere weiteren Rezepte basieren also auf der Annahme, dass nginx auf dem Frontend verwendet wird.

Abwehr von DDoS

Was tun, wenn DDoS kommt? Die traditionelle Selbstverteidigungstechnik besteht darin, die Protokolldatei des HTTP-Servers zu lesen, ein Grep-Muster zu schreiben (das Bot-Anfragen abfängt) und jeden zu sperren, der darunter fällt. Diese Technik wird funktionieren ... wenn Sie Glück haben. Es gibt zwei Arten von Botnets, die beide gefährlich sind, aber auf unterschiedliche Weise. Einer kommt sofort vollständig auf die Website, der andere - allmählich. Der erste tötet alles auf einmal, aber das Ganze taucht in den Protokollen auf, und wenn Sie sie grüßen und alle IP-Adressen sperren, dann sind Sie der Gewinner. Das zweite Botnetz legt die Seite sanft und vorsichtig ab, aber Sie müssen es wahrscheinlich für einen Tag sperren. Es ist wichtig, dass jeder Administrator versteht: Wenn Sie vorhaben, mit grep zu kämpfen, müssen Sie bereit sein, ein paar Tage für die Bekämpfung des Angriffs aufzuwenden. Im Folgenden finden Sie Tipps, wo Sie vorab Strohhalme hinlegen können, damit ein Sturz nicht so schmerzhaft ist.

3. Verwenden Sie das Testcookie-Modul

Vielleicht das wichtigste, effektivste und operative Rezept dieses Artikels. Wenn DDoS auf Ihre Website gelangt, kann das von @kyprizel entwickelte Modul testcookie-nginx der effektivste Weg sein, sich zu wehren. Die Idee ist einfach. Meistens sind Bots, die HTTP-Flooding implementieren, ziemlich dumm und haben keine HTTP-Cookie- und Umleitungsmechanismen. Manchmal stoßen fortgeschrittenere auf sie – sie können Cookies verwenden und Weiterleitungen verarbeiten, aber fast nie trägt ein DoS-Bot eine vollwertige JavaScript-Engine (obwohl dies immer häufiger vorkommt). Testcookie-nginx fungiert während eines L7-DDoS-Angriffs als schneller Filter zwischen Bots und dem Backend, sodass Sie Junk-Anfragen herausfiltern können. Was ist in diesen Kontrollen enthalten? Weiß der Client, wie man HTTP Redirect durchführt, unterstützt er JavaScript, ist es der Browser, für den er sich ausgibt (weil JavaScript überall anders ist und wenn der Client sagt, dass es beispielsweise Firefox ist, dann können wir das überprüfen). Die Verifizierung wird mithilfe von Cookies mit unterschiedlichen Methoden durchgeführt:

  • "Set-Cookie" + Weiterleitung mit 301 HTTP Location;
  • "Set-Cookie" + Weiterleitung mit HTML-Meta-Aktualisierung;
  • beliebige Vorlage, und Sie können JavaScript verwenden.

Um ein automatisches Parsing zu vermeiden, kann das Validierungs-Cookie mit AES-128 verschlüsselt und später auf der Seite des JavaScript-Clients entschlüsselt werden. Die neue Version des Moduls verfügt über die Möglichkeit, Cookies über Flash zu setzen, wodurch Sie auch Bots effektiv aussortieren können (was Flash in der Regel nicht unterstützt), blockiert jedoch den Zugriff für viele legitime Benutzer (tatsächlich , alle Mobilgeräte). Es ist bemerkenswert, dass es extrem einfach ist, testcookie-nginx zu verwenden. Insbesondere der Entwickler gibt mit Config-Samples für nginx mehrere anschauliche Anwendungsbeispiele (für unterschiedliche Angriffsfälle) an.

Neben den Vorteilen haben Testcookies auch Nachteile:

  • schneidet alle Bots, einschließlich Googlebot. Wenn Sie das Testcookie dauerhaft belassen möchten, stellen Sie sicher, dass Sie nicht aus den Suchergebnissen verschwinden;
  • verursacht Probleme für Benutzer mit Browsern Links, w3m und dergleichen;
  • speichert nicht vor Bots, die mit einer vollwertigen Browser-Engine mit JavaScript ausgestattet sind.

Mit einem Wort, testcookie_module ist nicht universell. Aber von einer Reihe von Dingen, wie zum Beispiel primitiven Toolkits in Java und C#, hilft es. So schneiden Sie einen Teil der Bedrohung ab.

4. Code 444

DDoSer zielen oft auf den ressourcenintensivsten Teil einer Website ab. Ein typisches Beispiel ist eine Suche, die komplexe Datenbankabfragen durchführt. Das können sich Angreifer natürlich zunutze machen, indem sie mehrere zehntausend Anfragen auf einmal in die Suchmaschine laden. Was wir tun können? Deaktivieren Sie die Suche vorübergehend. Während Kunden nicht in der Lage sein werden, mit integrierten Tools nach den benötigten Informationen zu suchen, bleibt die gesamte Hauptseite in Betrieb, bis Sie die Wurzel aller Probleme gefunden haben. Nginx unterstützt den nicht standardmäßigen 444-Code, mit dem Sie die Verbindung einfach schließen und nichts als Antwort zurückgeben können:

Standort /Suche ( return 444; )

So ist es beispielsweise möglich, eine Filterung nach URL schnell umzusetzen. Wenn Sie sicher sind, dass Anfragen an location /search nur von Bots kommen (Ihr Vertrauen basiert beispielsweise auf der Tatsache, dass Ihre Website überhaupt keinen /search-Abschnitt hat), können Sie das ipset-Paket auf dem Server installieren und verbieten Sie Bots mit einem einfachen Shell-Skript:

Ipset -N ban iphash tail -f access.log | während lesen LINE; echo "$LINE" | \ cut -d""" -f3 | cut -d" " -f2 | grep -q 444 && ipset -A ban "$(L%% *)"; fertig

Wenn das Format der Protokolldateien nicht dem Standard entspricht (nicht kombiniert) oder Sie aus anderen Gründen als dem Status der Antwort verbieten müssen, müssen Sie cut möglicherweise durch einen regulären Ausdruck ersetzen.

5. Geobanim

Der nicht standardmäßige Antwortcode 444 kann auch nützlich sein, um Clients schnell auf der Grundlage von Georeferenzen zu sperren. Sie können einzelne Länder, in denen Sie sich unwohl fühlen, stark einschränken. Es ist beispielsweise unwahrscheinlich, dass ein Online-Kamerageschäft aus Rostow am Don viele Benutzer in Ägypten hat. Dies ist kein sehr guter Weg (um es klar zu sagen - widerlich), weil die GeoIP-Daten ungenau sind und Rostovites manchmal in den Urlaub nach Ägypten fliegen. Aber wenn Sie nichts zu verlieren haben, dann folgen Sie den Anweisungen:

  1. Verbinden Sie das GeoIP-Modul mit nginx (wiki.nginx.org/HttpGeoipModule).
  2. Zeigen Sie Georeferenzinformationen im Zugriffsprotokoll an.
  3. Als nächstes, nachdem Sie das obige Shell-Skript geändert haben, grep nginx's accesslog und fügen Sie dem Verbot geografisch gekickte Clients hinzu.

Wenn die Bots beispielsweise hauptsächlich aus China stammten, könnte dies hilfreich sein.

6. Neuronales Netzwerk (PoC)

Schließlich können Sie die Erfahrung des Benutzers @SaveTheRbtz wiederholen, der das neuronale Netzwerk PyBrain genommen, das Protokoll hineingestopft und die Anfragen analysiert hat (habrahabr.ru/post/136237). Die Methode funktioniert, wenn auch nicht universell :). Aber wenn Sie Ihre Site wirklich von innen kennen – und das sollten Sie als Systemadministrator –, dann stehen die Chancen gut, dass Ihnen in den tragischsten Situationen ein solches Tool auf der Grundlage von neuronalen Netzwerken, Schulungen und im Voraus gesammelten Informationen helfen wird. In diesem Fall ist es sehr nützlich, access.log vor dem Start von DDoS zu haben, da es fast 100% der legitimen Clients beschreibt und daher einen hervorragenden Datensatz zum Trainieren eines neuronalen Netzwerks darstellt.Außerdem sind Bots nicht immer im sichtbar Protokoll.

Problemdiagnose

Die Seite funktioniert nicht - warum? Ist es DDoSed oder ist es ein Engine-Bug, der vom Programmierer nicht bemerkt wurde? Nicht wichtig. Suchen Sie nicht nach einer Antwort auf diese Frage. Wenn Sie glauben, dass Ihre Website angegriffen werden könnte, wenden Sie sich an Unternehmen, die Schutz vor Angriffen bieten – eine Reihe von Anti-DDoS-Diensten bieten den ersten Tag nach der Verbindung kostenlos an – und verschwenden Sie keine Zeit mehr mit der Suche nach Symptomen. Konzentrieren Sie sich auf das Problem. Wenn die Website langsam läuft oder sich überhaupt nicht öffnet, stimmt etwas mit ihrer Leistung nicht, und – unabhängig davon, ob es sich um einen DDoS-Angriff handelt oder nicht – müssen Sie als Fachmann verstehen, was dies verursacht. Wir haben wiederholt erlebt, wie ein Unternehmen, das aufgrund einer DDoS-Attacke Schwierigkeiten beim Betrieb seiner Seite hatte, anstatt nach Schwachstellen in der Seiten-Engine zu suchen, versuchte, Anträge an das Innenministerium zu schicken, um die Angreifer zu finden und zu bestrafen. Machen Sie solche Fehler nicht. Die Suche nach Cyberkriminellen ist ein schwieriger und langwieriger Prozess, der durch die Struktur und die Prinzipien des Internets kompliziert wird, und das Problem mit dem Betrieb der Website muss umgehend gelöst werden. Lassen Sie die Techniker herausfinden, was den Leistungsabfall der Website verursacht, und die Anwälte können die Beschwerde schreiben.

7. Verwenden Sie einen Profiler und Debugger

Bei der gängigsten Plattform zum Erstellen von Websites – PHP + MySQL – kann der Engpass mit den folgenden Tools gefunden werden:

  • der Xdebug-Profiler zeigt, mit welchen Aufrufen die Anwendung die meiste Zeit verbringt;
  • der eingebaute APD-Debugger und die Debug-Ausgabe an das Fehlerprotokoll helfen Ihnen, genau herauszufinden, welcher Code diese Aufrufe durchführt;
  • In den meisten Fällen wird der Hund in der Komplexität und Schwere von Datenbankabfragen begraben. Hier hilft die in die Datenbank-Engine integrierte Explain-SQL-Anweisung.

Wenn die Site auf dem Rücken liegt und Sie nichts verlieren, trennen Sie die Verbindung zum Netzwerk, sehen Sie sich die Protokolle an und versuchen Sie, sie abzuspielen. Wenn dies nicht der Fall ist, gehen Sie die Seiten durch und sehen Sie sich die Basis an.

Das Beispiel ist für PHP, aber die Idee ist für jede Plattform gültig. Ein Entwickler, der Softwareprodukte in einer beliebigen Programmiersprache schreibt, muss in der Lage sein, sowohl den Debugger als auch den Profiler schnell zu verwenden. Frühzeitig üben!

8. Fehler analysieren

Analysieren Sie die Menge des Datenverkehrs, die Antwortzeit des Servers und die Anzahl der Fehler. Siehe Protokolle dazu. In nginx wird die Antwortzeit des Servers im Protokoll durch zwei Variablen aufgezeichnet: request_time und upstream_response_time. Die erste ist die Gesamtausführungszeit der Anfrage, einschließlich Netzwerkverzögerungen zwischen dem Benutzer und dem Server; die zweite gibt an, wie lange das Backend (Apache, php_fpm, uwsgi...) die Anfrage ausgeführt hat. Der Wert upstream_response_time ist für Seiten mit vielen dynamischen Inhalten und aktiver Kommunikation zwischen Frontend und Datenbank extrem wichtig und sollte nicht vernachlässigt werden. Sie können die folgende Konfiguration als Protokollformat verwenden:

Log_format xakep_log "$remote_addr - $remote_user [$time_local] " ""$request" $status $body_bytes_sent " ""$http_referer" "$http_user_agent" $request_time \ $upstream_response_time";

Dies ist ein kombiniertes Format mit zusätzlichen Timing-Feldern.

9. Verfolgen Sie Anfragen pro Sekunde

Sehen Sie sich auch die Anzahl der Anfragen pro Sekunde an. Im Fall von nginx können Sie diesen Wert mit folgendem Shell-Befehl grob abschätzen (die Variable ACCESS_LOG enthält den Pfad zum nginx-Request-Log im kombinierten Format):

Echo $(($(fgrep -c "$(env LC_ALL=C date [E-Mail geschützt]$(($(date \ +%s)-60)) +%d/%b/%Y:%H:%M)" "$ACCESS_LOG")/60))

Im Vergleich zum normalen Niveau für diese Tageszeit kann die Anzahl der Anfragen pro Sekunde sowohl sinken als auch steigen. Sie wachsen, wenn ein großes Botnet ankommt, und fallen, wenn das eingehende Botnet die Website zum Absturz bringt, wodurch sie für legitime Benutzer vollständig unzugänglich wird, und gleichzeitig fordert das Botnet keine Statik an, legitime Benutzer jedoch schon. Der Rückgang der Anfragenzahlen ist gerade statisch bedingt zu beobachten. Aber auf die eine oder andere Weise sprechen wir über ernsthafte Veränderungen der Indikatoren. Wenn dies plötzlich passiert - während Sie versuchen, das Problem selbst zu lösen, und wenn Sie es nicht sofort im Protokoll sehen, ist es besser, schnell den Motor zu überprüfen und parallel Spezialisten zu kontaktieren.

10. Vergessen Sie tcpdump nicht

Viele Leute vergessen, dass tcpdump ein großartiges Diagnosetool ist. Ich werde ein paar Beispiele geben. Im Dezember 2011 wurde ein Fehler im Linux-Kernel entdeckt, als dieser eine TCP-Verbindung öffnete, wenn die SYN- und RST-TCP-Segment-Flags gesetzt waren. Der erste Fehlerbericht wurde von einem Systemadministrator aus Russland gesendet, dessen Ressource auf diese Weise angegriffen wurde - die Angreifer haben früher als die ganze Welt von der Schwachstelle erfahren. Offensichtlich half ihm eine solche Diagnose. Ein weiteres Beispiel: nginx hat eine nicht sehr schöne Eigenschaft - es schreibt erst ins Log, nachdem die Anfrage vollständig verarbeitet wurde. Es gibt Situationen, in denen die Site ausgefallen ist, nichts funktioniert und in den Protokollen nichts steht. Dies liegt daran, dass alle Anforderungen, die derzeit den Server laden, noch nicht abgeschlossen sind. Tcpdump hilft auch hier.

Es ist so gut, dass ich den Leuten geraten habe, keine Binärprotokolle zu verwenden, bis sie sicher sind, dass alles in Ordnung ist, denn Textprotokolle lassen sich mit tcpdump leicht debuggen, Binärprotokolle jedoch nicht.Als Diagnosewerkzeug ist der Sniffer jedoch gut - als Mittel zur Aufrechterhaltung der Produktion" und er ist beängstigend. Es kann leicht mehrere Pakete auf einmal verlieren und Ihren Benutzerverlauf durcheinander bringen. Es ist bequem, seine Ausgabe zu beobachten, und es wird für die manuelle Diagnose und ein Verbot nützlich sein, aber versuchen Sie, nichts Kritisches darauf zu stützen. Ein weiteres beliebtes Tool für "Warming Requests" - ngrep - versucht in der Regel standardmäßig, rund zwei Gigabyte nicht auswechselbaren Speicher anzufordern und beginnt erst dann, seine Anforderungen zu reduzieren.

11. Angriff oder nicht?

Wie unterscheidet man beispielsweise einen DDoS-Angriff von der Wirkung einer Werbekampagne? Diese Frage mag lächerlich erscheinen, aber dieses Thema ist nicht weniger kompliziert. Es gibt einige ziemlich lustige Fälle. Für einige gute Jungs, als sie sich anspannten und das Caching gründlich vermasselten, wurde die Site für ein paar Tage krank. Es stellte sich heraus, dass diese Seite mehrere Monate lang unmerklich von einigen Deutschen gedatamint wurde und bevor das Caching der Seite der Seite für diese Deutschen mit all den Bildern optimiert wurde, dauerte das Laden ziemlich lange. Als die Seite sofort aus dem Cache ausgegeben wurde, begann der Bot, der keine Zeitüberschreitungen hatte, auch sofort damit, sie zu sammeln. Es war schwer. Der Fall ist aus dem Grund besonders schwierig, dass, wenn Sie selbst die Einstellung geändert haben (Caching aktiviert) und die Site danach nicht mehr funktioniert, wer dann Ihrer Meinung nach und der Meinung des Chefs schuld ist? Exakt. Sehen Sie einen starken Anstieg der Anfragenzahlen, dann schauen Sie zum Beispiel in Google Analytics nach, wer auf welche Seiten gekommen ist.

Webserver-Tuning

Was sind die anderen Eckdaten? Natürlich können Sie den "Standard" von nginx festlegen und hoffen, dass für Sie alles in Ordnung ist. Allerdings passieren nicht immer gute Dinge. Daher muss der Administrator eines jeden Servers viel Zeit für die Feinabstimmung und Optimierung von nginx aufwenden.

12. Ressourcen (Puffergrößen) in nginx begrenzen

Was ist zuerst zu beachten? Jede Ressource hat ein Limit. Zunächst einmal betrifft es RAM. Daher sollten die Größen von Headern und allen verwendeten Puffern auf angemessene Werte pro Client und pro Server insgesamt begrenzt werden. Sie müssen in der nginx-Konfiguration registriert werden.

  • client_header_buffer_size_ _ Legt die Puffergröße zum Lesen des Client-Request-Headers fest. Wenn die Anforderungszeichenfolge oder das Anforderungsheaderfeld nicht vollständig in diesen Puffer passt, werden größere Puffer zugewiesen, die von der Direktive large_client_header_buffers angegeben werden.
  • large_client_header_buffers Gibt die maximale Anzahl und Größe von Puffern zum Lesen des Headers für große Clientanforderungen an.
  • client_body_buffer_size Legt die Puffergröße zum Lesen des Clientanforderungstexts fest. Wenn der Anforderungstext größer als der angegebene Puffer ist, wird der gesamte Anforderungstext oder nur ein Teil davon in eine temporäre Datei geschrieben.
  • client_max_body_size Legt die maximal zulässige Größe für einen Clientanforderungstext fest, die im Feld „Content-Length“ des Anforderungsheaders angegeben ist. Wenn die Größe größer als die angegebene ist, gibt der Client den Fehler 413 (Request Entity Too Large) zurück.

13. Richten Sie Timeouts in nginx ein

Zeit ist auch eine Ressource. Daher sollte der nächste wichtige Schritt darin bestehen, alle Timeouts festzulegen, was wiederum sehr wichtig ist, um sich sorgfältig in den nginx-Einstellungen zu registrieren.

  • reset_timedout_connection ein; Hilft beim Umgang mit Sockets, die in der FIN-WAIT-Phase stecken.
  • client_header_timeout Gibt eine Zeitüberschreitung beim Lesen eines Clientanforderungsheaders an.
  • client_body_timeout Gibt eine Zeitüberschreitung beim Lesen des Hauptteils einer Clientanforderung an.
  • keepalive_timeout Legt die Zeitüberschreitung fest, während der die Keep-Alive-Verbindung mit dem Client nicht vom Server geschlossen wird. Viele haben Angst, hier große Werte anzusetzen, aber wir sind uns nicht sicher, ob diese Angst berechtigt ist. Sie können optional einen Timeout-Wert im Keep-Alive-HTTP-Header festlegen, aber Internet Explorer ist dafür bekannt, diesen Wert zu ignorieren.
  • send_timeout Gibt ein Timeout beim Senden einer Antwort an den Client an. Wenn der Client nach dieser Zeit nichts erhält, wird die Verbindung geschlossen.

Sofort stellt sich die Frage: Welche Parameter von Puffern und Timeouts sind korrekt? Hier gibt es kein Universalrezept, jede Situation hat ihre eigene. Aber es gibt einen bewährten Ansatz. Es ist notwendig, die Mindestwerte festzulegen, bei denen die Site (in Friedenszeiten) betriebsbereit bleibt, dh Seiten zurückgegeben und Anfragen verarbeitet werden. Dies wird nur durch Tests bestimmt - sowohl von Desktops als auch von mobilen Geräten. Der Algorithmus zum Ermitteln der Werte jedes Parameters (Puffergröße oder Timeout):

  1. Wir setzen den mathematischen Minimalwert des Parameters.
  2. Wir beginnen mit der Durchführung von Site-Tests.
  3. Wenn alle Funktionen der Seite ohne Probleme funktionieren, ist der Parameter definiert. Wenn nicht, erhöhen Sie den Wert des Parameters und fahren Sie mit Schritt 2 fort.
  4. Wenn der Wert des Parameters sogar den Standardwert überschreitet, ist dies ein Grund zur Diskussion im Entwicklungsteam.

In manchen Fällen sollte die Überarbeitung dieser Parameter zu einem Refactoring / Redesign der Seite führen. Wenn die Site beispielsweise nicht ohne dreiminütige AJAX-lange Abfrageanforderungen funktioniert, müssen Sie das Timeout nicht erhöhen, sondern die lange Abfrage durch etwas anderes ersetzen - ein Botnetz aus 20.000 Computern, das drei Minuten lang an Anforderungen hängt. wird leicht einen durchschnittlichen billigen Server töten.

14. Verbindungen in nginx begrenzen (limit_conn und limit_req)

Nginx kann auch Verbindungen, Anfragen usw. einschränken. Wenn Sie sich nicht sicher sind, wie sich ein bestimmter Teil Ihrer Website verhalten wird, sollten Sie ihn idealerweise testen, herausfinden, wie viele Anfragen er verarbeiten kann, und dies in Ihre nginx-Konfiguration schreiben. Es ist eine Sache, wenn die Website nicht verfügbar ist und Sie kommen und es abholen können. Und es ist eine ganz andere Sache - wenn es so weit lag, dass der Server in den Swap ging. In diesem Fall ist es oft einfacher, neu zu starten, als auf seine triumphale Rückkehr zu warten.

Nehmen wir an, die Seite hat Abschnitte mit den vielsagenden Namen /download und /search. Dabei gehen wir wie folgt vor:

  • wir wollen nicht, dass Bots (oder Leute mit übereifrigen rekursiven Download-Managern) unsere TCP-Verbindungstabelle mit ihren Downloads füllen;
  • Wir wollen nicht, dass Bots (oder streunende Suchmaschinen-Crawler) die Rechenressourcen des DBMS mit vielen Suchanfragen erschöpfen.

Für diese Zwecke passt die folgende Konfiguration:

Http ( limit_conn_zone $binary_remote_addr zone=download_c:10m; limit_req_zone $binary_remote_addr zone=search_r:10m \ rate=1r/s; server ( location /download/ ( limit_conn download_c 1; # Other configuration location ) location /search/ ( limit_req zone= search_r burst=5; # Anderer Konfigurationsspeicherort ) ) )

Es ist in der Regel sinnvoll, Limits limit_conn und limit_req für Stellen zu setzen, an denen sich aufwendig auszuführende Skripte befinden (Suche ist im Beispiel angedeutet, und das ist kein Zufall). Einschränkungen müssen basierend auf den Ergebnissen von Belastungs- und Regressionstests sowie dem gesunden Menschenverstand ausgewählt werden.

Beachten Sie den 10m-Parameter im Beispiel. Das bedeutet, dass für die Berechnung dieses Limits ein Wörterbuch mit einem Puffer von 10 Megabyte und kein Megabyte mehr zugeteilt wird. In dieser Konfiguration können dadurch 320.000 TCP-Sitzungen überwacht werden. Um die Speichernutzung zu optimieren, wird die Variable $binary_remote_addr als Schlüssel im Wörterbuch verwendet, das die IP-Adresse des Benutzers in binärer Form enthält und weniger Speicher beansprucht als die reguläre String-Variable $remote_addr. Es sollte beachtet werden, dass der zweite Parameter der Anweisung limit_req_zone nicht nur IP, sondern auch jede andere in diesem Zusammenhang verfügbare nginx-Variable sein kann - zum Beispiel in dem Fall, wenn Sie keinen fehlerverzeihenderen Modus für den Proxy bereitstellen möchten, Sie können $binary_remote_addr$http_user_agent oder $binary_remote_addr$http_cookie_myc00kiez verwenden - aber solche Konstruktionen sollten mit Vorsicht verwendet werden, da diese Variablen im Gegensatz zur 32-Bit-$binary_remote_addr viel länger sein können und die von Ihnen deklarierten "10m" plötzlich enden können.

Trends bei DDoS

  1. Die Schlagkraft von Netzwerk- und Transportschichtangriffen nimmt ständig zu. Das Potenzial eines durchschnittlichen SYN-Flood-Angriffs hat bereits 10 Millionen Pakete pro Sekunde erreicht.
  2. Angriffe auf das DNS waren in letzter Zeit besonders gefragt. UDP-Flooding mit gültigen DNS-Anfragen mit gefälschten Quell-IP-Adressen ist einer der am einfachsten zu implementierenden Angriffe und schwer zu bekämpfen. Viele große russische Unternehmen (einschließlich Hosting-Unternehmen) haben in letzter Zeit Probleme aufgrund von Angriffen auf ihre DNS-Server erlebt. Je weiter entfernt, desto mehr solcher Angriffe werden sein und ihre Macht wird wachsen.
  3. Den äußeren Anzeichen nach zu urteilen, werden die meisten Botnets nicht zentral gesteuert, sondern über ein Peer-to-Peer-Netzwerk. Dies gibt Angreifern die Möglichkeit, die Aktionen des Botnetzes rechtzeitig zu synchronisieren – wurden früher Steuerbefehle in zig Minuten über ein Botnetz von 5.000 Rechnern verteilt, zählen jetzt Sekunden, und Ihre Site kann plötzlich eine sofortige Verhundertfachung der Anzahl erfahren Anfragen.
  4. Der Anteil an Bots, die mit einer vollwertigen Browser-Engine mit JavaScript ausgestattet sind, ist noch gering, wächst aber stetig. Ein solcher Angriff ist mit eingebauten improvisierten Mitteln schwieriger abzuwehren, daher sollten Heimwerker diesen Trend mit Vorsicht beobachten.

Vorbereiten des Betriebssystems

Neben der Feinabstimmung von nginx müssen Sie sich um die Einstellungen für den Netzwerkstack des Systems kümmern. Fügen Sie zumindest sofort net.ipv4.tcp_syncookies in sysctl ein, um sich sofort vor einem kleinen SYN-Flood-Angriff zu schützen.

15. Stimmen Sie den Kern ab

Achten Sie auf die erweiterten Einstellungen des Netzwerkteils (Kernel), wiederum in Bezug auf Timeouts und Speicher. Es gibt wichtigere und weniger wichtige. Zuallererst müssen Sie Folgendes beachten:

  • net.ipv4.tcp_fin_timeout Die Zeit, die der Socket in der TCP-Phase FIN-WAIT-2 verbringt (Warten auf ein FIN/ACK-Segment).
  • net.ipv4.tcp_(,r,w)speicher TCP-Socket-Empfangspuffergröße. Drei Werte: Minimum, Standardwert und Maximum.
  • net.core.(r,w)mem_max Gleiches gilt für Nicht-TCP-Puffer.

Bei einer Verbindung von 100 Mbit/s sind die Default-Werte noch irgendwie passend; Wenn Sie jedoch mindestens Gigabit pro Sekunde zur Verfügung haben, ist es besser, Folgendes zu verwenden:

sysctl -w net.core.rmem_max=8388608 sysctl -w net.core.wmem_max=8388608 sysctl -w net.ipv4.tcp_rmem="4096 87380 8388608" sysctl -w net.ipv4.tcp_wmem="4096 65536 8388608" sysctl - w net.ipv4.tcp_fin_timeout=10

16. Überarbeitung /proc/sys/net/**

Es ist ideal, alle Parameter /proc/sys/net/** zu studieren. Wir müssen sehen, wie sie sich von den Standardwerten unterscheiden, und verstehen, wie angemessen sie exponiert sind. Ein Linux-Entwickler (oder Systemadministrator), der die Funktionsweise des Internetdienstes unter seiner Kontrolle versteht und optimieren möchte, sollte die Dokumentation aller Parameter des Kernel-Netzwerkstacks mit Interesse lesen. Vielleicht findet er dort spezifische Variablen für seine Site, die nicht nur helfen, die Site vor Eindringlingen zu schützen, sondern auch ihre Arbeit beschleunigen.

Fürchte dich nicht!

Tag für Tag löschen erfolgreiche DDoS-Angriffe den E-Commerce, erschüttern die Medien, schlagen die größten Zahlungssysteme mit einem Schlag außer Gefecht. Millionen von Internetbenutzern verlieren den Zugriff auf wichtige Informationen. Die Bedrohung ist dringend, also müssen Sie ihr voll bewaffnet begegnen. Mach deine Hausaufgaben, hab keine Angst und behalte einen kühlen Kopf. Sie sind weder der Erste noch der Letzte, der einem DDoS-Angriff auf Ihre Website ausgesetzt ist, und es liegt an Ihnen, geleitet von Ihrem Wissen und Ihrem gesunden Menschenverstand, die Folgen des Angriffs zu minimieren.

Auf einem Computersystem, um es zum Ausfall zu bringen, d.h. die Schaffung solcher Bedingungen, unter denen legale (rechtmäßige) Benutzer des Systems nicht auf die vom System bereitgestellten Ressourcen (Server) zugreifen können oder dieser Zugriff erschwert wird. Auch der Ausfall des „feindlichen“ Systems kann ein Schritt in Richtung Systembeherrschung sein (wenn die Software im Notfall kritische Informationen preisgibt – zB Version, Teil des Programmcodes etc.). Aber häufiger ist es ein Maß für wirtschaftlichen Druck: Ausfallzeiten eines umsatzgenerierenden Dienstes, Rechnungen des Anbieters und Maßnahmen zur Vermeidung eines Angriffs treffen das „Ziel“ erheblich in der Tasche.

Erfolgt ein Angriff gleichzeitig von einer Vielzahl von Rechnern aus, spricht man von DDoS-Angriff(aus dem Englischen. Verteilter Denial-of-Service, verteilter Denial-of-Service-Angriff). In einigen Fällen führt eine unbeabsichtigte Aktion zu einem tatsächlichen DDoS-Angriff, z. B. das Setzen eines Links auf einer beliebten Internetressource zu einer Website, die auf einem nicht sehr produktiven Server gehostet wird (Slash-Dot-Effekt). Ein großer Zustrom von Benutzern führt zu einer Überschreitung der zulässigen Last auf dem Server und folglich zu einem Denial-of-Service für einige von ihnen.

Arten von DoS-Angriffen

Es gibt verschiedene Gründe, warum eine DoS-Bedingung auftreten kann:

  • Fehler im Programmcode, was zum Zugriff auf ein unbenutztes Fragment des Adressraums, zur Ausführung einer ungültigen Anweisung oder zu einer anderen nicht behandelten Ausnahme führt, wenn das Serverprogramm abstürzt - das Serverprogramm. Ein klassisches Beispiel ist die nullbasierte Referenzierung. Null) Adresse.
  • Unzureichende Validierung von Benutzerdaten, was zu einem unendlichen oder langen Zyklus oder einem erhöhten langfristigen Verbrauch von Prozessorressourcen (bis zur Erschöpfung der Prozessorressourcen) oder der Zuweisung einer großen Menge an RAM (bis zur Erschöpfung des verfügbaren Speichers) führt.
  • Flut(Englisch) Flut- "Flood", "Overflow") - ein Angriff, der mit einer großen Anzahl von normalerweise bedeutungslosen oder falsch formatierten Anfragen an ein Computersystem oder eine Netzwerkausrüstung verbunden ist, die zum Ziel hat oder aufgrund der Erschöpfung der Systemressourcen zu einem Systemausfall führte - Prozessor, Speicher oder Kommunikationskanäle.
  • Angriff der zweiten Art- ein Angriff, der darauf abzielt, einen Fehlalarm des Schutzsystems auszulösen und so zur Nichtverfügbarkeit der Ressource zu führen.

Erfolgt ein Angriff (meist Flood) gleichzeitig von einer großen Anzahl von IP-Adressen – von mehreren im Netzwerk verteilten Rechnern – dann heißt es in diesem Fall verteilt Denial-of-Service-Angriff ( DDoS).

Ausnutzung von Fehlern

Ausbeuten bezieht sich auf ein Programm, einen Programmcode oder eine Folge von Programmbefehlen, die Schwachstellen in Software ausnutzen und zum Angriff auf ein Cybersystem verwendet werden. Von den Exploits, die zu einem DoS-Angriff führen, aber beispielsweise ungeeignet sind, die Kontrolle über ein "feindliches" System zu übernehmen, sind die bekanntesten WinNuke und Ping of Death (Ping of Death).

Flut

Für Überschwemmungen als Verstoß gegen die Netiquette siehe Überschwemmungen.

Flut Sie rufen einen riesigen Strom bedeutungsloser Anfragen von verschiedenen Computern auf, um dem "feindlichen" System (Prozessor, RAM oder Kommunikationskanal) Arbeit zu nehmen und es dadurch vorübergehend zu deaktivieren. Der Begriff „DDoS-Attacke“ ist fast gleichbedeutend mit dem Begriff „Flood“, und im Alltag sind beide oft austauschbar („flood the server“ = „DDoS’it the server“).

Um eine Flut zu erzeugen, können sowohl gewöhnliche Netzwerkdienstprogramme wie Ping (dies ist beispielsweise der Internet-Community „Upyachka“ bekannt) als auch spezielle Programme verwendet werden. Die Möglichkeit von DDoS ist in Botnetzen oft „eingenäht“. Wird auf einer stark frequentierten Seite eine Cross-Site-Scripting-Schwachstelle oder die Möglichkeit gefunden, Bilder von anderen Ressourcen einzubinden, kann diese Seite auch für einen DDoS-Angriff genutzt werden.

Kommunikationskanal und TCP-Subsystemflut

Jeder Computer, der über das TCP / IP-Protokoll mit der Außenwelt kommuniziert, ist diesen Arten von Überschwemmungen ausgesetzt:

  • SYN-Flood – Bei dieser Art von Flood-Angriff werden eine große Anzahl von SYN-Paketen über das TCP-Protokoll an den angegriffenen Knoten gesendet (Anforderungen zum Öffnen einer Verbindung). Gleichzeitig ist auf dem angegriffenen Rechner nach kurzer Zeit die Anzahl der zum Öffnen verfügbaren Sockets (Software-Netzwerk-Sockets, Ports) erschöpft und der Server reagiert nicht mehr.
  • UDP-Flood - Diese Art von Flood greift nicht den Zielcomputer an, sondern seinen Kommunikationskanal. Anbieter gehen vernünftigerweise davon aus, dass UDP-Pakete zuerst zugestellt werden sollten, während TCP warten kann. Eine große Anzahl von UDP-Paketen unterschiedlicher Größe verstopft den Kommunikationskanal, und der Server, der über das TCP-Protokoll läuft, reagiert nicht mehr.
  • ICMP-Flood - das Gleiche, aber mit Hilfe von ICMP-Paketen.

Flut der Anwendungsschicht

Viele Dienste sind so konzipiert, dass eine kleine Anfrage einen großen Verbrauch an Rechenleistung auf dem Server verursachen kann. In diesem Fall wird nicht der Kommunikationskanal oder das TCP-Subsystem angegriffen, sondern der Dienst (Service) selbst – eine Flut solcher „kranker“ Anfragen. Beispielsweise sind Webserver anfällig für HTTP Flooding – entweder ein einfaches GET / oder eine komplexe Datenbankabfrage wie GET /index.php?search= kann verwendet werden, um einen Webserver zu deaktivieren<случайная строка> .

Erkennung von DoS-Angriffen

Es besteht die Meinung, dass spezielle Tools zur Erkennung von DoS-Angriffen nicht erforderlich sind, da die Tatsache eines DoS-Angriffs nicht übersehen werden kann. In vielen Fällen stimmt das. Allerdings wurden recht häufig erfolgreiche DoS-Angriffe beobachtet, die von den Opfern erst nach 2-3 Tagen bemerkt wurden. Es kam vor, dass die negativen Folgen eines Angriffs ( Flut-Angriffe) führte zu überhöhten Kosten für die Bezahlung von überschüssigem Internetverkehr, was erst beim Erhalt einer Rechnung von einem Internetanbieter festgestellt wurde. Darüber hinaus sind viele Intrusion Detection-Methoden in der Nähe des Angriffsziels unwirksam, aber auf Netzwerk-Backbones effektiv. In diesem Fall ist es ratsam, Erkennungssysteme genau dort zu installieren und nicht zu warten, bis der angegriffene Benutzer es selbst bemerkt und Hilfe sucht. Um DoS-Angriffen effektiv entgegenzuwirken, ist es außerdem notwendig, die Art, Art und andere Merkmale von DoS-Angriffen zu kennen, und Erkennungssysteme ermöglichen es, diese Informationen schnell zu erhalten.

Methoden zur Erkennung von DoS-Angriffen können in mehrere große Gruppen unterteilt werden:

  • Signatur - basierend auf einer qualitativen Analyse des Verkehrs.
  • statistisch - basierend auf einer quantitativen Analyse des Verkehrs.
  • hybrid (kombiniert) - kombiniert die Vorteile der beiden oben genannten Methoden.

DoS-Schutz

Maßnahmen zur Abwehr von DoS-Angriffen lassen sich in passive und aktive sowie präventive und reaktive Maßnahmen unterteilen.

Nachfolgend finden Sie eine kurze Liste der wichtigsten Methoden.

  • Verhütung. Verhinderung der Gründe, die bestimmte Personen veranlassen, DoS-Angriffe zu organisieren und durchzuführen. (Sehr häufig sind Cyberangriffe im Allgemeinen das Ergebnis persönlicher Missstände, politischer, religiöser und anderer Meinungsverschiedenheiten, provokativen Verhaltens des Opfers usw.)
  • Filtern und Blackholing. Blockieren des Datenverkehrs von angreifenden Computern. Die Wirksamkeit dieser Methoden nimmt ab, wenn Sie sich dem Angriffsobjekt nähern, und nimmt zu, wenn Sie sich der angreifenden Maschine nähern.
  • Umgekehrtes DDOS- Umleitung des für den Angriff verwendeten Datenverkehrs an den Angreifer.
  • Beseitigung von Schwachstellen. Arbeitet nicht dagegen Flut-Angriffe, für die "Verwundbarkeit" die Endlichkeit bestimmter Systemressourcen ist.
  • Erhöhung der Ressourcen. Natürlich bietet es keinen absoluten Schutz, aber es ist ein guter Hintergrund, um andere Arten von Schutz gegen DoS-Angriffe anzuwenden.
  • Zerstreuung. Aufbau verteilter und duplizierender Systeme, die nicht aufhören, Benutzer zu bedienen, selbst wenn einige ihrer Elemente aufgrund eines DoS-Angriffs nicht mehr verfügbar sind.
  • Ausweichen. Verschieben des unmittelbaren Angriffsziels (Domänenname oder IP-Adresse) weg von anderen Ressourcen, die häufig zusammen mit dem unmittelbaren Angriffsziel ebenfalls betroffen sind.
  • Aktive Reaktion. Auswirkungen auf die Quellen, den Organisator oder die Kontrollzentrale des Angriffs, sowohl durch menschengemachte als auch durch organisatorische und rechtliche Mittel.
  • Verwendung von Ausrüstung zur Abwehr von DoS-Angriffen. Zum Beispiel DefensePro® (Radware), Perimeter (MFI Soft), Arbor Peakflow® und andere Hersteller.
  • Erwerb eines Dienstes zum Schutz vor DoS-Attacken. Tatsächlich bei Überschreitung der Bandbreite des Netzwerkkanals durch die Flut.

siehe auch

Anmerkungen

Literatur

  • Chris Kaspersky Computerviren innen und außen. - Petrus. - St. Petersburg. : Peter, 2006. - S. 527. - ISBN 5-469-00982-3
  • Stephen Northcutt, Mark Cooper, Matt Fearnow, Karen Frederik. Analyse typischer Sicherheitsverletzungen in Netzwerken = Intrusion Signatures and Analysis. - New Riders Publishing (Englisch) St. Petersburg: Williams Publishing House (Russisch), 2001. - S. 464. - ISBN 5-8459-0225-8 (Russisch), 0-7357-1063-5 (Englisch)
  • Morris, R.T.= Eine Schwachstelle in der 4.2BSD Unix TCP/IP Software. - Informatiktechnischer Bericht Nr. 117. - AT&T Bell Laboratories, Februar 1985.
  • Bellovin, S.M.= Sicherheitsprobleme in der TCP/IP-Protokollsuite. - Computer Communication Review, Band. 19, Nr.2. - AT&T Bell Laboratories, April 1989.
  • = daemon9 / route / infinity "IP-Spooling entmystifiziert: Trust-Relationship-Exploitation". - Phrack Magazine, Band 7, Ausgabe 48. - Guild Production, Juli 1996.
  • = daemon9 / route / infinity "Projekt Neptun". - Phrack Magazine, Band 7, Ausgabe 48. - Guild Production, Juli 1996.

Verknüpfungen

  • DoS Angriff im Open Directory Project Link Directory (

DDOS-Angriff. Erklärung und Beispiel.

Hallo alle. Dies ist der Computer76-Blog und jetzt ein weiterer Artikel über die Grundlagen der Hackerkunst. Heute werden wir in einfachen Worten und Beispielen darüber sprechen, was ein DDOS-Angriff ist. Bevor es in Fachbegriffe geht, gibt es eine Einführung, die jeder verstehen kann.

Warum wird ein DDOS-Angriff verwendet?

WiFi-Hacking wird verwendet, um das Passwort eines drahtlosen Netzwerks zu sammeln. Angriffe in Form von „ “ ermöglichen es Ihnen, den Internetverkehr abzuhören. Eine Schwachstellenanalyse mit anschließendem Laden einer bestimmten ermöglicht es, den Zielrechner zu erfassen. Was bewirkt ein DDOS-Angriff? Letztendlich besteht sein Ziel darin, das Eigentum an der Ressource von seinem rechtmäßigen Eigentümer zu übernehmen. Ich meine nicht, dass die Website oder der Blog nicht Ihnen gehören wird. Dies in dem Sinne, dass Sie im Falle eines erfolgreichen Angriffs auf Ihre Website die Kontrolle darüber verlieren. Zumindest für eine Weile.

In der modernen Interpretation von DDOS wird ein Angriff jedoch meistens verwendet, um den normalen Betrieb eines Dienstes zu stören. Hackergruppen, deren Namen ständig zu hören sind, greifen wichtige Regierungs- oder Regierungsseiten an, um auf bestimmte Probleme aufmerksam zu machen. Aber fast immer steckt hinter solchen Angriffen ein rein kaufmännisches Interesse: die Arbeit von Konkurrenten oder einfache Streiche mit völlig unanständigen ungeschützten Seiten. Das Hauptkonzept von DDOS besteht darin, dass eine große Anzahl von Benutzern oder besser gesagt Anfragen von Bot-Computern gleichzeitig auf die Site zugreifen, was die Belastung des Servers unerträglich macht. Wir hören oft den Ausdruck „die Seite ist nicht verfügbar“, aber die wenigsten Menschen denken darüber nach, was sich eigentlich hinter dieser Formulierung verbirgt. Ja, jetzt weißt du es.

DDOS-Angriff - Optionen

Variante 1.

Spieler drängten sich am Eingang

Stellen Sie sich vor, Sie spielen ein Online-Multiplayer-Spiel. Tausende von Spielern spielen mit Ihnen. Und die meisten kennen Sie. Sie verhandeln die Details und tun Folgendes zu Stunde X. Sie gehen alle gleichzeitig auf die Seite und erstellen einen Charakter mit den gleichen Eigenschaften. Gruppieren Sie sich an einem Ort und blockieren Sie den Zugriff auf Objekte im Spiel durch die Anzahl der gleichzeitig erstellten Charaktere für andere gewissenhafte Benutzer, die nichts von Ihren geheimen Absprachen ahnen.

Option 2.


Stellen Sie sich vor, jemand beschließt, den Busverkehr in der Stadt entlang einer bestimmten Route zu stören, um gewissenhafte Fahrgäste daran zu hindern, öffentliche Verkehrsmittel zu nutzen. Tausende Ihrer Freunde fahren gleichzeitig zu den Haltestellen am Anfang der vorgegebenen Route und fahren ziellos in allen Autos von Ende zu Ende, bis das Geld ausgeht. Die Fahrt wird bezahlt, aber niemand steigt an anderen Haltestellen als den Endzielen aus. Und andere Fahrgäste, die an Zwischenhaltestellen stehen, blicken traurig auf die zurückweichenden Kleinbusse, die sich nicht in die überfüllten Busse drängen können. Alles ist in einem Burnout: sowohl Taxibesitzer als auch potenzielle Fahrgäste.

In der Realität sind diese Optionen physikalisch nicht realisierbar. In der virtuellen Welt können Ihre Freunde jedoch durch Computer skrupelloser Benutzer ersetzt werden, die sich nicht die Mühe machen, ihren Computer oder Laptop irgendwie zu schützen. Und die überwiegende Mehrheit ist. Es gibt viele Programme zur Durchführung eines DDOS-Angriffs. Unnötig zu erwähnen, dass solche Aktionen illegal sind. Und ein lächerlich vorbereiteter DDOS-Angriff, egal wie erfolgreich er ist, wird entdeckt und bestraft.

Wie wird ein DDOS-Angriff durchgeführt?

Durch Klicken auf einen Website-Link sendet Ihr Browser eine Anfrage an den Server, um die von Ihnen gesuchte Seite anzuzeigen. Diese Anfrage wird als Datenpaket ausgedrückt. Und nicht nur eines, sondern ein ganzes Paket von Paketen! In jedem Fall ist die pro Kanal übertragene Datenmenge immer auf eine bestimmte Breite begrenzt. Und die vom Server zurückgegebene Datenmenge ist unverhältnismäßig größer als das, was in Ihrer Anfrage enthalten ist. Es erfordert den Serveraufwand und die Ressourcen. Je stärker der Server ist, desto teurer ist er für den Eigentümer und desto teurer sind die Dienste, die er bereitstellt. Moderne Server können einen stark gestiegenen Besucherstrom problemlos verkraften. Aber für jeden der Server gibt es immer noch einen kritischen Wert für Benutzer, die sich mit dem Inhalt der Website vertraut machen möchten. Umso klarer ist die Situation bei dem Server, der Website-Hosting-Dienste bereitstellt. Nur ein wenig, und die betroffene Site wird vom Dienst getrennt, um die Prozessoren nicht zu überlasten, die Tausende anderer Sites bedienen, die sich auf demselben Hosting befinden. Die Arbeit der Site stoppt bis zu dem Moment, an dem der DDOS-Angriff selbst stoppt. Nun, stellen Sie sich vor, dass Sie anfangen, eine der Seiten der Site tausendmal pro Sekunde (DOS) neu zu laden. Und Tausende Ihrer Freunde tun dasselbe auf ihren Computern (verteiltes DOS oder DDOS) ... Große Server haben gelernt, einen begonnenen DDOS-Angriff zu erkennen und ihm entgegenzuwirken. Aber auch Hacker verbessern ihre Ansätze. Daher kann ich im Rahmen dieses Artikels nicht näher erläutern, was ein DDOS-Angriff ist.

Was ein DDOS-Angriff ist, können Sie jetzt herausfinden und ausprobieren.

AUFMERKSAMKEIT. Wenn Sie sich entscheiden, es zu versuchen, gehen alle nicht gespeicherten Daten verloren. Sie benötigen eine Schaltfläche, um den Computer wieder in einen funktionierenden Zustand zu versetzen. ZURÜCKSETZEN. Aber Sie werden in der Lage sein, genau herauszufinden, was der angegriffene Server „fühlt“. Ein detailliertes Beispiel ist ein Absatz weiter unten, und jetzt - einfache Befehle zum Neustarten des Systems.

  • Geben Sie für Linux im Terminal den folgenden Befehl ein:
:(){ :|:& };:

Das System wird sich weigern zu arbeiten.

  • Für Windows schlage ich vor, eine bat-Datei in Notepad mit dem Code zu erstellen:
:1 Gehe zu 1

Benennen Sie den Typ DDOS.bat

Die Bedeutung beider Befehle zu erklären, ist meiner Meinung nach nicht der Mühe wert. Alles ist mit bloßem Auge sichtbar. Beide Befehle zwingen das System, das Skript auszuführen und es sofort zu wiederholen, wodurch es an den Anfang des Skripts gesendet wird. Angesichts der Geschwindigkeit der Ausführung verfällt das System nach ein paar Sekunden in einen Stupor. Spiel, wie sie sagen, über.

DDOS-Angriff mit Software.

Verwenden Sie für ein anschaulicheres Beispiel das Low Orbit Ion Cannon-Programm (Ionenkanone aus niedriger Umlaufbahn). Oder LOIK. Die am häufigsten heruntergeladene Distribution befindet sich unter (wir arbeiten unter Windows):

https://sourceforge.net/projects/loic/

AUFMERKSAMKEIT ! Ihr Antivirus sollte auf die Datei als bösartig reagieren. Es ist in Ordnung: Sie wissen bereits, was Sie herunterladen. In der Signaturdatenbank ist es als Flutgenerator gekennzeichnet - ins Russische übersetzt ist dies das ultimative Ziel endloser Anrufe an eine bestimmte Netzwerkadresse. MIR PERSÖNLICH sind keine Viren oder Trojaner aufgefallen. Sie haben jedoch das Recht, zu zögern und den Download zu verschieben.

Da unvorsichtige Benutzer die Ressource mit Nachrichten über eine schädliche Datei bombardieren, führt Sie Source Forge auf die folgende Seite mit einem direkten Link zu der Datei:

Infolgedessen gelang es mir, das Dienstprogramm nur über herunterzuladen.

Das Programmfenster sieht so aus:

Punkt 1 Ziel auswählen ermöglicht es einem Angreifer, sich auf ein bestimmtes Ziel zu konzentrieren (es wird eine IP-Adresse oder eine Site-URL eingegeben), Punkt 3 Angriffsmöglichkeiten ermöglicht es Ihnen, den angegriffenen Port, das Protokoll ( Methode) der drei TCP, UDP und HTTP. Im Feld TCP/UDP-Nachricht können Sie eine Nachricht für das Opfer eingeben. Danach startet der Angriff auf Knopfdruck IMMA CHARGIN MAH LAZER(Dies ist ein Satz am Rande eines Fouls aus dem einst beliebten Comicmeme; Im Programm sind übrigens viele amerikanische Schimpfwörter). Alle.

WARNUNG

Diese Option dient nur zum Testen für localhost. Deshalb:

  • gegen die Seiten anderer Leute ist es illegal, und dafür sitzen sie schon wirklich im Westen (was bedeutet, dass sie bald auch hier gepflanzt werden)
  • Die Adresse, von der die Flut kommt, wird schnell berechnet, sie werden sich beim Anbieter beschweren, und er wird Sie warnen und Sie an den ersten Punkt erinnern
  • in netzen mit geringem kanaldurchsatz (also in allen heimnetzen) funktioniert das kleine ding nicht. Beim TOR-Netzwerk ist alles beim Alten.
  • Wenn Sie es richtig einrichten, werden Sie IHREN Kommunikationskanal schnell verstopfen, als jemandem Schaden zuzufügen. Das ist also genau die Option, wenn die Birne den Boxer schlägt und nicht umgekehrt. Und die Option mit einem Proxy folgt dem gleichen Prinzip: Niemand wird die Flut Ihrerseits mögen.

Gelesen: 9 326

In den offiziellen Meldungen von Hosting-Providern flackern immer öfter hier und da Erwähnungen von reflektierten DDoS-Angriffen auf. Immer mehr Benutzer gehen sofort von DDoS aus, nachdem sie die Nichtverfügbarkeit ihrer Website festgestellt haben. Tatsächlich erlebte das Runet Anfang März eine ganze Welle solcher Angriffe. Gleichzeitig versichern Experten, dass der Spaß gerade erst beginnt. Es ist einfach unmöglich, ein so relevantes, beeindruckendes und faszinierendes Phänomen zu ignorieren. Lassen Sie uns also heute über die Mythen und Fakten über DDoS sprechen. Aus Sicht des Hosting-Providers natürlich.

Gedenktag

Am 20. November 2013 war zum ersten Mal in der 8-jährigen Geschichte unseres Unternehmens die gesamte technische Seite aufgrund einer beispiellosen DDoS-Attacke für mehrere Stunden nicht verfügbar. Zehntausende unserer Kunden in ganz Russland und der GUS haben gelitten, ganz zu schweigen von uns und unserem Internetprovider. Das letzte, was der Anbieter beheben konnte, bevor das weiße Licht für alle verblasste, war, dass seine Eingangskanäle stark mit eingehendem Datenverkehr verstopft waren. Um dies zu veranschaulichen, stellen Sie sich Ihre Badewanne mit einem gewöhnlichen Waschbecken vor, in das die Niagarafälle stürzten.

Auch vorgelagerte Anbieter haben das Echo dieses Tsunamis zu spüren bekommen. Die folgenden Grafiken veranschaulichen deutlich, was an diesem Tag mit dem Internetverkehr in St. Petersburg und in Russland geschah. Achten Sie auf die steilen Gipfel um 15:00 und 18:00, gerade als wir die Angriffe aufgezeichnet haben. Auf diesen plötzlich plus 500-700 GB.

Es dauerte mehrere Stunden, den Angriff zu lokalisieren. Der Server, an den es gesendet wurde, wurde berechnet. Dann wurde der Zweck von Internet-Terroristen berechnet. Weißt du, wen all diese feindliche Artillerie getroffen hat? Jeweils eine sehr gewöhnliche, bescheidene Kundenseite.

Mythos Nummer eins: „Angriffsobjekt ist immer der Hosting-Provider. Das sind die Machenschaften seiner Konkurrenten. Nicht mein." Tatsächlich ist das wahrscheinlichste Ziel für Internetterroristen eine normale Kundenseite. Das heißt, die Website eines Ihrer Hosting-Nachbarn. Und vielleicht auch Ihres.

Nicht alle DDoS...

Nach den Ereignissen auf unserer technischen Seite am 20. November 2013 und deren teilweiser Wiederholung am 9. Januar 2014 begannen einige Benutzer, bei einem bestimmten Ausfall ihrer eigenen Seite von DDoS auszugehen: „Das ist DDoS!“ und "Haben Sie wieder DDoS?"

Es ist wichtig, sich daran zu erinnern, dass wir es sofort selbst melden, wenn wir einen solchen DDoS erleiden, dass sogar Kunden es spüren.

Wir möchten diejenigen beruhigen, die es eilig haben, in Panik zu geraten: Wenn etwas mit Ihrer Website nicht stimmt, liegt die Wahrscheinlichkeit, dass es sich um DDoS handelt, unter 1 %. Einfach aufgrund der Tatsache, dass auf der Seite viel passieren kann und diese „viele Dinge“ viel öfter passieren. Wir werden in einem der folgenden Beiträge über Methoden zur schnellen Selbstdiagnose sprechen, was genau mit Ihrer Website passiert.

Lassen Sie uns in der Zwischenzeit - um der Genauigkeit des Wortgebrauchs willen - die Begriffe klären.

Über Begriffe

DoS-Attacke (aus dem Englischen Denial of Service) - Dies ist ein Angriff, der darauf abzielt, dass einem Server der Dienst aufgrund seiner Überlastung verweigert wird.

DoS-Angriffe beziehen sich nicht auf Geräteschäden oder Informationsdiebstahl; ihr Ziel - sorgen dafür, dass der Server nicht mehr reagiert. Der grundlegende Unterschied zwischen DoS besteht darin, dass der Angriff von einer Maschine zur anderen erfolgt. Es gibt genau zwei Teilnehmer.

Aber in Wirklichkeit beobachten wir praktisch keine DoS-Angriffe. Warum? Denn die Angriffsobjekte sind meistens industrielle Objekte (z. B. leistungsstarke Produktivserver von Hosting-Unternehmen). Und um den Betrieb einer solchen Maschine merklich zu beeinträchtigen, wird viel mehr Energie benötigt als die eigene. Das ist zuerst. Und zweitens lässt sich der Initiator einer DoS-Attacke recht einfach berechnen.

DDoS - Im Wesentlichen dasselbe wie DoS, nur der Angriff ist verteilte Natur. Nicht fünf, nicht zehn, nicht zwanzig, sondern Hunderte und Tausende von Computern greifen gleichzeitig von verschiedenen Orten auf einen Server zu. Eine solche Armee von Maschinen wird aufgerufen Botnetz. Es ist fast unmöglich, den Kunden und den Veranstalter zu berechnen.

Komplizen

Welche Art von Computern sind im Botnet enthalten?

Sie werden überrascht sein, aber oft sind dies die gewöhnlichsten Heimmaschinen. Wer weiß?.. - möglicherweise Ihr Heimcomputer auf die Seite des Bösen gezogen.

Dafür braucht es ein wenig. Ein Angreifer findet eine Schwachstelle in einem beliebten Betriebssystem oder einer Anwendung und verwendet sie, um Ihren Computer mit einem Trojaner zu infizieren, der Ihren Computer an einem bestimmten Tag und zu einer bestimmten Stunde anweist, bestimmte Aktionen auszuführen. Senden Sie beispielsweise Anfragen an eine bestimmte IP. Natürlich ohne Ihr Wissen und Ihre Teilnahme.

Mythos Nummer zwei: « DDoS wird irgendwo weit weg von mir gemacht, in einem speziellen unterirdischen Bunker, wo bärtige Hacker mit roten Augen sitzen. In der Tat, ohne es zu wissen, Sie, Ihre Freunde und Nachbarn - Jeder kann ein unwissender Komplize sein.

Das passiert wirklich. Auch wenn du nicht darüber nachdenkst. Auch wenn Sie schrecklich weit von der IT entfernt sind (vor allem, wenn Sie weit von der IT entfernt sind!).

Unterhaltsame Hacking- oder DDoS-Mechaniken

Das DDoS-Phänomen ist heterogen. Dieses Konzept vereint viele Handlungsoptionen, die zu einem Ergebnis führen (Denial of Service). Betrachten Sie die Optionen für die Probleme, die DDoSer uns bringen können.

Übermäßiger Verbrauch von Server-Computing-Ressourcen

Dies geschieht durch das Senden von Paketen an eine bestimmte IP, deren Verarbeitung eine große Menge an Ressourcen erfordert. Um beispielsweise eine Seite zu laden, müssen Sie eine große Anzahl von SQL-Abfragen ausführen. Alle Angreifer werden diese bestimmte Seite anfordern, was zu einer Serverüberlastung und einem Denial-of-Service für normale, legitime Website-Besucher führt.
Das ist ein Angriff auf dem Niveau eines Schuljungen, der ein paar Abende damit verbracht hat, das Hacker-Magazin zu lesen. Sie ist kein Problem. Die gleiche angeforderte URL wird sofort berechnet, woraufhin der Zugriff darauf auf Webserverebene blockiert wird. Und das ist nur eine der Lösungen.

Überlastung der Kommunikationswege zum Server (zum Ausgang)

Der Schwierigkeitsgrad dieses Angriffs ist ungefähr derselbe wie der vorherige. Der Angreifer berechnet die schwerste Seite auf der Website, und das Botnet unter seiner Kontrolle beginnt, sie massenhaft anzufordern.


Stellen Sie sich vor, der für uns unsichtbare Teil von Winnie the Pooh ist unendlich groß
In diesem Fall ist es auch sehr einfach zu verstehen, was genau den ausgehenden Kanal verstopft, und den Zugriff auf diese Seite zu verbieten. Anfragen des gleichen Typs sind mit Hilfe spezieller Dienstprogramme leicht zu erkennen, mit denen Sie die Netzwerkschnittstelle betrachten und den Datenverkehr analysieren können. Dann wird eine Regel für die Firewall geschrieben, die solche Anfragen blockiert. All dies geschieht regelmäßig, automatisch und so blitzschnell Die meisten Benutzer sind sich eines Angriffs nicht bewusst.

Mythos Nummer drei: "A Sie besuchen mein Hosting jedoch selten und ich bemerke sie immer.“ Tatsächlich sehen oder spüren Sie 99,9 % der Angriffe nicht. Aber der tägliche Kampf mit ihnen - das ist die alltägliche Routinearbeit eines Hosting-Unternehmens. Dies ist unsere Realität, in der der Angriff billig ist, die Konkurrenz aus den Charts ist und nicht jeder Lesbarkeit in den Methoden des Kampfes um einen Platz an der Sonne zeigt.

Überlastung der Kommunikationswege zum Server (am Eingang)

Das ist schon ein Rätsel für diejenigen, die das Hacker-Magazin länger als einen Tag gelesen haben.


Foto von der Website des Radios "Echo of Moscow". Sie fanden nichts Anschaulicheres, um DDoS mit Kanalüberlastung am Eingang darzustellen.
Um den Kanal mit eingehendem Datenverkehr voll auszulasten, benötigen Sie ein Botnetz, dessen Leistung es Ihnen ermöglicht, die erforderliche Menge an Datenverkehr zu generieren. Aber vielleicht gibt es eine Möglichkeit, wenig Traffic zu verschenken und viel zu bekommen?

Es gibt und nicht eins. Es gibt viele Möglichkeiten, den Angriff zu verbessern, aber eine der derzeit beliebtesten ist die Angriff über öffentliche DNS-Server. Experten nennen diese Methode der Verstärkung DNS-Verstärkung(falls jemand Fachausdrücke bevorzugt). Und wenn es einfacher ist, stellen Sie sich eine Lawine vor: Eine kleine Anstrengung reicht aus, um sie zu zerstören, und unmenschliche Ressourcen, um sie zu stoppen.

Sie und ich wissen das öffentlicher DNS-Server informiert auf Anfrage jeden, der Daten über beliebige Domainnamen haben möchte. Zum Beispiel fragen wir einen solchen Server: Erzählen Sie mir von der Domain sprinthost.ru. Und er wirft uns ohne zu zögern alles vor, was er weiß.

Das Abfragen eines DNS-Servers ist ein sehr einfacher Vorgang. Es kostet fast nichts, ihn zu kontaktieren, die Anfrage wird mikroskopisch klein sein. Zum Beispiel so:

Es bleibt nur die Auswahl eines Domainnamens, dessen Informationen ein beeindruckendes Datenpaket sein werden. So werden aus den ursprünglichen 35 Bytes mit einer leichten Handbewegung fast 3700. Es gibt eine Steigerung um mehr als das 10-fache.

Aber wie stellt man sicher, dass die Antwort an die richtige IP gerichtet ist? Wie kann man die Quell-IP der Anfrage fälschen, damit der DNS-Server seine Antworten in Richtung des Opfers ausgibt, das keine Daten angefordert hat?

Tatsache ist, dass DNS-Server weiterarbeiten UDP-Kommunikationsprotokoll, für die überhaupt keine Bestätigung des Ursprungs der Anfrage erforderlich ist. Das Fälschen einer ausgehenden IP ist in diesem Fall keine große Sache für einen Doser. Deshalb ist diese Art von Angriff derzeit so beliebt.

Am wichtigsten ist, dass ein sehr kleines Botnetz ausreicht, um einen solchen Angriff durchzuführen. Und mehrere unterschiedliche öffentliche DNS, die nichts Ungewöhnliches darin sehen, dass verschiedene Benutzer von Zeit zu Zeit Daten von der Adresse eines Hosts anfordern. Und nur dann wird all dieser Verkehr zu einem Strom verschmelzen und ein „Rohr“ festnageln.

Was der Dosierer nicht wissen kann, ist die Kapazität der Kanäle des Angreifers. Und wenn er die Stärke seines Angriffs nicht richtig berechnet und den Kanal zum Server nicht sofort zu 100 % blockiert, kann der Angriff schnell und einfach abgewehrt werden. Mit Dienstprogrammen wie TCPdump Es ist einfach herauszufinden, dass eingehender Datenverkehr vom DNS kommt, und auf Firewall-Ebene zu verhindern, dass er akzeptiert wird. Diese Option - die Verweigerung des DNS-Datenverkehrs - ist für alle mit einer gewissen Unannehmlichkeit verbunden, aber sowohl die Server als auch die darauf befindlichen Websites funktionieren weiterhin erfolgreich.

Dies ist nur eine von vielen Optionen, um den Angriff zu verstärken. Es gibt viele andere Arten von Angriffen, wir können ein anderes Mal darüber sprechen. In der Zwischenzeit möchte ich zusammenfassen, dass all dies für einen Angriff gilt, dessen Stärke die Breite des Kanals zum Server nicht überschreitet.

Wenn der Angriff stark ist

Wenn die Angriffskraft die Kapazität des Kanals zum Server übersteigt, passiert Folgendes. Der Internetkanal wird sofort zum Server verstopft, dann zur Hosting-Site, zu seinem Internetanbieter, zum Upstream-Anbieter und so weiter und in aufsteigender Reihenfolge (in Zukunft - bis zu den absurdesten Grenzen) bis zum Angriffskraft reicht.

Und dann wird es zu einem globalen Problem für alle. Und kurz gesagt, damit mussten wir uns am 20. November 2013 auseinandersetzen. Und wenn es zu großen Umwälzungen kommt, ist es an der Zeit, besondere Magie einzuschalten!


So sieht spezielle Magie aus: Mit Hilfe dieser Magie ist es möglich, den Server zu berechnen, an den der Datenverkehr geleitet wird, und seine IP auf ISP-Ebene zu blockieren. Damit hört es auf, Anrufe an diese IP über seine Kommunikationskanäle mit der Außenwelt (Uplinks) anzunehmen. An die Liebhaber von Begriffen: Experten nennen dieses Verfahren "schwarz aus", vom englischen blackhole.

Gleichzeitig bleibt der angegriffene Server mit 500-1500 Accounts ohne seine IP. Dafür wird ein neues Subnetz von IP-Adressen zugewiesen, über die Client-Konten zufällig und gleichmäßig verteilt werden. Außerdem warten Experten auf eine Wiederholung des Angriffs. Es wiederholt sich fast immer.

Und wenn es sich wiederholt, gibt es nicht mehr 500-1000 Konten auf der angegriffenen IP, sondern einige Dutzend oder zwei.

Der Kreis der Verdächtigen wird kleiner. Diese 10-20 Accounts werden wiederum auf unterschiedliche IP-Adressen verteilt. Wieder einmal warten die Ingenieure auf einen weiteren Angriff. Immer wieder verteilen sie die verdächtigten Accounts auf verschiedene IPs und errechnen so durch schrittweise Annäherung das Angriffsobjekt. Alle anderen Konten kehren zu diesem Zeitpunkt zum normalen Betrieb auf derselben IP zurück.

Wie Sie wissen, ist dies kein Sofortverfahren, sondern es braucht Zeit, um es umzusetzen.

Mythos Nummer vier:„Wenn ein massiver Angriff stattfindet, hat mein Hoster keinen Aktionsplan. Er wartet nur mit geschlossenen Augen auf das Ende des Bombardements und beantwortet meine Briefe mit der gleichen Art von Antworten.Dem ist nicht so: Im Falle eines Angriffs handelt der Hosting-Provider nach Plan, um diesen schnellstmöglich zu lokalisieren und die Folgen zu beseitigen. Und mit der gleichen Art von Briefen können Sie die Essenz des Geschehens vermitteln und gleichzeitig die Ressourcen sparen, die für die schnellstmögliche Bearbeitung einer Notfallsituation erforderlich sind..

Gibt es Licht am Ende des Tunnels?

Jetzt sehen wir, dass die DDoS-Aktivität ständig zunimmt. Einen Angriff zu befehlen ist sehr zugänglich und hässlich billig geworden. Um Propagandavorwürfen vorzubeugen, wird auf Beweislinks verzichtet. Aber nehmen Sie uns beim Wort, es ist so.

Mythos Nummer fünf: „Ein DDoS-Angriff ist ein sehr kostspieliges Ereignis, und nur Geschäftsbonzen können es sich leisten, einen zu bestellen. Als letztes Mittel sind dies die Machenschaften der Geheimdienste!“ Tatsächlich sind solche Ereignisse extrem zugänglich geworden.

Daher muss nicht erwartet werden, dass böswillige Aktivitäten von selbst verschwinden. Vielmehr wird es sich nur verstärken. Es bleibt nur, Waffen zu schmieden und zu schärfen. Was wir tun, die Verbesserung der Netzwerkinfrastruktur.

Die rechtliche Seite des Problems

Dies ist ein sehr unpopulärer Aspekt bei der Diskussion über DDoS-Angriffe, da wir selten von Fällen der Gefangennahme und Bestrafung der Anstifter hören. Denken Sie jedoch daran: Ein DDoS-Angriff ist eine Straftat. In den meisten Ländern der Welt, einschließlich Russland.

Mythos Nummer sechs: « Jetzt, da ich genug über DDoS weiß, werde ich einem Konkurrenten Urlaub bestellen - Und dafür bekomme ich nichts!" Dass dies der Fall ist, ist nicht ausgeschlossen. Und wenn doch, wird es nicht nach viel aussehen.

  • Binden Sie den Verlauf mit dem DDoS-Zahlungssystem Assist
  • Spannende Auflösung

Im Allgemeinen raten wir niemandem, sich auf die bösartige Praxis von DDoS einzulassen, um nicht den Zorn der Gerechtigkeit auf sich zu ziehen und sein eigenes Karma nicht zu beugen. Und aufgrund der Besonderheiten unserer Tätigkeit und eines lebhaften Forschungsinteresses untersuchen wir weiterhin das Problem, stehen Wache und verbessern die Verteidigungsstrukturen.

PS:Wir haben nicht genug freundliche Worte, um all unsere Dankbarkeit auszudrücken, also sagen wir einfach"Danke!" an unsere geduldigen Kunden, die uns an einem schwierigen Tag am 20. November 2013 herzlich unterstützt haben. Sie haben viele Worte der Ermutigung zur Unterstützung unserer ausgesprochen

mob_info