İçerik Güvenlik Politikası (CSP) yok
sec_csp_missingKısa cevap
Sayfalarınız Content-Security-Policy başlığı ya da meta etiketi olmadan sunuluyor. CSP, tarayıcıya hangi kaynakların betik çalıştırıp içerik yükleyebileceğini söyler; böylece açığı olan bir eklenti, bir form ya da ele geçirilmiş bir üçüncü taraf üzerinden yerleştirilen betik çalıştırılmak yerine engellenir. Siteler arası betik çalıştırmaya (XSS) karşı tarayıcı tarafındaki ana savunmadır. Sıralamaya etkisi yoktur; en yaygın web açığı türünün zararını sınırlar.
Neden önemli
Siteler arası betik çalıştırma, saldırganın kendi JavaScript kodunu ziyaretçilerinizin tarayıcısında çalıştırmasına izin verir: oturum açmış editörlerin oturumlarını çalmak, gizli spam linkleri ya da yönlendirmeler eklemek (bu, Google Arama'da siteniz için güvenlik uyarılarına yol açabilir) veya ödeme formlarını kopyalamak. CSP açığı olan kodu düzeltmez, ama sıkı bir politika yerleştirilen betiğin çalışmasını durdurur. CSP olmadan yamanmamış her eklenti ya da tema açığı tarayıcıda doğrudan istismar edilebilir.
Glimana bunu nasıl tespit eder
Glimana HTTPS ana sayfanızda Content-Security-Policy yanıt başlığını, ana sayfada ya da örneklenen en fazla iki sayfada da <meta http-equiv="Content-Security-Policy"> etiketini arar. İkisinden biri yeterlidir. Tek başına Content-Security-Policy-Report-Only başlığı geçmez, çünkü hiçbir şeyi engellemez; sorun, yalnız rapor kipinde bir politika görüldüğünü not eder. Kontrol orta önemdedir. Mevcut bir politikanın ne kadar güçlü olduğuna ayrıca İçerik Güvenlik Politikasında (CSP) açıklar var kontrolü bakar.
Nasıl düzeltilir
Dikkat
Fazla sıkı, zorunlu bir politika belirgin bir hata vermeden işleri bozar: analiz araçları, etiket yöneticileri, gömülü videolar, ödeme bileşenleri ve tema ile eklentilerin satır içi betikleri çalışmaz olur. Politikayı önce Content-Security-Policy-Report-Only olarak yayımlayın, bir süre tarayıcı konsolunu izleyin, sonra aynı politikayı Content-Security-Policy olarak gönderin. script-src ya da default-src içermeyen bir politika bu kontrolü geçer ama İçerik Güvenlik Politikasında (CSP) açıklar var kontrolünde işaretlenir.
- Glimana'da bulguyu bulun. Güvenlik sayfasını açın; bu kontrol Güvenlik başlıkları grubunda, son taramanın kanıtı başlığının altında. Aynı sorun Sorunlar › İçerik Güvenlik Politikası (CSP) yok altında da listelenir.
-
Düzeltmeyi platformunuzda uygulayın.
.htaccessiçinde (Apache,mod_headers) yalnız rapor kipiyle başlayın:Header always set Content-Security-Policy-Report-Only "default-src 'self'; script-src 'self' 'unsafe-inline' https://www.googletagmanager.com; object-src 'none'; base-uri 'self'; frame-ancestors 'self'". Başlıca sayfa türlerinizi tarayıcı konsolu açıkken gezin ve gerçekten gereken her engellenmiş kaynağı ilgili yönergeye ekleyin. Tema ve eklentiler çok sayıda satır içi betik bastığı içinscript-srciçinde'unsafe-inline'gerçekçi bir ilk adımdır; bunu nonce ile değiştirmek açıklar rehberinde anlatılır. Önemli bir şey raporlanmayınca başlığın adınıContent-Security-Policyyapın.Rules › Overview › Create rule › Response Header Transform Rule. Kuralı gelen tüm isteklere uygulayın, Set static seçin, başlık adı olarak
Content-Security-Policy-Report-Only(sonraContent-Security-Policy) yazın ve politikayı değer olarak yapıştırın. Bu her kaynak platformda çalışır, ama sabit bir başlık istek başına nonce taşıyamaz.Nginx,
serverbloğunda:add_header Content-Security-Policy "default-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'self'" always;Apache:
Header always set Content-Security-Policy "default-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'self'"default-src 'self'satır içi betik ve stilleri ve tüm dış sunucuları da engeller; yalnız rapor kipinde denerken sayfalarınızın gerçekten kullandıklarını ilgili yönergeye (script-src,style-src,img-src,connect-src,font-src,frame-src) ekleyin. - Glimana'da kontrol edin. Güvenlik sayfasında Yeniden tara düğmesine basın (saatte en çok iki tarama) ya da pazar günkü haftalık taramayı bekleyin; kontrol geçince sorun kapanır.
Düzeltme nasıl doğrulanır
Güvenlik sayfasında Yeniden tara düğmesine basın (ya da pazar günkü haftalık taramayı bekleyin); kontrol geçtiğinde sorun kapanır.