Attack of Self-Denial

Als Attack of Self-Denial oder Self-Inflicted Denial-of-Service Attack (deutsch selbstzugeführter DoS-Angriff) bezeichnet man es, wenn ein Internetdienst durch eine große Anzahl an Anfragen überlastet wird und dadurch nicht mehr verfügbar ist. Im Gegensatz zu einem Denial-of-Service-Angriff ist die Ursache jedoch nicht in einem externen Angreifer begründet, sondern wurde versehentlich durch menschliches Handeln des Dienstebetreibers ausgelöst.[1]

Ursachen können etwa Werbeaktionen sein, welche eine deutlich größere Menge an Anfragen auf dem Server veranlassen als im Normalfall. Zudem können auch technische Fehlplanung oder Konfigurationsfehler eine Ursache sein.[2]

Beispiele

  • Zum Launch der Xbox 360 wurde ein Werbemail versendet, welches Daten von einem Server nachlud, ohne das geplante Content Delivery Network von Akamai zu verwenden.[1]
  • Im November 2006 startete Amazon ein Sonderangebot, bei dem eine begrenzte Menge an Xbox-360-Konsolen zu einem stark vergünstigtem Preis verfügbar war. Amazon hatte es hierbei verabsäumt für die Aktion eigene Server für Bulkhead bereitzustellen, weshalb bei der Überlastung die gesamte Frontend-Infrastruktur mitgenommen wurde.[1]

Lösungsansätze

  • Da ein DoS durch aufgebrauchte Threadpools verursacht wird, gilt es die Threadpools – insbesondere zu Datenbanken und externen Diensten – zu begrenzen.
  • Sicherungen verhindern, dass das Backend im Falle einer Überlastung mit zusätzlichen Anfragen belastet wird.
  • Bulkheads trennen die überlastete Infrastruktur von der restlichen Infrastruktur
  • Abrufe statischer Dateien sollte nur über einen CDN erfolgen und direkte Serverzugriffe mittels einer Firewall geblockt werden.
  • Im Falle von Werbeaktionen sollten zusätzliche Ressourcen eingeplant werden.
  • Die notwendigen Dienste müssen dynamisch horizontal skalieren können. Hierfür werden Automated Scaling Listener eingesetzt, welche bedarfsorientiert weitere Instanzen der entsprechenden Dienste erzeugen.

Quellen

  1. a b c Michael T. Nygard: Release It! Design and Deploy Production-Ready Software. O’Reilly, 2007, ISBN 978-0-9787392-1-8, 4.6 Attacks of Self-Denial (englisch, 326 S.).
  2. Terry Slattery: A Self-Inflicted Denial-of-Service Attack. NetCraftsmen, abgerufen am 10. Mai 2017.