iToverDose/Yazılım· 2 TEMMUZ 2026 · 08:02

CSP Nedir? Web Güvenliğinde Kritik Koruma Katmanı

İçerik Güvenlik Politikası (CSP), web sitelerinizi XSS ve diğer saldırılardan koruyan güçlü bir HTTP başlığıdır. Nasıl çalıştığını, kurulumunu ve en iyi uygulamaları öğrenin.

DEV Community3 dk okuma0 Yorumlar

Günümüzde web uygulamaları geliştirirken karşılaşılan en büyük güvenlik tehditlerinden biri, İçerik Güvenlik Politikası (CSP) olarak bilinen mekanizmadır. Aslında basit bir HTTP yanıt başlığı olan CSP, tarayıcılara hangi kaynakların güvenilir olduğunu bildiren bir dizi kuraldan oluşur. Bu sayede kötü niyetli komut dosyaları, resimler veya stiller engellenerek web sitenizin savunması önemli ölçüde güçlendirilir.

CSP’nin nasıl çalıştığını ve neden her web geliştiricisinin dikkat etmesi gerektiğini adım adım inceleyelim.

CSP’nin Temel İşlevi: Tarayıcı İçin Kaynak Filtresi

Content Security Policy (CSP), HTTP yanıt başlıklarından biri olarak sunucu tarafında yapılandırılır ve tarayıcıya hangi kaynakların yüklenebileceğini belirten bir beyaz liste sunar. Bu kaynaklar arasında;

  • JavaScript dosyaları
  • CSS stilleri
  • Resim ve video içerikleri
  • Font dosyaları
  • Diğer statik ve dinamik varlıklar yer alır

Temelde CSP, tarayıcıyı bir güvenlik görevlisi gibi çalıştırır. Tarayıcı herhangi bir kaynağı yüklemeye çalıştığında, bu kaynağın CSP listesinde olup olmadığını kontrol eder. Eğer kaynak onaylı değilse, otomatik olarak engellenir. Bu basit mekanizma, saldırganların web sitenize kötü amaçlı komut dosyaları enjekte etmesini büyük ölçüde zorlaştırır.

En Büyük Tehdit: XSS Saldırıları ve CSP’nin Rolü

Web uygulamalarında karşılaşılan en yaygın saldırı türlerinden biri Cross-Site Scripting (XSS) olarak adlandırılır. XSS saldırısında, kötü niyetli bir kişi JavaScript kodunu doğrudan web sitenize enjekte eder. Bu kod çalıştırıldığında, saldırgan;

  • Kullanıcı çerezlerini çalabilir
  • Tarayıcı depolama alanındaki verileri okuyabilir
  • Sayfa içeriğini değiştirebilir
  • Kullanıcı adına çeşitli eylemler gerçekleştirebilir

Burada CSP devreye giriyor. Eğer web sitenizde CSP başlığı etkinleştirilmişse ve enjekte edilen JavaScript kodu onaylanmamış bir kaynaktan geliyorsa, tarayıcı bu kodu otomatik olarak çalıştırmayı reddeder. Böylece saldırı girişimi başarısız olur ve kullanıcı verileri güvende kalır.

CSP Sadece XSS’ye Karşı mı? Geniş Koruma Alanı

CSP’nin sadece XSS saldırılarına karşı değil, çeşitli tehditlere karşı da koruma sağladığı sıklıkla göz ardı edilir. CSP sayesinde;

  • Clickjacking saldırılarına karşı koruma sağlanır
  • Üçüncü parti kaynakların güvenilirliği denetlenebilir
  • iframe kullanımları sınırlandırılabilir
  • Yönlendirmeler kontrol altına alınabilir
  • Form gönderimleri kısıtlanabilir
  • Resim, font, stil ve komut dosyalarının yüklenme kaynakları titizlikle yönetilebilir

Bu özellikler, CSP’yi sadece basit bir HTTP başlığı olmanın ötesine taşıyarak web uygulamalarınıza çok katmanlı bir güvenlik sağlar. Ancak bu korumanın karşılığında, uygulamanızın bağımlı olduğu tüm kaynakları titizlikle tanımlamanız gerekir.

Basit bir CSP Örneği ve Anlamı

CSP kurallarını anlamak için pratik bir örneğe bakalım. Aşağıdaki CSP başlığı;

Content-Security-Policy: default-src 'self'; script-src 'self' 

Bu kuralın anlamı şu şekildedir:

  • default-src 'self': Tüm kaynaklar için varsayılan olarak sadece kendi alan adınızdan kaynak yüklenmesine izin verilir.
  • **script-src 'self' JavaScript dosyaları sadece kendi alan adınızdan veya ` adresinden yüklenebilir. Bu alanda yer almayan herhangi bir kaynaktan gelen komut dosyaları tarayıcı tarafından engellenecektir.

Bu kural ne kadar katı olursa, güvenlik seviyesi de o kadar yüksek olur. Ancak, uygulamanızın düzgün çalışması için gerekli olan tüm kaynakları dikkatlice tanımlamanız gerekir. Bu dengeyi sağlamak bazen karmaşık olabilir, ancak uzun vadede web sitenizin güvenliği için kritik bir adımdır.

Geliştirme Çatılarında CSP Uygulaması

Çeşitli modern geliştirme çatılarında CSP’nin nasıl uygulanacağına dair rehberler bulunmaktadır. Örneğin,

  • Next.js projelerinde CSP yapılandırma adımları için resmi dokümantasyon bulunmaktadır.
  • Angular uygulamalarında da CSP destekleyici özellikler mevcuttur.

Bu tür rehberler, geliştiricilerin CSP’yi projelerine kolayca entegre etmelerine yardımcı olur. CSP’nin önemi giderek arttığı için, gelecekteki içerik güvenliği serilerinde daha derinlemesine uygulamalar hakkında bilgi vereceğiz.

Web sitenizin güvenliğini artırmak ve kullanıcı verilerinizi korumak için CSP’yi henüz uygulamadıysanız, bugün başlayabilirsiniz. Bu basit HTTP başlığı, web uygulamanızı gelecekteki tehditlere karşı önemli ölçüde koruyacaktır.

Yapay zeka özeti

İçerik Güvenlik Politikası (CSP) nasıl çalışır? XSS saldırılarına karşı koruma sağlayan CSP kuralları ve uygulama örnekleri hakkında bilgi edinin.

Yorumlar

00
YORUM BIRAK
ID #PMR1K0

0 / 1200 KARAKTER

İnsan doğrulaması

7 + 2 = ?

Editör onayı sonrası yayına girer

Moderasyon · Spam koruması aktif

Henüz onaylı yorum yok. İlk yorumu sen bırak.