12. März 2010

Gedanken zu Denial-of-Service

Category: Work — Christian @ 16:34

Ich überlege gerade für einen Freund, wie man eine Beschreibung von Denial-of-Service Angriffen (DDoS ist nur ein Randthema) und möglichen Gegenmaßnahmen sinnvoll gliedern kann. Meine Idee geht dazu, die verschiedenen Angriffsebenen als Gliederungspunkt heranzuziehen, weil man auf Netzwerkebene halt andere Gegenmaßnahmen hat und braucht als auf Anwendungsebene.

  1. Einleitung
  2. Definitionen
  3. DoS im Systembetrieb
    1. Redundante Netzverbindungen
    2. Redundante Stromversorgung
    3. Sonstige Hardware-Fehler
  4. DoS in der Netzwerkkommunikation
    1. DoS auf Layer 2 (ARP, …)
      Praktisch irrelevant, da Angreifer vor Ort sein müssten
    2. DoS auf Layer 3/4 (Smurf, Fraggle, Land, SYN-Flooding, …)
      Praktisch irrelevant, da von Firewalls zuverlässig erkannt und im OS gefixt (SYN-Flooding)
  5. DoS auf Betriebssystemebene
    1. OS resource exhaustion (RAM, CPU, …)
      Mehr eine Frage der Kapazitätsplanung
    2. Implementierungsprobleme
      Lösung könnte ein OS-Wechsel oder Stack-Tuning bringen
  6. DoS auf Anwendungsebene
    1. Application resource exhaustion (Memory Allocation, …)
      Programmierfehler, Code Analyse hilft
    2. Sonstige Fehler in Anwendungen
      Logikfehler, Concurrency, …
  7. DoS auf sonstigen Ebenen
    1. Benutzeraccounts blockieren
      DoS gegen Sicherheitsmaßnahmen
    2. Überlastung durch überraschendes Benutzerverhalten
      „Heise-DoS“, Frage der Kapazitätsplanung
  8. Distributed DoS
    1. DDoS auf Netzwerkebene
    2. DDoS auf Betriebssystemebene
    3. DDoS auf Anwendungsebene
  9. Gegenmaßnahmen
    1. Schutz auf Layer 2
    2. Schutz auf Layer 3/4
    3. Schutz auf Betriebssystemebene
    4. Schutz auf Anwendungsebene
  10. Kosten/Nutzen-Relation

Ist das sinnvoll? Habe ich was wichtiges vergessen?

Nachtrag:

Ideen von Tobias bereits eingearbeitet.