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