GH GambleHub

DDoS-Schutz und Paketfilterung

1) Warum es notwendig ist

DDoS ist die „massive Degradierung“ von Ressourcen: Band/pps, Statustabellen, CPUs des Kernels/IRQs, Verbindungspools, Anwendungslimits. Das Ziel ist das Delaminieren des Schutzes: Löschen Sie das Volumen am Netzwerkperimeter, neutralisieren Sie Protokollanomalien bis zum TCP/IP-Stack und schneiden Sie unerwünschte Anfragen auf L7 ab, indem Sie SLO für legitime Benutzer speichern.

2) Angriffsklassen

2. 1 L3/L4 (volumetric/protocol)

Volumetric: UDP flood, UDP-reflection/amplification (DNS/CLDAP/NTP/SSDP/memcached/mDNS), GRE flood.
Protocol/state exhaustion: SYN flood, ACK/RST flood, TCP connection-exhaustion, ICMP flood, TCP fragmentation.
QUIC/UDP Features: falsche Initial/Retry Stürme, spoofed Quelle.

2. 2 L7 (application)

HTTP/1. 1: Anfragen hinter den Straßenrouten, header oversize/field smuggling.
HTTP/2: Rapid Reset, stream-flood, HEADERS flood, PRIORITY abuse.
HTTP/3 (QUIC): Verbindungen/Threads ohne Abschluss, Initial Flood.
Slow-атаки: slowloris/slow-read/slow-POST.
gRPC/WebSocket: Endlose Streams, Message-Flood, große Frames.

3) Grundlegende Schutzarchitektur

1. Anycast + Scrubbing

Sprühen Sie den Verkehr global und fahren Sie durch die Scrubbing-Center des Anbieters (volumetrisches/Spoofing-Clipping am Rand).

2. Multi-CDN / Multi-Edge

Unterschiedliche Domänen (Web, API, Statik), Schutz und Cache-Aggregation für Read-Load.

3. Low-Level-Filter an ihrem Umfang

ACL auf Border-Routern (RFC1918, Bogon, wissentlich falsche Ports).
eBPF/XDP für Early-Drop auf Signaturen und Rate-Limits bis Conntrack.

4. L7-Perimeter (NGINX/Envoy/WAF)

RPS-Komprimierung über Schlüssel, Challenge (Captcha/PoW), Cache, Priorisierung von „teuren“ Pfaden.

5. Interne Nachhaltigkeit

Verbindungspools, Warteschlangen, Circuit/Timeout, Service Isolation (Bulkhead) und Autoscaling mit „Plug-Ins“ (Shedder).

4) Vernetzte „Ventile“: Was sofort einschalten

4. 1 Linux sysctl (Kernel/Stack)

bash
TCP SYN flood sysctl -w net. ipv4. tcp_syncookies=1 sysctl -w net. ipv4. tcp_max_syn_backlog=4096 sysctl -w net. ipv4. tcp_synack_retries=3

Conntrack/sysctl -w net tables. netfilter. nf_conntrack_max=262144 sysctl -w net. netfilter. nf_conntrack_tcp_timeout_established=300

ICMP/redirect sysctl -w net. ipv4. icmp_echo_ignore_broadcasts=1 sysctl -w net. ipv4. conf. all. accept_redirects=0 sysctl -w net. ipv4. conf. all. send_redirects=0

sysctl -w net socket resources. core. somaxconn=4096 sysctl -w net. core. netdev_max_backlog=250000 sysctl -w net. core. rmem_max=134217728 sysctl -w net. core. wmem_max=134217728

4. 2 nftables: Basisfilter und ratelimit auf Paketen

nft table inet filter {
sets {
bogon { type ipv4_addr; flags interval; elements = { 0. 0. 0. 0/8, 10. 0. 0. 0/8, 100. 64. 0. 0/10,
127. 0. 0. 0/8, 169. 254. 0. 0/16, 172. 16. 0. 0/12, 192. 0. 2. 0/24, 192. 168. 0. 0/16, 198. 18. 0. 0/15, 224. 0. 0. 0/4 } }
}
chains {
input {
type filter hook input priority 0; policy drop;
ip saddr @bogon drop ct state established,related accept

UDP amplification ports - limit pps udp dport {53,123,1900,11211,389,1900,5353} limit rate over 2000/second drop

SYN rate-limit tcp flags syn tcp dport {80,443} limit rate over 2000/second drop

ICMP flood ip protocol icmp limit rate 100/second accept
}
}
}

4. 3 XDP/eBPF (Idee)

