0Pricing
HTML Academy · Ders

İçerik Güvenliği İlkesi: meta http-equiv

meta http-equiv aracılığıyla bir İçerik Güvenliği İlkesi belirleyin

İçerik Güvenliği İlkesi: meta http-equiv, CoddyKit'te ücretsiz bir HTML Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, HTML Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. HTML Academy kursu toplamda 4 dersten oluşur.

CSP Nedir?

İçerik Güvenliği Politikası, bir sayfanın hangi kaynakları yükleyip çalıştırabileceğini kısıtlayan ve tarayıcı tarafından uygulanan bir politikadır. Siteler arası betik çalıştırmaya karşı en güçlü savunmadır: bir saldırgan <script> etiketi enjekte etse bile tarayıcı, politika izin vermediği sürece bunu çalıştırmayı reddeder.

Sunmanın İki Yolu

CSP, bir HTTP yanıt üst bilgisi (Content-Security-Policy: ...) olarak veya HTML içindeki bir meta etiketiyle gönderilebilir: <meta http-equiv="Content-Security-Policy" content="...">. Üst bilgi tercih edilir; sunucuyu denetleyemediğiniz durumlarda meta etiketi kullanışlıdır.

<meta http-equiv="Content-Security-Policy"
  content="default-src 'self'; script-src 'self' https://cdn.example.com">

Yaygın Yönergeler

default-src, belirtilmemiş kaynak türleri için yedektir. script-src, style-src, img-src, connect-src (XHR/veri çekme), font-src ve frame-src kendi kaynak türlerini kısıtlar. Belirli kaynakları izin listesine alın veya yalnızca aynı kaynak için 'self' kullanın.

self Anahtar Sözcüğü

Tırnak içindeki 'self', sayfanın kendi kaynağını belirtir. script-src 'self', "yalnızca sayfayla aynı kaynakta barındırılan betikleri çalıştır" anlamına gelir. Bu, çoğu politika için temel kuraldır; gerektiğinde belirli harici CDN'leri ekleyin.

Satır İçi Betikleri Engelleme

CSP, varsayılan olarak tüm satır içi <script> etiketlerini ve olay işleyici özniteliklerini (onclick) engeller. Bu, XSS'e karşı en güçlü korumadır: enjekte edilen bir <script> satır içi olduğu için çalışamaz. Tüm betikleri src ile başvurulan harici dosyalara taşıyın.

Nonce'lar ve Karmalar

Gerekli satır içi betikler için nonce kullanın: sunucu her istek için rastgele bir belirteç üretir, bunu CSP içinde script-src 'nonce-RANDOM' olarak ayarlar ve meşru <script> etiketlerine nonce="RANDOM" ekler. Enjekte edilen betiklerde nonce bulunmadığından bunlar engellenir.

<meta http-equiv="Content-Security-Policy"
  content="script-src 'nonce-abc123'">
<script nonce="abc123">// allowed</script>
<script>// blocked — no nonce</script>

unsafe-inline ve unsafe-eval

'unsafe-inline', satır içi betiklere ve stillere yeniden izin verir. 'unsafe-eval', eval() ve new Function() kullanımına yeniden izin verir. Her ikisi de CSP'yi ciddi biçimde zayıflatır; bunları yalnızca geçiş sürecinde son çare olarak kullanın ve kaldırılmalarını planlayın.

Meta Etiketlerinin Sınırlamaları

Meta etiketi aracılığıyla gönderilen CSP, report-uri yönergesini veya diğer raporlama özelliklerini kullanamaz. Ayrıca bir üst bilgiden daha geç etkili olur; meta etiketinden önceki her şey korumasızdır. Üst bilgiler kesinlikle daha iyidir; meta etiketini yalnızca yedek olarak kullanın.

Yalnızca Raporlama Modu

Yeni bir politikayı siteyi bozmadan sınayın: Content-Security-Policy-Report-Only: .... Tarayıcı ihlalleri bildirir ancak bunları engellemez; böylece politika, zorunlu uygulamaya geçmeden önce tüm meşru kaynaklara izin verecek şekilde iyileştirilebilir.

Yaygın Tuzaklar

style-src 'unsafe-inline' kuralını unutmak, satır içi stilleri engeller; bu stiller genellikle çerçeveler tarafından üretilir. connect-src kuralını unutmak, API'lere AJAX isteklerini engeller. Politikayı her zaman önce yalnızca raporlama modunda sınayın ve engellenen kaynaklar için konsolu inceleyin.

Modern CSP Stratejisi

Sıkı CSP, betikler için script-src 'nonce-RANDOM' 'strict-dynamic' ile diğer her şey için dar bir izin listesini birleştirir. 'strict-dynamic', nonce içeren betiklerin her birini listelemeden başka betikler yüklemesine izin verir; bu, kaynak başına izin listelerini yönetmekten çok daha kolaydır.

Bilgi Kontrolü

Saldırgan bir betik etiketi enjekte etmeyi başarsa bile CSP, XSS saldırılarına karşı nasıl koruma sağlar?

Özet

CSP; hangi betiklerin, stillerin, görsellerin ve diğer kaynakların yüklenebileceğini kısıtlayan, tarayıcı tarafından uygulanan bir politikadır. Yanıt üst bilgisiyle (tercih edilen yöntem) veya meta etiketiyle gönderin. Gerekli satır içi betikler için nonce kullanın, unsafe-inline/unsafe-eval kullanmaktan kaçının ve önce yalnızca raporlama modunda sınayın. 'nonce-X' 'strict-dynamic' içeren sıkı CSP, günümüzdeki temel yaklaşımdır.

Sıkça Sorulan Sorular

“İçerik Güvenliği İlkesi: meta http-equiv” dersi ücretsiz mi?

Evet — “İçerik Güvenliği İlkesi: meta http-equiv” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve HTML Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. HTML Academy kursu toplamda 4 dersten oluşur.

“İçerik Güvenliği İlkesi: meta http-equiv” dersinde ne öğreneceğim?

meta http-equiv aracılığıyla bir İçerik Güvenliği İlkesi belirleyin HTML Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

HTML Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te HTML Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“İçerik Güvenliği İlkesi: meta http-equiv” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu HTML Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her HTML Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. İçerik Güvenliği İlkesi: meta http-equiv
  2. innerHTML ile XSS ve Bunu Önleme
  3. iframe Korumalı Alanı ve İzinler İlkesi
  4. HTTPS ve Alt Kaynak Bütünlüğü
← HTML Academy Sayfasına Dön