← Tüm yazılar

Çerez (Cookie) Güvenliği: HttpOnly, Secure ve SameSite Doğru Kullanımı

5 Eylül 2026

Çerez (Cookie) Güvenliği: HttpOnly, Secure ve SameSite Doğru Kullanımı

Çerezler, web’in durum tutma biçimidir; oturum çerezleri ise kullanıcının kimliğini taşır. Bu yüzden çerezler, saldırganların birincil hedefidir: bir oturum çerezini ele geçiren, kullanıcının kimliğine bürünebilir. Üç güvenlik bayrağı ve doğru kapsam ayarı, bu riski büyük ölçüde azaltır.

Üç kritik bayrak

Oturum çerezi ideal olarak şöyle ayarlanır:

Set-Cookie: session=...; HttpOnly; Secure; SameSite=Lax; Path=/
  • HttpOnly: Çerez, JavaScript’ten (document.cookie) okunamaz. Bir XSS zafiyeti olsa bile saldırgan oturum çerezini betikle çalamaz. Oturum çerezleri için neredeyse her zaman gereklidir.
  • Secure: Çerez yalnız HTTPS üzerinden gönderilir. Şifresiz bağlantıda ağı dinleyen biri çerezi göremez.
  • SameSite: Çerezin farklı sitelerden tetiklenen isteklerde gönderilip gönderilmeyeceğini belirler. Lax (modern varsayılan) çoğu CSRF senaryosunu keser; Strict daha katıdır.

Kapsam: Domain ve Path

Çerezin nereye gönderileceği de bir güvenlik ayarıdır:

  • Domain: Belirtilmezse çerez yalnız ayarlandığı tam ana bilgisayara gider (daha güvenli). Geniş bir üst alan (Domain=.siteniz.com) belirtmek, çerezi tüm alt alanlara yayar; savunmasız bir alt alan varsa risk artar.
  • Path: Çerezi ilgili yola sınırlar. Genelde Path=/ yeterlidir; ancak gereksiz geniş kapsamdan kaçının.

__Host- öneki ile ekstra sağlamlık

Çerez adına __Host- öneki koymak, tarayıcının bazı katı koşulları zorlamasını sağlar: çerez Secure olmalı, Domain içermemeli ve Path=/ olmalıdır. Bu, çerezin alt alanlar arası taşınmasını ve bazı sabitleme (fixation) hilelerini zorlaştırır:

Set-Cookie: __Host-session=...; Secure; Path=/; SameSite=Lax; HttpOnly

Oturum yönetimi ilkeleri

  • Girişte oturum kimliğini yenileyin (session fixation’a karşı).
  • Çıkışta ve zaman aşımında oturumu sunucuda geçersiz kılın; yalnız çerezi silmek yeterli değildir.
  • Hassas çerezleri gereğinden uzun yaşatmayın; makul bir son kullanma süresi verin.

Sık yapılan hatalar

  • Oturum çerezinde HttpOnly unutmak: XSS varsa çerez doğrudan çalınabilir.
  • Secure olmadan HTTPS sitede çerez: İlk şifresiz istekte çerez sızabilir.
  • Çok geniş Domain kapsamı: Bir alt alandaki zafiyet, tüm oturumları etkiler hale gelir.

Özet

Oturum çerezleri için sağlam varsayılan: HttpOnly + Secure + SameSite=Lax/Strict, dar kapsam (Domain belirtmeden, Path=/) ve mümkünse __Host- öneki. Bu ayarlar, XSS ve ağ dinlemeye karşı çerez hırsızlığını ve CSRF’yi ciddi biçimde zorlaştırır.

Kaynaklar: MDN: Set-Cookie, OWASP Session Management Cheat Sheet.

Çerezlerinizin güvenlik bayraklarını (HttpOnly/Secure/SameSite) CyberTestify’ın taraması yakaladığı gerçek yanıtlardan deterministik olarak kontrol eder — dış yüzeyinizi tarayın.