İçerik Güvenliği Politikası (CSP) Nedir? Nasıl kullanılır?

İçerik Güvenliği Politikası (CSP), uygulamaların ve web sitelerinin güvenliğini artırmayı amaçlayan bir güvenlik standardıdır.

İçerik Güvenliği Politikası (CSP), uygulamaların ve web sitelerinin güvenliğini artırmayı amaçlayan bir güvenlik standardıdır.

Web sitenize yüklenen içeriğe yeşil ışık yakmak veya engellemek için meta öğeler veya başlıklar kullanır. CSP (İçerik Güvenliği Politikası) ekstra bir koruma katmanı sağlar ve tüm web sitesi yöneticileri için yaygın olarak önerilir.

Bu makalede CSP'yi ve neden bu kadar önemli olduğunu keşfedin.

İçerik Güvenliği Politikası (CSP) nedir?

Bir İçerik Güvenliği Politikası (CSP) veya içerik güvenliği stratejisi, web sitelerinin güvenliğini artırmayı amaçlar.

Bunu yapmak için, Siteler Arası Komut Dosyası Çalıştırma (XSS) saldırıları ve kod enjeksiyonları dahil olmak üzere bir dizi saldırıyı algılar ve azaltır. Bu saldırılar genellikle kötü amaçlı yazılım dağıtmayı, site tahrifini veya veri hırsızlığını amaçlar.

CSP, ziyaret edilen siteye içerik yüklemeye yetkili kaynakları kullanıcıların tarayıcılarına belirtmek için web sunucusu tarafından döndürülen bir HTTP başlığıdır.

Örneğin, belirli yazı tiplerini gömmek için harici bir hizmet kullanıyorsanız, kullanıcıların tarayıcılarına hangi sunucuların şunları yapmasına izin verildiğini söyleyebilirsiniz:

  • sitenize yazı tipi dosyaları yükleme,
  • ve olmayan sunucular.

CSP'nin ilk spesifikasyonu Şubat 2015'e dayanmaktadır. Daha sonra Aralık 2016'da güncellenmiştir ve gelişmeye devam etmektedir.

İçerik güvenliği stratejisi neden önemlidir?

İçerik Güvenliği Politikası, çeşitli saldırılara karşı ikinci bir koruma katmanı ekler. Böylece hem kullanıcıyı hem de web sitesini aşağıdakiler için korur:

Siteler arası komut dizisini azaltın veya hafifletin

Bir İçerik Güvenliği Politikası (CSP) tanımlamanın temel faydası, XSS saldırılarını tespit etmek ve azaltmaktır.

Bu saldırılar, kötü niyetli betikleri çalıştırmaya zorlamak için web tarayıcısının sunucu tarafından sağlanan içeriğe olan güveninden yararlanır.

Enjekte edilen kötü amaçlı kod, tüm kullanıcı girişlerini alır:

  • kişisel veri,
  • tanımlayıcılar,
  • Şifreler…

Böylece saldırgan, kullanıcının verilerine erişir ve kimlik doğrulamasını atlar. Hatta hesabı tehlikeye atabilir ve kalıcı erişimi koruyabilir.

Bütün bunlar, kullanıcı hiçbir şeyden şüphelenmeden gerçekleşir.

Gerçek dünyada, XSS her yerde bulunur ve web uygulamalarındaki en yaygın kusurlardan biridir.

Bu tür güvenlik açığı, Google'ın Güvenlik Açığı Ödül Programı kapsamındaki ödemelerin %60'ından fazlasını oluşturur. Google, kötü amaçlı kod tespit ettiğinde sitenizi bloke ederek müşterilerinizin erişimini engeller.

Sıkı bir CSP ile sunucu yöneticileri, bir XSS kusurundan yararlanma olasılığını azaltabilir veya ortadan kaldırabilir.

Bunu yapmak için, komut dosyalarının yürütülmesi için istemci tarayıcılarının güvenmesi gereken İnternet etki alanlarını tanımlamaları gerekir.

Bu nedenle CSP ile uyumlu tarayıcılar, yalnızca tanımlanmış beyaz listede bulunan alanlardan gelen komut dosyalarını yürütür. Ancak, HTML olay işleme öznitelikleri dahil olmak üzere diğer tüm komut dosyalarını yok sayarlar.

Trafik dinlemeyi sınırlayın veya önleyin

Sunucular, güvenilir etki alanlarını kısıtlamanın yanı sıra hangi protokollerin kullanılacağını da belirleyebilir.

Örneğin, web uygulamalarının güvenliğini artırmak için içerik yüklemek için HTTPS kullanımını zorlayabilirler.

Eksiksiz bir İçerik Güvenliği Politikası, veri aktarımında HTTPS protokolünün uygulanmasını içerir. Ayrıca şunları içerir:

  • tüm çerezleri güvenli özelliği ile işaretleyin,
  • ve HTTP'den HTTPS sayfalarına otomatik yönlendirmeler ayarlayın.

Ayrıca siteler, kullanıcıların tarayıcılarının siteye yalnızca TLS şifreli kanallar aracılığıyla bağlanmasını sağlamak için HTTPS Strict-Transport-Security başlıklarını kullanabilir.

CSP ne zaman kullanılır?

Karmaşık web uygulamalarının büyük çoğunluğu, XSS'ye karşı yüksek bir güvenlik açığına sahiptir ve CSP kullanmaktan fayda sağlayacaktır.

Bir CSP'nin kullanılması özellikle aşağıdakiler gibi hassas verileri yöneten uygulamalar için önerilir:

  • cihaz yönetim konsolları,
  • yönetim kullanıcı arayüzleri,
  • veya kullanıcı tarafından oluşturulan dosyaları veya mesajları barındıran başka herhangi bir ürün.

Modern çerçevelerde (kapanış modelleri), CSP'nin kullanımı nispeten basittir ve ek güvenlik açısından önemli bir yatırım getirisi sağlar.

Diğer güvenlik mekanizmaları ne zaman kullanılır?

CSP, bilinen güvenlik açıkları olmayan güvenli uygulamalar için ek bir güvenlik mekanizmasıdır.

Ancak bazı durumlarda, bir içerik güvenliği politikası benimsemek en iyi seçenek olmayabilir. O halde güvenlik üzerinde daha büyük etkisi olan diğer çözümlere odaklanmak daha iyi olacaktır:

Statik uygulamalar – Tanımlama bilgileri veya oturum açma işlevi olmayan ve kendi etki alanlarında veya alt etki alanlarında barındırılan web uygulamalarının XSS'ye karşı düşük güvenlik açığı vardır.

Geçmişte XSS kurbanı olan veya kullandıkları çerçevelerde veya modellerde bilinen kusurları olan büyük uygulamalar. Bu durumlarda CSP tek başına yeterli koruma sağlamayacaktır. Bu nedenle en iyi çözüm, güvenlik açığı bulunan kodu düzeltmek veya yamalara yatırım yapmaktır.

Bir CSP kuralı nasıl yapılandırılır?

Bir İçerik Güvenliği Politikası (CSP) ayarlamak, bir İçerik Güvenliği Politikası HTTP başlığı kullanmayı gerektirir. İşte bunu yapmak için üç adımlı bir prosedür:

1 – CSP kuralınızı tanımlayın

İlk adım, izin verilecek veya kısıtlanacak kaynakları gösteren kaynak değerleri ile birlikte politikaları veya yönergeleri tanımlamaktır.

2 – CSP kuralınızı test edin

Siteniz için gerekli güvenilir etki alanı kaynaklarını dahil ettiğinizden emin olmak için CSP'nizi test edebilirsiniz.

Özellikle şunları yapabilirsiniz:

  • Kural uygulanmadan İçerik Güvenliği Politikanızın ihlallerine ilişkin uyarılar almak için Content-Security-Policy-Report-Only'daki HTTP Response başlığını kullanın,
  • report-uri yönergesini, CSP ihlal raporları alacağınız bir URL ile yapılandırın.

3 – İçerik Güvenliği Politikasını Uygulayın

CSP kuralınızı uygulamak için iki ana yapılandırma vardır.

İlk, daha az popüler olan seçenek tüm tarayıcılarda çalışır. İkincisi ise HTTP yanıt başlığının tanımlanmasını gerektirir.

1 Meta Etiketler yapılandırması

HTML etiketini kullanarak sayfanın HTML kodunda CSP'nizi etkinleştirmeniz mümkündür.

2 CSP http yanıt başlığı yapılandırması

Bu, bir CSP'yi w3 ile uygulamanın en uygun yoludur; çoğu tarayıcıda çalışır.

Burada, Yalnızca Rapor öğesi olmadan İçerik-Güvenlik-Politikasını kullanacağız. Yanıt başlığınıza uygulanan kuralların çoğunun sunucunuzun yapılandırma dosyasında yer alacağını unutmayın.

Bunu yapmak için, web sitenizin üzerinde çalıştığı sunucuyu tanımlamanız ve yanıt başlığınızı ayarlamanız gerekir

IIS (İnternet Bilgi Servisleri)

  • IIS yöneticinize gidin ve soldan web sitenizi seçin
  • HTTP Yanıt Başlıkları simgesini seçin
  • "Ekle"ye tıklayın ve başlık adını ve değerini girin.

İçerik güvenliği politikanızı doğrudan web.config dosyasına da ekleyebilirsiniz. 

Whatsapp Destek Hattı Çevrim İçi

Merhaba, nasıl yardımcı olabilirim?