
DDoS Saldırıları: Türleri, Tespiti ve Korunma Yöntemleri
DDoS saldırı türleri ve korunma yöntemleri. Volumetrik, protokol ve uygulama katmanı saldırıları, rate limiting, CDN koruması ve fail2ban yapılandırması.
DDoS Saldırıları: Türleri, Tespiti ve Korunma Yöntemleri
DDoS (Distributed Denial of Service — Dağıtık Hizmet Engelleme) saldırıları, web sitelerini ve sunucuları erişilemez hale getirmeyi hedefler. Yılda milyonlarca saldırı gerçekleşir.
DDoS Saldırı Türleri
1. Volumetrik Saldırılar (Hacim Tabanlı)
Bant genişliğini tüketmeye çalışır.
- UDP Flood: Sahte UDP paketleriyle porları doldur
- ICMP Flood (Ping Flood): Yoğun ping paketleri
- DNS Amplification: Küçük sorguyla büyük yanıt üretimi
- NTP Amplification: NTP sunucuları aracılığıyla amplifikasyon
Büyüklük: Gbps ile Tbps seviyesinde
2. Protokol Saldırıları (Durum Tükenmesi)
Sunucu kaynaklarını tüketir.
- SYN Flood: TCP three-way handshake yarım bırakılır
- Ping of Death: Maksimum boyutu aşan ICMP paketleri
- Smurf Attack: Broadcast adresine yönelik ping
Büyüklük: Mpps (milyon paket/saniye) seviyesinde
3. Uygulama Katmanı Saldırıları (Layer 7)
Web uygulamasına yönelik, düşük hacimli ama etkili.
- HTTP Flood: Yoğun HTTP GET/POST istekleri
- Slowloris: Çok sayıda yarı açık bağlantı
- RUDY: Çok yavaş POST istekleri
- DNS Query Flood: DNS sunucusunu boğma
Büyüklük: Daha az bant genişliği, daha yıkıcı etki
DDoS Tespiti
Anormal Trafik İşaretleri:
# Aktif bağlantı sayısı (çok yüksekse alarm)
ss -s
netstat -an | wc -l
# IP başına bağlantı sayısı
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -rn | head -20
# SYN_RECV durumundaki bağlantılar (SYN flood göstergesi)
netstat -an | grep SYN_RECV | wc -l
# HTTP istek hızı (nginx)
tail -f /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head -10
# Ağ trafiği izleme
iftop -i eth0
nethogs
Sistem Yük Kontrolü:
# Anlık sistem yükü
uptime
top -b -n1 | head -20
# CPU kullanımı
mpstat 1 5
# Ağ istatistikleri
ip -s link show eth0
Korunma Yöntemleri
1. Rate Limiting (Nginx)
# /etc/nginx/nginx.conf
http {
# IP başına istek limiti
limit_req_zone $binary_remote_addr zone=general:10m rate=10r/s;
limit_conn_zone $binary_remote_addr zone=conn_limit:10m;
server {
# Rate limit uygula
limit_req zone=general burst=20 nodelay;
limit_conn conn_limit 10;
# Bağlantı zaman aşımı
client_body_timeout 10;
client_header_timeout 10;
keepalive_timeout 30;
send_timeout 10;
}
}
2. iptables ile SYN Flood Koruması
# SYN cookies etkinleştir
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo "net.ipv4.tcp_syncookies = 1" >> /etc/sysctl.conf
# iptables SYN flood koruması
iptables -A INPUT -p tcp --syn -m limit --limit 1/s --limit-burst 3 -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP
# ICMP flood koruması
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
3. fail2ban ile HTTP Flood Koruması
# /etc/fail2ban/jail.local
[nginx-http-auth]
enabled = true
port = http,https
logpath = /var/log/nginx/error.log
[nginx-limit-req]
enabled = true
port = http,https
logpath = /var/log/nginx/error.log
maxretry = 10
bantime = 600
4. Cloudflare ile CDN Koruması
Cloudflare, Layer 7 DDoS saldırılarını CDN ağı üzerinde filtreler:
- Under Attack Mode: Şüpheli trafiği zorlar
- Rate Limiting: IP başına istek limiti
- Bot Management: Otomatik trafik engelleme
- Firewall Rules: Özel engelleme kuralları
# Gerçek IP'yi nginx'te aktif et
# /etc/nginx/conf.d/cloudflare.conf
set_real_ip_from 103.21.244.0/22;
set_real_ip_from 103.22.200.0/22;
# ... diğer Cloudflare IP aralıkları
real_ip_header CF-Connecting-IP;
5. Null Route (Kara Delik Yönlendirme)
# Saldırı yapan IP'yi null route'a yönlendir
ip route add blackhole 192.168.1.100/32
# Kaldır
ip route del blackhole 192.168.1.100/32
DDoS Müdahale Planı
- Tespit: Trafik anomalisi fark edilir
- Analiz: Saldırı türü ve kaynak belirlenir
- Filtreleme: Kötü niyetli trafik engellenir
- Yönlendirme: CDN/DDoS servisine trafik yönlendirilir
- Kurtarma: Normal operasyona dönüş
- Analiz: Olayı dokümante edin, önlem geliştirin
Büyükweb DDoS Koruması
Büyükweb hosting ve VDS çözümleri, Türkiye'nin Bursa Pendc Tier 3 veri merkezinde datacenter seviyesinde DDoS koruması ile desteklenmektedir:
- Volumetrik saldırı koruması: Upstream scrubbing
- Layer 7 koruması: WAF entegrasyonu
- 7/24 izleme: NOC ekibi aktif takip
- Otomatik mitigation: Saldırı tespitinde anında müdahale
2026 DDoS Tehdit Manzarası
DDoS saldırıları 2025-2026 döneminde rekor boyutlara ulaştı. Cloudflare ve Akamai raporlarına göre:
| Trend | 2024 | 2026 |
|---|---|---|
| Maksimum kayıt edilen saldırı | 5.6 Tbps | 7.3 Tbps+ (HTTP/2 Rapid Reset varyasyonları) |
| Saldırı sayısı (yıllık) | ~13M | ~21M |
| Ortalama Layer 7 saldırı süresi | 24 dk | 48 dk |
| Botnet kaynağı dominant cihaz | DVR/router | IoT + bulut VPS |
| Ransom DDoS oranı | %12 | %23 |
Yeni nesil tehditler:
- HTTP/2 Rapid Reset (CVE-2023-44487) — RST stream paketleriyle saniyede yüz milyonlarca istek üreten amplifikasyon
- HTTP/3 (QUIC) flood — UDP tabanlı protokolün firewall'ları zorlaması
- Bot-as-a-Service — saatlik kiralanan saldırı altyapıları (booter/stresser servisleri)
- AI tabanlı uygulama saldırıları — bot davranışını insan gibi taklit eden, JavaScript çalıştırabilen istemciler
- Cloud VPS amplifikasyon — proksi kötüye kullanımıyla rezidansiyel görünümlü trafik
DDoS Saldırı Vektörleri Detaylı Tablo
| Katman | Vektör | Tipik Boyut | Tespit | Mitigation |
|---|---|---|---|---|
| L3/L4 | UDP Flood | 50 Gbps – 3 Tbps | bant doluluk, paket/sn | scrubbing, BGP blackhole |
| L3/L4 | SYN Flood | 1-50 Mpps | SYN_RECV durumu | SYN cookies, rate-limit |
| L3/L4 | DNS amplification | 100-500 Gbps | UDP/53 yanıt boyutu | upstream scrubbing |
| L3/L4 | NTP/SSDP/Memcached amp | 200 Gbps – 1.7 Tbps | UDP yansıma | kapalı port, scrubbing |
| L7 | HTTP Flood (GET/POST) | 1-10 Mrps | request/sn | rate-limit, WAF, CAPTCHA |
| L7 | Slowloris | düşük bant, çok bağlantı | yarı açık conn | conn-limit, mod_reqtimeout |
| L7 | HTTP/2 Rapid Reset | 100M+ rps | RST stream sayısı | h2 disable, edge filter |
| L7 | Cache busting (random query) | yüksek origin yükü | uniq query string | edge regex, parametre filtre |
| L7 | API abuse / credential stuffing | düşük volüm, hedefli | başarı oranı düşük | bot mgmt, MFA, rate-limit |
Linux Kernel Hardening (sysctl)
DDoS dayanıklılığı için kernel parametreleri:
# /etc/sysctl.d/99-ddos.conf
# SYN flood koruması
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 3
# Bağlantı limitleri
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65535
net.ipv4.tcp_max_tw_buckets = 1440000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 15
# ICMP
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
# Spoof koruması
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
# IP fragmentation
net.ipv4.ipfrag_high_thresh = 524288
net.ipv4.ipfrag_low_thresh = 393216
net.ipv4.ipfrag_time = 30
# Hızla uygula
sysctl -p /etc/sysctl.d/99-ddos.conf
nftables ile Modern Filtreleme
iptables yerine nftables (Debian 12+, RHEL 9+ default) ile state-aware filtreleme:
# /etc/nftables.conf
table inet ddos {
set blacklist {
type ipv4_addr
flags timeout
}
chain input {
type filter hook input priority 0; policy drop;
# Loopback ve mevcut bağlantılara izin
iif "lo" accept
ct state established,related accept
# Blacklist
ip saddr @blacklist drop
# SYN flood: 30 paket/sn üstü ban
tcp flags syn limit rate over 30/second add @blacklist { ip saddr timeout 1h }
# ICMP rate limit
icmp type echo-request limit rate 5/second accept
# SSH bruteforce (port 22) — 4 deneme/dk
tcp dport 22 ct state new limit rate 4/minute accept
# HTTP/HTTPS conn-limit (her IP max 50 eşzamanlı)
tcp dport { 80, 443 } ct count over 50 add @blacklist { ip saddr timeout 30m }
tcp dport { 80, 443 } accept
}
}
Nginx — Layer 7 Hardening
Sadece rate-limit yetmez; HTTP-level senaryolar için katmanlı strateji:
http {
# Çoklu zone — IP, server, login
limit_req_zone $binary_remote_addr zone=ip_general:10m rate=10r/s;
limit_req_zone $binary_remote_addr zone=ip_strict:10m rate=2r/s;
limit_req_zone $server_name zone=server:10m rate=1000r/s;
limit_conn_zone $binary_remote_addr zone=conn_per_ip:10m;
# Slowloris — başlık tamamlama timeout
client_header_timeout 10s;
client_body_timeout 10s;
send_timeout 10s;
reset_timedout_connection on;
# Keepalive konservatif
keepalive_timeout 30s;
keepalive_requests 100;
# Buffer tuning (büyük POST saldırılarına karşı)
client_body_buffer_size 16k;
client_max_body_size 8m;
large_client_header_buffers 4 8k;
# H/2 Rapid Reset koruması (nginx 1.25.3+)
http2_max_concurrent_streams 128;
server {
listen 443 ssl http2;
# Genel rate-limit
limit_req zone=ip_general burst=20 nodelay;
limit_conn conn_per_ip 20;
# Login sayfasında çok daha sıkı
location = /wp-login.php {
limit_req zone=ip_strict burst=5 nodelay;
# CAPTCHA / 2FA proxy
}
# Bilinen kötü user-agent / boş ref
if ($http_user_agent ~* (curl|python-requests|libwww)) { return 444; }
}
}
return 444; — Nginx'e özel, yanıt göndermeden bağlantıyı kapatır (saldırgan zaman/kaynak harcar).
CDN ve DDoS Servisi Karşılaştırması
| Servis | L3/4 Koruma | L7 Koruma | Türkiye edge | Ücretsiz katman |
|---|---|---|---|---|
| Cloudflare | ✓ unmetered | ✓ ücretsizde sınırlı, Pro/Bus daha kapsamlı | İstanbul + Ankara | ✓ |
| Bunny.net Shield | ✓ | ✓ Bot Detection ek modül | Frankfurt edge | kısmi |
| Yurt dışı bulut DDoS koruma servisleri | Standart katman ücretsiz, Premium katman aylık $3000+ USD-bazlı | |||
| Akamai Prolexic | Tier 1 ölçek | ✓ Kona Site Defender | İstanbul edge | enterprise |
| Imperva | ✓ | ✓ | Frankfurt | enterprise |
Pratik öneri: Küçük-orta siteler için Cloudflare ücretsiz/Pro + origin'de Nginx + nftables. Kurumsal yüksek-risk için Akamai/Imperva + on-prem WAF.
Cloudflare Detaylı Yapılandırma
# Önerilen Cloudflare ayarları (Dashboard veya API)
Security Level: High
Bot Fight Mode: ON # Free planda mevcut
Challenge Passage: 30 minutes
Browser Integrity Check: ON
Hotlink Protection: ON
SSL/TLS: Full (Strict)
Always Use HTTPS: ON
Min TLS: 1.2
HTTP/3 (QUIC): ON
0-RTT: OFF # replay risk
# WAF / Custom Rules (Pro+)
- (http.request.uri.path contains "/wp-login.php" and not cf.client.bot) → Managed Challenge
- (ip.geoip.country in {"CN" "RU" "KP"} and http.request.uri.path eq "/admin") → Block
- (http.user_agent contains "bot" and not cf.client.bot) → Block
- (rate(1m) > 100) → Challenge
Origin sızdırmazlığı: Cloudflare arkasındaki gerçek origin IP'sini gizleyin — Authenticated Origin Pulls + IP allowlist (sadece Cloudflare CIDR'lerinden trafik kabul) ile saldırgan origin'i bypass edemez.
Saldırı Sırasında Adım Adım Müdahale
Dakika 0-5: Tespit + Triyaj
- Monitoring alarmı geldiğinde (Prometheus/Netdata/UptimeRobot) — saldırı türünü tespit et
netstat -ant | awk '{print $6}' | sort | uniq -cile bağlantı state dağılımıtcpdump -i eth0 -nn -c 1000 | head -100ile paket kaynak/protokol incele
Dakika 5-15: Acil Hafifletme
- Cloudflare → Under Attack Mode aktif
- Kötü user-agent / coğrafi blok kuralı ekle (geçici)
- Origin'de
iptables -I INPUT -s {kötü_subnet} -j DROP - Rate-limit'leri 10x sıkılaştır
Dakika 15-60: Stabilizasyon
- ISP / hosting sağlayıcısına haber ver (upstream scrubbing)
- Log toplamayı yoğunlaştır (daha sonra forensik için)
- Statik içeriği daha agresif cache (TTL artır)
- Critical olmayan endpoint'leri geçici kapat (örn. arama, yorum)
Saat 1+: Uzun Vadeli
- Saldırı paterni profil çıkar — IOC (Indicator of Compromise) listesi
- WAF kurallarını saldırı pattern'i ile besle
- Trustpilot/sosyal medyaya kullanıcı bilgilendirme
- Saldırı sonrası post-mortem raporu yaz
DDoS İzleme — Pratik Stack
Prometheus + Grafana ile özel alarmlar:
# prometheus.yml — node_exporter + nginx_exporter scrape
groups:
- name: ddos
rules:
- alert: HighRequestRate
expr: rate(nginx_http_requests_total[1m]) > 500
for: 30s
annotations:
summary: "RPS > 500 — olası HTTP flood"
- alert: HighConnState
expr: node_netstat_Tcp_CurrEstab > 5000
for: 1m
annotations:
summary: "Eşzamanlı bağlantı çok yüksek"
- alert: SynRecvSpike
expr: increase(node_netstat_Tcp_RetransSegs[2m]) > 1000
for: 1m
annotations:
summary: "TCP retransmit anormal — SYN flood şüphesi"
Düşük maliyetli alternatif: Netdata (tek binary, özel kural gerektirmez), GoAccess (real-time access log analizi), ipset + cron (5 dk'da bir kötü IP listesi güncelleme).
DDoS Test ve Hazırlık (Yasal)
Kendi sistemine izinli stres testi:
- wrk / ab — basit HTTP yük üretici
- slowhttptest — Slowloris-tipi simülasyon
- hping3 — TCP/UDP flood (sadece kendi izole lab ortamında)
- MHDDoS / SlowLoris.py — eğitim için public araçlar; internet'te başkalarına asla
- parti stress test servisleri (Anthropic SLA'sı dahilinde, RedWolf, NimbusDDOS) saldırı simülasyonu için kontrollü test paketleri sunar — kurumsal projelerde tercih edilir.
Tabletop exercise: Yılda 2-4 kez ekipçe "DDoS senaryosu" oyna. Telefon zinciri, runbook, role-playing — gerçek saldırıda paniği önler.
DDoS Sonrası Forensik Analiz
Saldırı sonrası mutlaka:
- Pcap kaydı sakla (
tcpdump -w attack.pcap) - Log dosyaları arşiv (nginx access/error, syslog, auth.log)
- IOC listesi (saldırgan IP/ASN/UA) → threat intel feed'e bildir
- AbuseIPDB, Spamhaus'a kötü IP'leri raporla
- Türk SOME (Siber Olaylara Müdahale Ekibi) — 24/7 ihbar hattı (USOM)
Büyükweb DDoS Koruması Detayı
Büyükweb VDS ve fiziksel dedicated sunucu altyapısı, Bursa Tier 3 veri merkezinde upstream BGP scrubbing ile korunmaktadır:
- L3/L4 saldırılar için edge router'da otomatik mitigation (volumetrik koruma)
- L7 saldırılar için opsiyonel WAF (Imunify360, ModSecurity OWASP CRS)
- 7/24 NOC ekibi — anomali tespitinde proaktif müdahale
- Saldırı raporları — müşteri talebiyle pcap dump + log paylaşımı
Yüksek-risk projeler (e-ticaret kampanyası, oyun sunucusu, finans uygulaması) için özel DDoS koruma paketi ile takviye edilebilir; detay için 0850 302 60 70.
Sıkça Sorulan Sorular
Cloudflare ücretsiz plan ne kadar saldırıyı durdurur?
Cloudflare resmi olarak ücretsiz planda da unmetered L3/L4 koruma verir; pratikte Tbps seviyesinde saldırılar bile filtrelenir. Layer 7 koruma sınırlı — Bot Fight Mode + Security Level High etkin tutulmalı. Pro plan WAF kuralları ve gelişmiş bot yönetimi getirir.
Origin IP sızarsa ne olur?
Saldırgan Cloudflare'i bypass edip doğrudan sunucuya saldırabilir. Önlem: origin firewall'da sadece Cloudflare IP CIDR'lerine TCP/443 izin ver; Authenticated Origin Pulls aktif et; subdomain (mail, ftp) gibi açık edge'lerden DNS sızıntısını engelle.
"Under Attack Mode" SEO'yu etkiler mi?
JavaScript challenge ekran 5 saniyelik gecikme oluşturur; bot olarak tespit edilirsen Googlebot beklemez. Cloudflare Bot Management ile Googlebot/Bingbot gibi verified bot'lar challenge'dan muaf tutulur. Sadece saldırı sırasında kısa süreli aktif tutmak güvenli.
VDS panik moduna geçtiğinde sunucuyu yeniden başlatmak çözüm mü?
Hayır — saldırı devam ederken reboot'tan sonra trafik aynı şekilde sunucuyu doldurur. Doğrusu: önce upstream filtreleme (CDN, ISP scrubbing) sonra origin restart. Sadece kernel paniği durumunda reboot anlamlı.
Düşük volümlü ama sürekli saldırı ne yapmalı?
Bu genelde API abuse veya scraper sayılır. Gerçek DDoS yerine bot management katmanı: Cloudflare Bot Fight Mode, fingerprint analiz (TLS JA3, header sırası), token-based rate-limit. Bazen Datacenter Proxy paketleri gibi meşru kullanım senaryolarına benzediği için statik IP allowlist düşünülmelidir.
Sunucum saldırı altında mı, yoksa viral mi oldum?
Hızlı kontrol: tail -f /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -rn — eğer ilk 20 IP tüm trafiğin %80'inden fazlasını yapıyorsa saldırı; trafik geniş ve organik referrer'lardan geliyorsa viral. Viral durumda CDN cache + sunucu ölçeklendirme; saldırıda mitigation devreye sok.
IPv6 saldırılarına karşı önlem ayrı mı?
Evet, çoğu admin IPv4'e odaklanır. IPv6 için aynı sysctl/iptables/nftables kurallarını ip6tables/nftables ip6 family ile ayrı tanımlamak gerekir. Cloudflare'da IPv6 default açıktır; origin firewall'da unutursanız tamamen açık kalır.
Ransom DDoS (saldırı tehdidi + ödeme talebi) e-postası geldi, ne yapmalı?
Asla ödeme yapmayın (FBI ve EUROPOL önerisi). 1) E-postayı saklayın (kanıt) 2) USOM'a (Türkiye SOME) bildirim yapın 3) CDN/DDoS servis sağlayıcınıza 24-48 saat öncesinde haber verin 4) Kritik servisleri Cloudflare arkasına alın 5) Backup ve runbook hazır olsun. Gerçek saldırı geldiğinde ücretsiz plan + sıkı WAF kuralları çoğu vakada yeterli.
"DDoS koruma" sözü veren her hosting aynı mı?
Hayır. Pratik fark: gerçek koruma = upstream BGP scrubbing + Tbps kapasite + 7/24 NOC. Marketing koruması = sadece sunucuda iptables. Sorulması gereken: "Saldırı 100 Gbps olduğunda ne yaparsınız? Edge'de mi, sunucuda mı filtre?" Tier 3 veri merkezleri (Büyükweb dahil) operatör seviyesi scrubbing sunar.
İlgili Rehberler
- fail2ban Kurulumu ve Yapılandırması
- ModSecurity WAF Kurulumu
- Nginx SSL/TLS HTTPS Yapılandırması
- CSF ConfigServer Firewall Kurulumu
- Imunify360 cPanel Kurulumu
İlgili Büyükweb Hizmetleri
Sunucu ve site güvenliğini ciddiye alanlar için Türkiye Tier 3 veri merkezimizdeki paketler:
- Imunify360 Korumalı Web Hosting
- Tam Yetki VDS Sunucu
- OpenVPN Paketleri
- Datacenter Proxy
- Fiziksel Dedicated Sunucu
Sorularınız için 0850 302 60 70 numaralı destek hattımıza veya iletişim sayfamıza yazabilirsiniz.
Güvenlik & SSL İlgili Hizmetlerimiz
Bu yazıda anlatılan teknik konuyu profesyonel altyapıyla deneyimleyin
Etiketler:

