İçeriğe atla
Noroxi
Altyapı6 dk

Güvenlik başlıkları: beş satırla kapanan on açık

HSTS, CSP, X-Frame-Options ve diğerleri. Hangi başlık neyi engeller, hangi yapılandırma üretimde sorun çıkarır, nasıl kademeli geçilir.

Bir web uygulamasında en düşük maliyetli güvenlik iyileştirmelerinden biri, HTTP yanıt başlıklarını doğru ayarlamaktır. Birkaç satırlık yapılandırma, tarayıcı düzeyinde koca bir saldırı sınıfını zorlaştırır. Ama yanlış ayarlanan aynı başlıklar üretimi de bozabilir. Bu yazıda hangi başlığın ne işe yaradığını ve nasıl kademeli geçileceğini anlatıyoruz.

Strict-Transport-Security (HSTS)

Tarayıcıya "bu siteye yalnızca HTTPS ile bağlan" der. Bir kez uygulandığında, araya girme denemelerinde tarayıcı düz HTTP bağlantısını reddeder.

Dikkat: includeSubDomains ve preload güçlü ama geri dönüşü zordur. Tüm alt alan adlarınızın HTTPS sunduğundan emin olmadan includeSubDomains eklemeyin. Önce kısa bir süre değeriyle başlayıp, her şeyin çalıştığını gördükten sonra süreyi uzatın.

Content-Security-Policy (CSP)

En güçlü ama en dikkat isteyen başlık. Tarayıcıya hangi kaynaklardan script, stil ve görsel yükleyebileceğini söyler. Doğru kurulduğunda, enjekte edilen bir script'in çalışmasını büyük ölçüde engeller.

CSP'yi doğrudan zorlayıcı modda açmak siteyi bozar. Doğru yol şudur:

  • Önce yalnızca rapor toplayan modda yayına alın.
  • Gerçek trafikte hangi kaynakların engelleneceğini raporlardan görün.
  • Politikayı bu gözlemlere göre daraltın.
  • Ancak site sorunsuz çalıştığında zorlayıcı moda geçin.

X-Frame-Options ve frame-ancestors

Sitenizin başka bir sayfanın içine gizlice gömülüp kullanıcıya yanlış tıklatılmasını engeller. Modern yaklaşım, aynı korumayı CSP'nin frame-ancestors yönergesiyle sağlamaktır. İkisini birlikte vermek, eski ve yeni tarayıcıları birlikte kapsar.

X-Content-Type-Options

Tek bir değeri vardır ve tarayıcının içerik türünü tahmin etmeye çalışmasını kapatır. Bu tahmin bazı durumlarda zararlı içeriğin yanlış yorumlanmasına yol açabilir. Yan etkisi neredeyse yoktur, güvenle uygulanabilir.

Referrer-Policy ve Permissions-Policy

Referrer-Policy, başka sitelere geçişte ne kadar adres bilgisi sızdığını kontrol eder. Permissions-Policy, kamera ve konum gibi tarayıcı yeteneklerine kimin erişebileceğini kısar. İkisi de gizlilik yüzeyini daraltır ve düşük risklidir.

Kademeli geçiş planı

  1. Yan etkisi olmayanlarla başlayın: X-Content-Type-Options, Referrer-Policy.
  2. Çerçeveleme korumasını ekleyin: X-Frame-Options ve frame-ancestors.
  3. HSTS'i kısa süreyle açın, doğrulayın, sonra uzatın.
  4. CSP'yi rapor modunda başlatın, trafikle olgunlaştırın, en son zorlayıcı moda alın.

Ölçün, tahmin etmeyin

Değişiklikten sonra başlıklarınızın gerçekten uygulandığını doğrulayın. Pentest araçları bölümündeki ücretsiz teste alan adınızı girerek başlıklarınızı puanlayabilir, eksikleri tek ekranda görebilirsiniz.

Sıradaki

JWT imza doğrulama hataları: kütüphane güncel, yapılandırma yanlış