Fırsat: 31.12.2026 tarihine kadar tüm yazılımlarda kurulum ve içerik aktarımı ücretsiz.İncele →

Web uygulamalarında temel güvenlik katmanları

HTTPS’ten dosya yüklemeye, oturum yönetiminden yedeğe: her web uygulamasında bulunması gereken 8 güvenlik katmanı ve kontrol soruları.

Güvenlik3 Eylül 20263 dk okumaWebbiu
Web uygulamalarında temel güvenlik katmanları – Webbiu blog görseli

Bir web uygulaması internete açıldığı dakikadan itibaren otomatik tarayıcıların ve saldırganların hedefindedir. Güvenlik tek bir “ayar” değil, birbirini tamamlayan katmanlardır: biri eksik kaldığında diğerleri zararı sınırlar. Aşağıdaki sekiz katman, işletme sitesinden SaaS ürününe kadar her uygulamada bulunması gereken temelleri özetliyor.

1) Aktarım güvenliği: HTTPS ve güvenlik başlıkları

Tüm trafik TLS ile şifrelenmeli, HTTP istekleri HTTPS’e yönlendirilmeli (HSTS ile tarayıcıya kalıcı olarak bildirilmeli). Ayrıca X-Content-Type-Options, Referrer-Policy, Permissions-Policy ve Content-Security-Policy gibi başlıklar çerçeveleme, betik enjeksiyonu ve veri sızıntısı riskini azaltır.

2) Kimlik doğrulama ve oturum yönetimi

  • Şifreler asla düz metin tutulmamalı; bcrypt / argon2 gibi yavaş özetleme algoritmaları kullanılmalı.
  • Oturum çerezleri HttpOnly, Secure ve SameSite ile işaretlenmeli; giriş sonrası oturum kimliği yenilenmeli.
  • Yönetici hesapları için iki adımlı doğrulama (TOTP) zorunlu tutulmalı; kurtarma kodları güvenli saklanmalı.
  • Oturumlar belirli süre sonra kapanmalı, “cihazı hatırla” özelliği imzalı ve süreli olmalı.

3) Kaba kuvvet ve otomatik saldırılara karşı koruma

Giriş, şifre sıfırlama, doğrulama kodu ve form uç noktalarında hız sınırlaması olmalı: art arda hatalı denemede gecikme, hesap/IP bazlı kilit, bot tuzakları (honeypot) ve gerektiğinde CAPTCHA. Kullanıcı var mı yok mu bilgisini hata mesajından sızdırmayın.

4) Girdi doğrulama ve çıktı kodlama

Kullanıcıdan gelen her veri güvenilmezdir. SQL için parametreli sorgular (SQL injection’a karşı), ekranda gösterirken HTML kaçışı (XSS’e karşı), sunucu tarafında tür/uzunluk doğrulaması şarttır. Yalnızca istemci tarafı doğrulamaya güvenmeyin.

5) CSRF ve istek doğrulama

Oturum açık bir kullanıcıyı farkında olmadan işlem yapmaya zorlayan saldırılara (CSRF) karşı durum değiştiren her form ve istekte tahmin edilemez jeton doğrulanmalı; SameSite çerezleri ek koruma sağlar. API’lerde de kimlik ve kaynak denetimi yapılmalı.

6) Güvenli dosya yükleme

Dosya yüklemesi, saldırganların sunucuya zararlı kod yerleştirme yoludur. Dosya türü yalnızca uzantıya göre değil içeriğe göre doğrulanmalı, boyut sınırlanmalı, dosya adı rastgele üretilmeli, yükleme klasöründe betik çalıştırma kapatılmalı ve mümkünse dosyalar web kökü dışında saklanıp yetkili bağlantıyla sunulmalıdır. Dosya yollarını kullanıcıya hiç göstermemek ek bir güvenlik katmanıdır.

7) Yetkilendirme ve veri koruma

  • “En az yetki” ilkesi: her kullanıcı yalnızca işini yapmak için gereken ekranları görsün.
  • Başkasının kaydına kimlik değiştirerek erişimi önleyin (her kayıt isteğinde sahiplik kontrolü).
  • Hassas alanlar (T.C. kimlik no, adres, belge) veritabanında şifreli saklanmalı; yedekler de şifreli olmalı.
  • Çok kiracılı sistemlerde kiracı verisi birbirinden yalıtılmalı (çok kiracılı mimari yazısı).

8) İzleme, kayıt ve yedekleme

Giriş denemeleri, yetki değişiklikleri ve kritik işlemler zaman, kullanıcı ve IP bilgisiyle kayıt altına alınmalı. Yedekler düzenli alınmalı, farklı bir yerde saklanmalı ve geri yükleme belirli aralıklarla denenmelidir; test edilmemiş yedek, yedek değildir. Güncellemeler (PHP/CMS/kütüphane) gecikmeden uygulanmalıdır.

Hızlı kontrol listesi

  1. Sitenin tamamı HTTPS ve HSTS ile mi sunuluyor?
  2. Yönetici girişinde iki adımlı doğrulama zorunlu mu?
  3. Giriş ve form uç noktalarında hız sınırı var mı?
  4. SQL/HTML girdileri parametreli ve kaçışlı mı?
  5. Her form CSRF jetonu taşıyor mu?
  6. Dosya yükleme içerik doğrulaması ve güvenli depolamayla mı yapılıyor?
  7. Hassas alanlar şifreli mi, yetkiler en az düzeyde mi?
  8. Kritik işlemler kayıt altında, yedekler test edilmiş mi?

KVKK ile ilişkisi

Kişisel veri işleyen her uygulama, uygun teknik ve idari tedbirleri almakla yükümlüdür. Yukarıdaki katmanlar bu tedbirlerin teknik kısmının temelidir. Bu yazı hukuki görüş değildir; uygulamaya özgü ayrıntılar için uzmanla çalışın.

Webbiu olarak geliştirdiğimiz tüm projelerde bu katmanları standart olarak uyguluyoruz. Güvenli bir web sitesi ya da uygulama için kurumsal web ve özel yazılım hizmetlerimizi inceleyin, teklif alın. SEO tarafı için teknik SEO listesine da bakabilirsiniz.

Sık sorulan sorular

HTTPS yeterli bir güvenlik önlemi midir?

Hayır. HTTPS yalnızca aktarım sırasında veriyi korur; uygulama içindeki açıklara (SQL injection, XSS, zayıf yetkilendirme) karşı koruma sağlamaz.

İki adımlı doğrulama neden önemli?

Şifre çalınsa bile ikinci faktör olmadan giriş yapılamaz. Yönetici hesapları için en etkili tekil önlemlerden biridir.

Yedekleme tek başına yeterli mi?

Yedek, olay sonrası kurtarma sağlar ama saldırıyı önlemez. Önleyici katmanlarla birlikte kullanılmalı ve geri yükleme düzenli denenmelidir.