Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| modul:m183:learningunits:lu12:03 [2025/09/19 11:33] – angelegt vdemir | modul:m183:learningunits:lu12:03 [2026/09/16 15:43] (aktuell) – vdemir | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== LU12c - Gegenmassnahmen DDoS ====== | ====== LU12c - Gegenmassnahmen DDoS ====== | ||
| + | |||
| + | Glücklicherweise gibt es auch gegen DoS/ | ||
| + | |||
| + | |||
| + | ===== Rate Limiting ===== | ||
| + | |||
| + | Beim //Rate Limiting// wird die Anzahl Anfragen begrenzt, die ein einzelner Client (meist erkannt an der IP-Adresse) innerhalb eines bestimmten Zeitfensters stellen darf. Wer die Grenze überschreitet, | ||
| + | |||
| + | **Wie funktioniert es?** | ||
| + | |||
| + | - Für jeden Client wird mitgezählt, | ||
| + | - Bis zu einem definierten Schwellenwert werden die Anfragen normal beantwortet. | ||
| + | - Übersteigt ein Client den Schwellenwert, | ||
| + | |||
| + | **Beispiel mit nginx** | ||
| + | |||
| + | <code nginx> | ||
| + | # max. 10 Anfragen pro Sekunde je IP-Adresse zulassen | ||
| + | limit_req_zone $binary_remote_addr zone=schutz: | ||
| + | |||
| + | server { | ||
| + | location / { | ||
| + | limit_req zone=schutz burst=20 nodelay; | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | **Oder kurz:** <color # | ||
| + | |||
| + | |||
| + | ===== Traffic-Filterung & Blackholing ===== | ||
| + | |||
| + | Nicht jeder Verkehr muss den eigentlichen Server überhaupt erreichen. Auf Netzwerkebene lässt sich bösartiger Verkehr bereits am Rand (//Edge//) verwerfen, bevor er Ressourcen bindet. Beim // | ||
| + | |||
| + | <code bash> | ||
| + | # einzelne, bekannte Angreifer-IP verwerfen | ||
| + | iptables -A INPUT -s 203.0.113.42 -j DROP | ||
| + | </ | ||
| + | |||
| + | * **Blacklisting: | ||
| + | * **Geo-Blocking: | ||
| + | * **Blackholing: | ||
| + | |||
| + | |||
| + | ===== Load Balancing & Skalierung ===== | ||
| + | |||
| + | Ein //Load Balancer// verteilt eingehende Anfragen auf mehrere Server. Fällt ein einzelner Server unter der Last aus oder wird überlastet, | ||
| + | |||
| + | * Die Last verteilt sich auf viele Systeme statt einen einzigen Flaschenhals. | ||
| + | * Zusätzliche Kapazität wird bei Bedarf automatisch bereitgestellt. | ||
| + | * Ein einzelner überlasteter Server führt nicht mehr zum Totalausfall. | ||
| + | |||
| + | Wichtig: Reine Skalierung ist ein // | ||
| + | |||
| + | |||
| + | ===== DDoS-Scrubbing / Cloud-Mitigation ===== | ||
| + | |||
| + | Spezialisierte Anbieter (z. B. Cloudflare, Akamai) leiten den gesamten Verkehr durch sogenannte //Scrubbing Center//. Dort wird der Datenstrom in Echtzeit analysiert: Schädlicher Verkehr wird herausgefiltert, | ||
| + | |||
| + | **Wie Scrubbing grundsätzlich schützt** | ||
| + | |||
| + | * Der Angriffsverkehr trifft die spezialisierte Infrastruktur des Anbieters, nicht den eigenen Server. | ||
| + | * Die Anbieter verfügen über enorme Kapazitäten, | ||
| + | * Angriffsmuster aus vielen Kunden fliessen zusammen und werden dadurch früher erkannt. | ||
| + | |||
| + | **Kurz:** Der Angriff läuft ins Filternetz des Anbieters, bevor er den eigenen Dienst überhaupt erreicht. | ||
| + | |||
| + | |||
| + | ===== Web Application Firewall (WAF) ===== | ||
| + | |||
| + | Gegen Angriffe auf der // | ||
| + | |||
| + | * Erkennt automatisierte Bot-Anfragen anhand ihres Verhaltens. | ||
| + | * Kann verdächtige Clients mit einer // | ||
| + | * Blockiert bekannte Angriffssignaturen gezielt auf HTTP-Ebene. | ||
| + | |||
| + | **Kurz:** <color # | ||
| ---- | ---- | ||
| [[https:// | [[https:// | ||