Web Sitesi Güvenliği: Formlar, Girdi Doğrulama ve Temel Koruma Rehberi
Web sitesi güvenliğinin temeli tek bir cümlede özetlenebilir: kullanıcıdan gelen hiçbir veriye güvenmeyin. Saldırıların büyük kısmı hedefli değildir; otomatik tarayıcılar internetteki siteleri gezer ve bilinen açıkları dener. Bu yüzden ziyaretçi sayısı az olan bir site de aynı riskleri taşır. Aşağıdaki önlemler, küçük ve orta ölçekli projelerde en yaygın saldırı yollarının çoğunu kapatır.
Girdi Doğrulama Nasıl Yapılmalı?
- Beyaz liste mantığı kullanın: Neyin yasak olduğunu değil, neyin kabul edileceğini tanımlayın.
- Tür ve uzunluk kontrolü yapın: Sayı beklenen alanda sayı, tarih beklenen alanda tarih olmalıdır.
- Doğrulamayı sunucu tarafında yapın: Tarayıcı tarafındaki kontroller kullanıcı deneyimi içindir, güvenlik sağlamaz.
- Veritabanı sorgularında hazır ifadeler kullanın: Kullanıcı verisini sorgu metnine birleştirmek en klasik açıktır.
- Ekrana yazdırırken kaçış uygulayın: Kullanıcıdan gelen metni olduğu gibi sayfaya basmak betik çalıştırılmasına yol açabilir.
Form Güvenliği İçin Temel Önlemler
- Her forma oturuma bağlı bir güvenlik anahtarı ekleyin; bu, başka bir siteden gönderilen sahte istekleri engeller.
- Gönderim sıklığını sınırlayın. Aynı adresten dakikada belirli sayıdan fazla gönderim kabul etmeyin.
- Gizli bir tuzak alanı ekleyin; insanlar görmez, otomatik botlar doldurur ve böylece ayıklanır.
- Başarılı gönderimden sonra yönlendirme yapın, böylece sayfa yenilendiğinde kayıt tekrarlanmaz.
- Hata mesajlarında teknik ayrıntı vermeyin; kullanıcıya sade mesaj gösterin, ayrıntıyı günlüğe yazın.
- E-posta gönderen formlarda başlık alanlarına kullanıcı verisi eklemeyin.
Dosya Yükleme En Riskli Alandır
- Yüklenen dosyayı uzantısına göre değil, gerçek içerik türüne göre kontrol edin.
- Dosya adını siz belirleyin; kullanıcının verdiği adı asla doğrudan kullanmayın.
- Yükleme klasöründe betik çalıştırmayı sunucu ayarlarıyla kapatın.
- Mümkünse yüklenen dosyaları web kök dizininin dışında saklayın ve erişimi kontrollü verin.
- Boyut sınırı koyun ve yalnızca ihtiyaç duyduğunuz türlere izin verin.
- Görselleri yeniden işleyip kaydetmek, içine gömülü zararlı içeriği büyük ölçüde etkisiz kılar.
Yönetim Paneli ve Oturum Güvenliği
- Parolaları asla düz metin saklamayın; güçlü bir özetleme yöntemi kullanın.
- Giriş denemelerini sınırlayın ve başarısız denemeleri kaydedin.
- Yönetim paneline iki adımlı doğrulama ekleyin.
- Oturum çerezlerini yalnızca güvenli bağlantıda ve betikten erişilemez şekilde tanımlayın.
- Giriş sonrası oturum kimliğini yenileyin.
- Yönetim panelini mümkünse adres kısıtı veya ek bir katmanla koruyun.
Sunucu Tarafında Yapılacaklar
- Güvenlik başlıklarını ekleyin: çerçeve içine alınmayı engelleyen, içerik türü tahminini kapatan ve yönlendiren bilgisini sınırlayan başlıklar.
- İçerik güvenlik politikası tanımlayın ve yalnızca kullandığınız kaynaklara izin verin.
- Tüm trafiği güvenli bağlantıya yönlendirin ve sertifika yenilemesini otomatik hale getirin.
- Dizin listelemeyi kapatın; yapılandırma ve yedek dosyalarının indirilebilir olmadığını kontrol edin.
- Yedek dosyalarını site klasöründe bırakmayın. Sık görülen ve çok maliyetli bir hatadır.
- Kullandığınız kütüphaneleri ve platform sürümünü güncel tutun.
Saha Notu
Yönettiğim sitelerde sunucu günlüklerine ilk kez ciddi biçimde baktığımda gördüğüm manzara öğreticiydi: ziyaretçisi çok az olan bir sitede bile gün içinde onlarca otomatik deneme vardı. Denenen adresler hep aynıydı; bilinen yönetim paneli yolları, yedek dosyası isimleri ve yapılandırma dosyası uzantıları. Bu, güvenliğin popülerlikle ilgisi olmadığını net biçimde gösterdi. Aldığım iki somut önlem çok işe yaradı. Birincisi, site klasöründe hiçbir zaman yedek arşivi bırakmamak; eskiden geçici olarak bıraktığım bir yedeği unutmuşluğum vardı ve dosya adı tahmin edilebilir olduğu için bu ciddi bir risk oluşturuyordu. İkincisi, giriş denemelerini kaydedip sınırlamak. Deneme sayısını sınırladıktan sonra günlüklerdeki gürültü belirgin şekilde azaldı ve gerçek sorunları görmek kolaylaştı.
Sık Sorulan Sorular
Küçük bir site neden hedef olsun?
Hedef seçilmiyorsunuz, taranarak bulunuyorsunuz. Otomatik araçlar bilinen açıkları tüm sitelerde dener; site büyüklüğü fark etmez.
Hazır platform kullanmak daha mı güvenli?
Güncel tutulduğunda güvenlidir. Ancak yaygın platformlar daha çok hedeflenir, bu yüzden eklenti seçimi ve güncelleme disiplini kritik önem taşır.
Girdi doğrulamayı tarayıcı tarafında yapmam yeterli mi?
Yeterli değildir. Tarayıcı kontrolleri kolayca aşılır; asıl doğrulama her zaman sunucu tarafında yapılmalıdır.
Güvenlik başlıkları performansı etkiler mi?
Etkisi ihmal edilebilir düzeydedir. İçerik güvenlik politikasını ilk kurarken bazı kaynaklar engellenebilir, bu yüzden kademeli uygulamak iyi olur.
Sızma testi yaptırmam gerekir mi?
Ödeme veya kişisel veri işleyen sitelerde faydalıdır. Küçük projelerde önce temel önlemleri tamamlamak çok daha yüksek getiri sağlar.
Özet
Web güvenliğinin büyük kısmı, birkaç temel alışkanlığa dayanır: gelen veriyi doğrulamak, sorgularda hazır ifadeler kullanmak, dosya yüklemeyi sıkı kontrol etmek, yönetim paneline ek koruma koymak ve güvenlik başlıklarını eklemek. Bu önlemler, otomatik saldırıların neredeyse tamamını etkisiz kılar. Yedek dosyalarını site klasöründe bırakmamak ise tek satırlık ama çok değerli bir kuraldır.











Yorumlar
Henuz yorum yok. Ilk yorumu siz yazin.
Yorum Yap