Early-Drop-Pakete mit spoofed Quelle (uRPF auf dem Router ist willkommen).
Hash-Buckets pps per/32 und per/24; dynamische „Quarantäne“ von Quellen.
UDP-Reflexions-Signaturen: DNS-Response-like auf die Eingabe (außerhalb des Kontextes filtern).

5) UDP-Verstärkung: Inventar und Blöcke

Häufige Reflektoren/Verstärker: DNS (open resolvers), NTP (monlist), CLDAP, SSDP, mDNS, Memcached (UDP), Chargen.

Maßnahmen:
  • UDP-Dienste schließen/einschränken, offene Ports minimieren.
  • Auf dem Perimeter begrenzen pps/Bitrate für bekannte Ports.
  • DNS-Empfehlung: rekursiv nur für ihre Netzwerke, RRL (Response Rate Limiting), ANY-Minimierung.
  • NTP ist nur ein „Bootstrap“ zu vertrauenswürdigen, „noquery“ für die Öffentlichkeit.

6) TCP state exhaustion

SYN-Flut: 'tcp _ syncookies = 1', erhöht durch 'tcp _ max _ syn _ backlog', 'synack _ retries = 3', drop durch pps.
ACK/RST-Flut: Low-Level-Limits, Aussetzer illegitimer Sequenzen (nftables/ebpf).
Conntrack-less am Bordstein: keine Zustandstabellen ausgeben, wo ein Filter durch stateless-Signatur möglich ist.

7) HTTP/2/3 und intelligente L7-Angriffe

HTTP/2 Rapid Reset: Begrenzung der Häufigkeit von RST-Frames und der Anzahl offener Threads; Schließen Sie die Verbindung bei Anomalien.
Stream abuse: лимит concurrent streams, headers size, max frame size.
QUIC/HTTP/3: Initial pps einschränken, Retry aktivieren; kurze Handshake-Timeouts.

NGINX (Fragment L7)

nginx
Header/body constraint client_max_body_size 1m;
large_client_header_buffers 4 8k;

HTTP/2 limits http2_max_concurrent_streams 128;
http2_recv_buffer_size 256k;

Rate limit by IP (example)
limit_req_zone $binary_remote_addr zone=reqs:20m rate=100r/s;
limit_req zone=reqs burst=200 nodelay;

Envoy (Anti-Reset und Limits)

yaml http2_protocol_options:
max_concurrent_streams: 128 initial_stream_window_size: 65536 max_outbound_frames: 10000 stream_error_on_invalid_http_messaging: true

8) Langsame Angriffe und Ressourcenschutz

Slowloris/slow-read/slow-POST: aktivieren Sie' proxy _ request _ buffering on', low idle-timeout, minimum acceptable' read _ rate'.
Beenden Sie Verbindungen mit einem langen Interpaketintervall auf Anfrage.
Auf der Anwendung - frühes Lesen/Verwerfen des Körpers, JSON Größe/Tiefe Grenzen.

9) L7 Filtration: Wer ist wichtiger - lassen Sie es passieren

Traffic-Klassifizierung: bekannt gut (mTLS/JWT Partner), registrierte Nutzer, anonym.
Prioritäten: „teure“ Write-Routen (Ein-/Auszahlungen) - um die bestätigten zu schützen, aber zu überspringen; read-Verzeichnisse - cache + throttle.
Challenge-Layer: Captcha/PoW/JS-Challenges für Grauzonen beim Peak.

10) Cache, Coalescing und Degradierung

Edge-Cache für statische/quasistatische Antworten, 'stale-while-revalidate'.
Coalescing-Anforderung: Gleichzeitige Anforderungen an einen Schlüssel zusammenbrechen lassen - im Proxy und in der Anwendung.
Degrade-Modus: Deaktivieren Sie die sekundären Funktionen (Personalisierung, schwere Berichte), geben Sie „leichte“ Seiten aus.

11) Beobachtbarkeit und Telemetrie

Metriken (per ROP/Node/Cluster):
  • L3/L4: `pps_in/out`, `bps_in/out`, `drop_pps{reason}`, `syn_recv`, `conntrack_used/limit`, `xdp_drop_pps`.
  • L7: `requests_total{route}`, `429_total`, `challenge_total{type}`, `h2_rst_rate`, `slow_req_total`.
  • Abhängigkeiten: CPU IRQ soft/hard, NIC queue drops, run-queue length.

Logs: Sampled, aggregiert nach/24, ASN, Ports und Signaturen; ohne PII.
Tracing: Aktivieren Sie auf Whitelists, erweitern Sie das Sampling zum Debuggen.

12) Reaktionspläne (Runbook)

