Oturum sabitleme, CSRF token'ları, beni-hatırla rotasyonu, site başına çerez izolasyonu ve jekcms'in bilinçli olarak uzun tuttuğu 30 günlük oturum süresi — kimlik doğrulama sistemindeki her katman, dürüstçe açıklandı.
Oturum Güvenligi Neden Zor
PHP oturumlari basit görünür: session_start(), verileri $_SESSION'a depola, bitti. Ancak bu basitlik bir güvenlik jekcms sorunlari mayin tarlasini gizler. Oturum sabitleme, oturum ele gecirme, siteler arasi oturum sizintisi, CSRF saldirilari — her biri bir saldirgana CMS'nize tam admin erisimi verebilir.
JekCMS yedi katman oturum güvenligi uygular.
Katman 1: Güvenli Cerez Yapilandirmasi
httponly XSS'in oturum cerezlerini calmasini durdurur. secure oturum cerezlerinin sifrelenmemis HTTP üzerinden gonderilmesini onler. samesite=Lax capraz kokenli POST istekleriyle cerez gondermeyerek cogu CSRF saldrisini engeller.
Katman 2: Oturum Sabitleme Onleme
Basarili girişten sonra session_regenerate_id(true) yeni bir oturum ID'si oluşturur ve eski oturum verilerini yok eder.
Katman 3: CSRF Token Dogrulamasi
Her form gizli bir csrf_token alani icerir. Gecerli token olmadan POST istekleri 403 ile reddedilir.
Katman 4: Beni-Hatirla Token Rotasyonu
Token her kullanildiginda donatilir — eski token gecersiz kilinir ve yeni bir tane verilir. Token rotasyonu calinti bir beni-hatirla cerezinin yalnizca bir kez kullanilabilecegi anlamina gelir.
Katman 5: Coklu Site Oturum Izolasyonu
Ayni sunucuda birden fazla jekcms kurulumu barinabilir. Her kurulumun kendine ozgu bir oturum cerez adi vardir; bu, aralarinda oturum karismasini onler.
Katman 6: Oturum Suresi
jekcms'in oturum suresi, kisa bir mutlak zaman asimi degil, 30 gunluk hareketsizlik olarak ayarlidir — urun, sik yeniden kimlik dogrulama yerine "cikis yapana kadar oturum acik kalsin" yaklasimini tercih eder.
Katman 7: IP Baglama (Opsiyonel)
Yuksek güvenlik dağıtımlar için oturumlar istemcinin IP adresine baglanabilir.