DDoS-Abwehr — Referenz.
DDoS-Angriffsklassen-Taxonomie mit den passenden Mitigation-Layern — Anycast, Scrubbing, App-Layer-Rate-Logik.
Volumetrische Angriffe (L3/L4)
- UDP-Flood / generischer Packet-Flood. Ingress-Bandbreite saturieren. Moderne Record-Peaks: 3.8 Tbps (Cloudflare, 2024). Keine Origin-seitige Mitigation oberhalb deiner Transit-Kapazität möglich.
- Reflection / Amplification. Angreifer spoofed Victim-Source-IP, queryt UDP-Service der mit größerem Payload antwortet.
- DNS (Amp-Faktor ~28×) — mitigiert durch Schließen offener Resolver.
- NTP-monlist (~556×) — gepatched, aber Legacy noch exposed.
- memcached (~51,000×) — in 1.3 Tbps GitHub 2018 genutzt; sollte nie Internet-exposed sein.
- CLDAP (~70×), SNMP (~6×), SSDP (~30×).
- Mitigation.
- Anycast-Netzwerk. Attack-Traffic über N Edge-Sites verteilt.
- Upstream-Scrubbing — Provider absorbiert und droppt; Clean-Traffic geforwarded.
- BGP-Flowspec für ISP-Level-Filtering.
- RTBH (Remote-Triggered-Blackhole) — Last-Resort, droppt alles zur Victim-IP.
- BCP 38 / Ingress-Filtering auf ISP-Level — verhindert dass Spoofed-Source-IPs das Netzwerk verlassen. Industrieweiter Rollout langsam.
Protokoll-Layer-Angriffe (L4)
- SYN-Flood. Half-Open-Connections füllen die Queue. Mitigation: SYN-Cookies (Linux
net.ipv4.tcp_syncookies=1) — stateless bis ACK. SYN-Proxy am Edge, der Handshake completed dann proxied.tcp_max_syn_backlog+somaxconnerhöhen. - ACK-Flood. Umgeht SYN-Cookie-Defenses durch ACKs gegen nicht-existierende Connections. Mitigation: Rate-Limit am Edge, Stateful-Firewall droppt.
- Slow-Loris / Slowread. Viele Connections öffnen, Header byteweise senden oder Response 1 Byte/s lesen. Mitigation: Client-Rate-Timeouts, max-Headers-Time, Per-Connection-Memory-Caps. nginx
client_body_timeout/client_header_timeoutstraff (10s). - R-U-Dead-Yet (RUDY). Long-Form-POST mit sehr langsamem Body. Mitigation: max-POST-Size, Body-Timeout.
- TCP-State-Exhaustion. Botnets etablieren viele real-aussehende Connections. Mitigation: Per-IP-Connection-Limit, GeoIP-Filtering, Captcha-Challenge auf verdächtigem Source.
Application-Layer-Angriffe (L7)
- HTTP-Flood. Viele GET/POST. Strukturell legitim. Mitigation: Per-IP-Rate-Limit, Anomaly-Detection auf User-Agent- / JA3- / Referer-Verteilung. JS-Challenge / Proof-of-Work / Captcha.
- Cache-Buster. Random-Query-String pro Request schlägt CDN-Cache. Mitigation: Query-String normalisieren, Rate-Limit auf Unique-Cache-Key-Creation pro IP.
- Slowpost auf teuren Endpoints. Search-, Report-Generation-Endpoints gewählt weil jeder Request CPU verbrennt. Mitigation: Per-Endpoint-Per-IP-Rate, Async-Queue mit Backpressure, niedrigere Priority für Unauthenticated.
- Login-Endpoint-Flood. Credential-Stuffing oder Capacity-Burn. Mitigation: progressive Captcha, Account-Lockout, IP-Reputation-Rate-Adjustment.
- HTTP/2-Rapid-Reset (CVE-2023-44487). RST_STREAM nach Request erzeugt extreme Amplification. Mitigation: Rate-Limit auf Stream-Resets am Server implementieren.
Per-Endpoint-Rate-Logik — Design
- Tiered Rates. Anonymous < Authenticated < Trusted-Partner. Verschiedene Limits pro Identity-Tier.
- Cost-Weighted. Günstige Endpoints hohe Rate; teure (Search, Export, ML-Inference) niedrige.
- Sliding-Window. Token-Bucket (glatt) oder Fixed-Window-with-Rollover. Harte Fixed-Windows vermeiden (Angreifer hitten Sekunde 0 jedes Fensters).
- Identity für Rate. IP (günstig, mit Botnet leicht zu umgehen), User (besser, erfordert Auth), Browser-Fingerprint (schlägt simple Rotation).
- Challenge vor Block. Rate nahe Threshold → JS-Challenge / Captcha → Block erst nach Challenge-Fail.
Build vs Buy
- Volumetrische Defense ist Buy. Du hast keine Tbps Transit. Cloudflare, AWS Shield Advanced, Akamai Prolexic, Imperva, NETSCOUT Arbor.
- L4-Defense ist gemischt. Edge-Appliance + Provider — beide Schichten.
- L7-Defense ist Build mit Components. WAF + Rate-Limit am Edge + Application-Aware-Throttle in der App + Alerting auf Anomalie. CDN liefert Defaults; Tuning pro App ist deine Aufgabe.
FaustregelDer DDoS, der dich umlegt, ist selten die größte publizierte Zahl. Es ist der L7-Angriff, getuned auf deinen teuersten Endpoint, gesized knapp unter dem Threshold, der die Blanket-Mitigation deines Providers triggert. Per-Endpoint kosten-asymmetrisch defenden, nicht über aggregierte Bandbreite.
Von der Referenz zum Befund