Güvenlik tek bir eklenti değildir
Web güvenliği; kod, sunucu ayarı, kullanıcı alışkanlığı ve bakım sürecinin birlikte ele alınmasıdır. Güçlü parola kullanırken güncel olmayan PHP sürümü çalıştırmak veya yedeksiz kalmak sistemi yine riskli bırakır.
Öncelik, en sık görülen ve etkisi yüksek riskleri azaltmaktır. Formlar, dosya yükleme, oturum ve yönetim erişimi özellikle dikkat ister.
- Güncel yazılım ve bağımlılıklar
- Sınırlı kullanıcı yetkileri
- Güvenli form doğrulama
- Düzenli ve test edilmiş yedek
Form ve giriş verilerinin korunması
Tarayıcıdan gelen hiçbir veri doğrudan güvenilir kabul edilmemelidir. Alan tipi, uzunluk ve beklenen format sunucu tarafında doğrulanmalıdır.
Veritabanı işlemlerinde prepared statement kullanılmalı, ekrana basılan kullanıcı verisi bağlama uygun şekilde kaçırılmalıdır. Formlarda CSRF koruması bulunmalıdır.
Yalnızca JavaScript ile yapılan doğrulama kullanıcı deneyimini geliştirir fakat güvenlik kontrolünün yerini tutmaz.
Oturum ve erişim yönetimi
Oturum çerezleri HttpOnly, SameSite ve HTTPS kullanılıyorsa Secure özellikleriyle ayarlanmalıdır. Giriş sonrası oturum kimliği yenilenmelidir.
Kullanıcı yalnızca ihtiyacı olan işlemlere erişmelidir. Yönetim sayfalarının URL’sini gizlemek yetkilendirme değildir; her istekte rol kontrolü yapılmalıdır.
- Güvenli çerez ayarları
- Oturum kimliği yenileme
- Rol bazlı yetkilendirme
- Başarısız giriş ve kritik işlem logları
Yedekleme, izleme ve müdahale
Yedek yalnızca alınmamalı, geri yüklenebilir olduğu da düzenli test edilmelidir. Dosya ve veritabanı yedeklerinin aynı sunucuda tek kopya tutulması yeterli değildir.
Beklenmeyen hata artışı, dosya değişikliği veya yoğun giriş denemesi için uyarı mekanizması olaylara erken müdahaleyi sağlar.
- Otomatik dosya ve veritabanı yedeği
- Farklı konumda yedek kopyası
- Hata ve erişim log takibi
- Olay anında erişim kapatma ve geri dönüş planı