1. Schlagwort: Schwellen pps/bps/429/h2_rst_rate.
2. Klassifizierung: Schicht (L3/4/7), Protokoll (UDP/TCP/h2/h3), Geo/ASN.

3. Ventile:
  • Aktivieren von Scrubbing-/Blackhole-Profilen auf dem Anbieter,
  • stärken nftables/ebpf Grenzen,
  • L7-Limits senken und Herausforderungen erhöhen,
  • Retry für QUIC (Initial Flood) aktivieren.
  • 4. Kommunikation: Status-Seite, Benachrichtigungsvorlagen für Partner.
  • 5. Forenzika: PCAP-Capture für 60-120 Sekunden, Sampling Top-Sprecher ASNs/Ports.
  • 6. Rückblick: Signaturen, Schwellen, Reflektorlisten aktualisieren.

13) Tests und Übungen

Playbooks DDoS-drill vierteljährlich: synthetische UDP/HTTP-Bursts, Slow-Traffic, HTTP/2 Reset.
Game Day: Umschalten von Anycast/Migration zwischen CDN, Degradierung zum „Light Mode“.
Anbieterverifizierung: SLA-Scrubbing, Ein-/Ausschaltzeit der Filter, max pps/bps.

14) Antipatterns

Verlassen Sie sich bei einem volumetrischen Angriff nur auf L7-WAF.
Kein uRPF/ACL am Bordstein und conntrack-schwere Filterung „frontal“.
Unbegrenzte Schlagzeilen/Körper und lange Keep-Alive in der Spitze.
Single Region/RPO ohne Anycast/Multi-Edge.
Kein Bestand an NIC/IRQ/CPU und Warteschlangenüberwachung.
Kein Cache/Coalesing - zusätzliche RPS pro Backend.

15) Spezifität von iGaming/Finanzen

Zeitspitzen (Matches/Derbys/Lotto-Ziehungen): Erweitern Sie die POP-Kapazität im Voraus, aktivieren Sie einen aggressiven Koeffizienten-Cache, legen Sie Canary-Challenges für Anonyme.
Payment/Output Routen: separater Edge-Pool mit mTLS, kurze Timeouts, Wettbewerbslimits; Keine 0-RTT.
Geo-Policies: regionale Allow-Lists, ASN-Filterung von „Hosting“, schnelles Geo-Switching.
Schnittmenge mit Antifrod: Velocity-Limits und Risk API gehen bei einem DDoS-Vorfall in das „harte“ Profil über.

16) Checkliste Prod-Ready

  • Anycast или multi-edge/CDN; Scrubbing-Kanäle überprüft.
  • Border-ACL/uRPF; nftables/ebpf/XDP Profile, conntrack-less Filterung.
  • Sysctl-Tuning TCP/SYN, Limitpps für UDP-Verstärkerports.
  • HTTP/2/3 limits (streams, frames, headers), slow-protection, body/header-limits.
  • L7-Limits und Challenge; Cache und Coalescing am Perimeter.
  • Dashboards pps/bps/conntrack/IRQ + L7 RED; alert auf Anomalien h2_rst/429.
  • Runbook/Playbooks, Provider-Kontakte, One-Click-Aktivierung von Profilen.
  • Lehren: Bursts, Slow, HTTP/2 Reset; Bericht und Aufzeichnung von Verbesserungen.
  • Getrennte Pools für zahlungs-/kritische Routen, mTLS und strenge Limits.

17) TL; DR

Delaminieren Sie den Schutz: Anycast + Scrubbing dämpft das Volumen, eBPF/XDP + nftables schneiden den Müll zu einem Stapel, L7-Limits/Challenges/Cache speichern den SLA. Tunen Sie TCP (SYN-Cookies, Backlog), begrenzen Sie UDP-Verstärker, setzen Sie HTTP/2/3 und Slow-Protection-Limits. Haben Sie ein Runbook und trainieren Sie es; für iGaming - Erweitern Sie den Rand im Voraus in Spitzenzeiten und trennen Sie Zahlungswege mit mTLS und engen Limits.

Contact

Kontakt aufnehmen

Kontaktieren Sie uns bei Fragen oder Support.Wir helfen Ihnen jederzeit gerne!

Telegram
@Gamble_GC
Integration starten

Email ist erforderlich. Telegram oder WhatsApp – optional.

Ihr Name optional
Email optional
Betreff optional
Nachricht optional
Telegram optional
@
Wenn Sie Telegram angeben – antworten wir zusätzlich dort.
WhatsApp optional
Format: +Ländercode und Nummer (z. B. +49XXXXXXXXX).

Mit dem Klicken des Buttons stimmen Sie der Datenverarbeitung zu.