Brute Force, SQL Injection ve XSS Saldırılarına Karşı Koruma Yöntemleri
Brute Force, SQL Injection ve XSS Saldırılarına Karşı Koruma Yöntemleri
Web uygulamaları her geçen gün daha fazla saldırı altında. Özellikle Brute Force, SQL Injection ve XSS (Cross-Site Scripting) saldırıları en yaygın tehdit türleri arasında yer alır. Bu makalede, bu saldırıların nasıl çalıştığını ve web sitenizi korumak için alabileceğiniz etkili önlemleri adım adım anlatıyoruz.
- 1) Brute Force Saldırısı Nedir?
- Koruma Yöntemleri
- 2) SQL Injection Nedir?
- Koruma Yöntemleri
- 3) XSS (Cross-Site Scripting) Nedir?
- Koruma Yöntemleri
- 4) Sunucu Katmanında Ek Güvenlik
- 5) Uygulama Katmanında Güvenlik
- 6) Cloudflare WAF ve Rate Limiting
- 7) Güncel Yazılım Kullanımı
- 8) Log İzleme ve Uyarı Sistemi
- 9) Güvenlik Eklentileri (WordPress Örneği)
- 10) Kurumsal Düzeyde Güvenlik İçin
- Sonuç
1) Brute Force Saldırısı Nedir?
Brute Force saldırısı, saldırganların kullanıcı adı ve parolayı sistematik olarak tahmin ederek giriş yapmaya çalıştığı bir yöntemdir. Bu saldırı özellikle WordPress, cPanel, SSH ve web login sayfalarında yaygındır.
Koruma Yöntemleri
- Güçlü Parolalar: 12+ karakter, büyük/küçük harf, sayı ve özel karakter kombinasyonu kullanın.
- 2FA (İki Aşamalı Doğrulama): Parola bilinse bile ikinci adım güvenliği sağlar.
- Login Attempt Limit: 3 başarısız girişten sonra IP engellemesi.
- Fail2Ban: SSH ve web servisleri için yanlış giriş denemelerinde IP’yi otomatik yasaklar.
- reCAPTCHA: Formlarda bot erişimini engeller.
2) SQL Injection Nedir?
SQL Injection, saldırganların web formları veya URL parametreleri üzerinden veritabanı sorgularını manipüle ederek hassas bilgilere ulaşmasını sağlayan bir yöntemdir. En yaygın web uygulama açıklarından biridir.
Koruma Yöntemleri
- Hazırlanmış Sorgular (Prepared Statements): Veritabanı işlemlerinde doğrudan string birleştirmesi yapmayın.
- ORM (Object Relational Mapper) Kullanımı: Laravel Eloquent, Django ORM gibi araçlar injection riskini azaltır.
- Girdi Doğrulama: Kullanıcıdan gelen tüm veriler filtrelenmeli ve tip kontrolü yapılmalıdır.
- Hata Mesajlarını Gizleme: Veritabanı hatalarını kullanıcıya göstermeyin.
- WAF Kullanımı: Host düzeyinde SQL injection imzalarını algılayan güvenlik duvarları (örn. HostLigo WAF Koruma).
3) XSS (Cross-Site Scripting) Nedir?
XSS, saldırganların zararlı JavaScript kodlarını siteye enjekte ederek kullanıcıların oturum bilgilerini çalmasına veya zararlı yönlendirmeler yapmasına neden olur.
Koruma Yöntemleri
- Output Encoding: Kullanıcıdan alınan veriler HTML çıktısına yazılmadan önce encode edilmelidir.
- HTML Sanitization: Güvenilir olmayan HTML etiketleri ve script’ler temizlenmelidir.
- Content Security Policy (CSP): Tarayıcıların yalnızca belirli kaynaklardan script çalıştırmasını sağlar.
- Cookie Güvenliği:
HttpOnlyveSameSiteözelliklerini aktif edin.
4) Sunucu Katmanında Ek Güvenlik
- ModSecurity (WAF): OWASP CRS kural setiyle brute force, SQLi ve XSS denemelerini otomatik engeller.
- Fail2Ban: SSH, FTP, WordPress gibi servislerde hatalı giriş yapan IP’leri yasaklar.
- Firewall (UFW/IPTables): Gereksiz portları kapatın, yalnızca 80/443 gibi servisleri açık bırakın.
5) Uygulama Katmanında Güvenlik
- Input Validation: Tüm form verilerini sanitize edin.
- CSRF Token: Form gönderimlerinde rastgele token ekleyin.
- HTTPS: Tüm bağlantılarda SSL kullanın.
6) Cloudflare WAF ve Rate Limiting
Cloudflare WAF saldırılar daha siteye ulaşmadan filtreleme yapar. “Rate Limiting” özelliği ile aynı IP’den gelen çok sayıda isteği sınırlandırabilirsiniz.
7) Güncel Yazılım Kullanımı
- WordPress, Joomla, Laravel gibi sistemleri ve eklentileri her zaman güncel tutun.
- Güncel PHP sürümü ve güvenlik yamaları aktif olmalı.
8) Log İzleme ve Uyarı Sistemi
Sunucunuzdaki log dosyalarını (Apache, Nginx, auth.log) düzenli olarak analiz edin. Zabbix veya Netdata gibi sistemlerle olağan dışı trafik tespit edildiğinde e-posta bildirimi alabilirsiniz.
9) Güvenlik Eklentileri (WordPress Örneği)
WordPress kullanıcıları aşağıdaki eklentilerle saldırılara karşı koruma sağlayabilir:
- Wordfence Security (WAF + brute force engelleme)
- iThemes Security (2FA, login limit, malware tarama)
- WP Cerber (reCAPTCHA + IP beyaz liste)
10) Kurumsal Düzeyde Güvenlik İçin
Büyük ölçekli sistemlerde, güvenlik katmanlarının birleşik çalışması gerekir. HostLigo altyapısında WAF Koruma ve Premium VDS sistemleri SQL injection ve brute force saldırılarına karşı otomatik güncellenen kural setleriyle çalışır.
Sonuç
Brute Force, SQL Injection ve XSS saldırılarına karşı en etkili savunma, katmanlı güvenlik yaklaşımıdır. Uygulama, sunucu ve ağ düzeyinde alınacak önlemler bir arada kullanıldığında, sisteminiz hem performanslı hem de güvenli şekilde çalışacaktır.