GH GambleHub

DDoS qorunması və filtrasiya paketi

1) Niyə lazımdır

DDoS resursların «kütləvi deqradasiyasıdır»: zolaq/pps, vəziyyət cədvəlləri, nüvənin CPU/IRQ, qoşulma hovuzları, tətbiq limitləri. Məqsəd qorunmanın təbəqələşməsidir: şəbəkənin perimetrində həcmi söndürmək, protokol anomaliyalarını TCP/IP yığınına qədər zərərsizləşdirmək və legitim istifadəçilər üçün SLO saxlayaraq L7-də arzuolunmaz sorğuları kəsməkdir.

2) Hücum sinifləri

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 xüsusiyyətləri: yanlış Initial/Retry fırtına, spoofed mənbə.

2. 2 L7 (application)

HTTP/1. 1: bahalı marşrutlar üçün sorğular, header oversize/field smuggling.
HTTP/2: Rapid Reset, stream-flood, HEADERS flood, PRIORITY abuse.
HTTP/3 (QUIC): bağlantı/axınlar tamamlanmadan, Initial flood.
Slow-атаки: slowloris/slow-read/slow-POST.
gRPC/WebSocket: sonsuz axınlar, message-flood, böyük çərçivələr.

3) Əsas müdafiə arxitekturası

1. Anycast + Scrubbing

Qlobal olaraq trafiki püskürtün və provayder scrubbing mərkəzləri vasitəsilə sürün (kənarda volumetrik/spufing kəsin).

2. Multi-CDN / Multi-Edge

Domen paylanması (veb, API, statik), qorunma aqreqasiyası və read-yük üçün cache.

3. Onun perimetri aşağı səviyyəli filtrlər

Border marşrutlayıcılarında ACL (RFC1918, bogon, qəsdən yanlış portlar).
eBPF/XDP üçün early-drop işarələri və rate-limitləri conntrack qədər.

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

RPS açarları, challenge (captcha/PoW), cache, «bahalı» yolların prioritetləşdirilməsi.

5. Daxili sabitlik

Qoşulma hovuzları, növbələr, circuit/timeout, xidmətlərin izolyasiyası (bulkhead) və «sıxaclar» (shedder) ilə autoscaling.

4) Şəbəkə «klapanları»: dərhal işə salmaq üçün nə

4. 1 Linux sysctl (nüvə/yığın)

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: əsas filtrlər və paketlərdə ratelimit

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 (ideya)

spoofed mənbə ilə Early-drop paketleri (uRPF router qəbul edilir).
pps per/32 və per/24 heş-baketlər; dinamik «karantin» mənbələri.
UDP-reflection imzaları: DNS response-like (kontekstdən kənarda süzülür).

5) UDP amplifikasiya: inventar və bloklar

Tez-tez reflektorlar/gücləndiricilər: DNS (open resolvers), NTP (monlist), CLDAP, SSDP, mDNS, Memcached (UDP), Chargen.

Tədbirlər:
  • Bağla/UDP xidmətlərini məhdudlaşdırın, açıq limanları minimuma endirin.
  • perimetri məşhur limanları üçün pps/bitrate məhdudlaşdırın.
  • DNS tövsiyəsi: yalnız öz şəbəkələri üçün rekursiv, RRL (Response Rate Limiting), ANY-nin minimuma endirilməsi.
  • NTP - etibarlı yalnız «butstrap», ictimai üçün 'noquery'.

6) TCP state exhaustion

SYN flood: 'tcp _ syncookies = 1', artan 'tcp _ max _ syn _ backlog', 'synack _ retries = 3', pps üzrə drop.
ACK/RST flood: aşağı səviyyəli limitlər, qeyri-legitim ardıcıllıqlar (nftables/ebpf).
Borderdə Conntrack-less: stateless işarəsi ilə filtrin mümkün olduğu yerdə state cədvəllərini sərf etməyin.

7) HTTP/2/3 və «ağıllı» L7 hücumları

HTTP/2 Rapid Reset: RST frekansı və açıq axınların sayı; anomaliyalar zamanı əlaqəni bağlamaq.
Stream abuse: лимит concurrent streams, headers size, max frame size.
QUIC/HTTP/3: Initial pps məhdudlaşdırmaq, Retry daxil; qısa vaxt handshake.

NGINX (L7 parçası)

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 və limitlər)

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) Slow-hücum və resurs qorunması

Slowloris/slow-read/slow-POST: 'proxy _ request _ buffering on', aşağı idle-timeout, minimal məqbul 'read _ rate' daxil edin.
Sorğu üçün uzun paket aralığında bağlantıları dayandırın.
Tətbiqdə - bədənin erkən oxunması/atılması, JSON ölçüsü/dərinliyi limitləri.

9) L7 filtrasiya: kim daha vacibdir - keçsin

Trafik təsnifatı: known good (mTLS/JWT tərəfdaşları), qeydiyyatdan keçmiş istifadəçilər, anonim.
Prioritetlər: «bahalı» write-marşrutlar (depozitlər/nəticələr) - təsdiq olunanları qorumaq, lakin qaçırmaq; read-kataloqlar - cache + throttle.
Challenge-qat: captcha/PoW/JS-pik boz zonalar üçün challenge.

10) Cache, coalescing və deqradasiya

Statik/kvazistatik cavablar üçün Edge-cache, 'stale-while-revalidate'.
Request coalescing: paralel sorğuları bir açara - proxy və tətbiqdə vurun.
Degrade rejimi: ikinci dərəcəli fişləri (personallaşdırma, ağır hesabatlar) söndürmək, «yüngül» səhifələr vermək.

11) Müşahidə və telemetriya

Metrika (per ROR/düyün/klaster):
  • 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`.
  • Asılılıq: CPU IRQ soft/hard, NIC queue drops, run-queue length.

Loqi :/24, ASN, liman və siqnal ilə yığılmış sample; PII olmadan.
Tracing: ağ siyahılar daxil, təcili hata ayıklamaq üçün sampling genişləndirmək.

12) Cavab planları (runbook)

1. Detekt: pps/bps/429/h2_rst_rate astanalarının işə salınması.
2. Təsnifat: səviyyə (L3/4/7), protokol (UDP/TCP/h2/h3), geo/ASN.

3. Klapanlar:
  • scrubbing/blackhole profillərini provayderə daxil edin,
  • nftables/ebpf limitləri gücləndirmək,
  • L7 limitlərini azaltmaq və çətinlikləri artırmaq,
  • QUIC (Initial flood) üçün Retry daxil edin.
  • 4. Rabitə: status-səhifə, tərəfdaşlara bildiriş şablonları.
  • 5. Forensics: 60-120 saniyə PCAP tutma, top talkers ASNs/ports nümunə.
  • 6. Retrospektiv: siqnalları, eşikləri, reflektorların siyahılarını yeniləyin.

13) Test və təlimlər

DDoS-drill playbook rüblük: sintetik UDP/HTTP burst, slow-trafik, HTTP/2 reset.
Game day: Anycast keçid/CDN arasında miqrasiya, «yüngül rejimi» qədər deqradasiya.
Provayder təsdiqi: SLA scrubbing, filtr açma/söndürmə vaxtı, max pps/bps.

14) Antipattern

Yalnız volumetrik hücumda L7-WAF etibar edin.
Borderdə uRPF/ACL və conntrack-heavy «alın» filtrasiyası yoxdur.
Limitsiz başlıqlar/bədən və pik uzun keep-alive.
Anycast/multi-edge olmadan vahid region/ROP.
NIC/IRQ/CPU və növbə monitorinqi üçün ehtiyatların olmaması.
Heç bir cache/koalitesing - arxa planda əlavə RPS.

15) iGaming/Maliyyə Xüsusiyyətləri

Müvəqqəti zirvələr (matçlar/derbi/loto püşkatmalar): əvvəlcədən POP tutumunu genişləndirin, aqressiv cache əmsalları daxil edin, anonim üçün canary-challenge qoyun.
Ödəniş/çıxış marşrutları: mTLS ilə ayrıca edge-hovuz, qısa vaxtlar, rəqabət limitləri; heç bir 0-RTT.
Geo-siyasətlər: regional allow-laysts, ASN-filtrasiya «hosting», sürətli geo-keçid.
Antifrodla kəsişmə: velocity limitləri və Risk API DDoS hadisəsi zamanı «sərt» profilə keçir.

16) Prod hazırlıq yoxlama siyahısı

  • Anycast или multi-edge/CDN; scrubbing kanalları yoxlanılır.
  • Border-ACL/uRPF; nftables/ebpf/XDP profilləri, conntrack-less filtrasiya.
  • Sysctl-tuning TCP/SYN, UDP port gücləndiriciləri üçün limity pps.
  • HTTP/2/3 limitlər (streams, frames, headers), slow-müdafiə, body/header-limits.
  • L7-limitləri və challenge; perimetri cache və coalescing.
  • Dashboard pps/bps/conntrack/IRQ + L7 RED; h2_rst/429 anomaliyasında alertlər.
  • Runbook/playbook, provayder əlaqə, profil daxil bir-click.
  • Təlimlər: Burst, slow, HTTP/2 reset; hesabat və təkmilləşdirmələrin fiksasiyası.
  • Ödəniş/kritik marşrutlar, mTLS və ciddi limitlər üçün ayrılmış hovuzlar.

17) TL; DR

Qoruyucu təbəqə: Anycast + scrubbing həcmi söndürür, eBPF/XDP + nftables yığına qədər zibil kəsir, L7-limitləri/çağırışlar/cache SLA saxlayır. TCP (SYN cookies, backlog) sazlayın, UDP gücləndiricilərini məhdudlaşdırın, HTTP/2/3 və yavaş qorunma limitlərini təyin edin. Runbook var və təlim; iGaming üçün - həddi pik saatlarda əvvəlcədən genişləndirin və mTLS və sərt limitlərlə ödəniş yollarını ayırın.

Contact

Bizimlə əlaqə

Hər hansı sualınız və ya dəstək ehtiyacınız varsa — bizimlə əlaqə saxlayın.Həmişə köməyə hazırıq!

Telegram
@Gamble_GC
İnteqrasiyaya başla

Email — məcburidir. Telegram və ya WhatsApp — istəyə bağlıdır.

Adınız istəyə bağlı
Email istəyə bağlı
Mövzu istəyə bağlı
Mesaj istəyə bağlı
Telegram istəyə bağlı
@
Əgər Telegram daxil etsəniz — Email ilə yanaşı orada da cavab verəcəyik.
WhatsApp istəyə bağlı
Format: ölkə kodu + nömrə (məsələn, +994XXXXXXXXX).

Düyməyə basmaqla məlumatların işlənməsinə razılıq vermiş olursunuz.