Przejdź do treści
SilktidePomoc

Content Security Policy

Silktide sprawdza, czy każda strona deklaruje Content Security Policy — standardowy środek bezpieczeństwa, który określa przeglądarkom, z których źródeł skryptów, obrazów i innych treści strona może korzystać.

Content Security Policy (CSP) jest dostarczana jako lub tag meta, na przykład:

Content-Security-Policy: default-src 'self'; script-src 'self' scripts.example.com

Ten przykład informuje przeglądarkę, aby ładowała treści wyłącznie z Twojej własnej domeny oraz skrypty z jednego zaufanego hosta.

Dlaczego to jest ważne

Bez CSP strona wykonuje wszystko, co zostanie jej przekazane. Jeśli atakującemu uda się wstrzyknąć skrypt — za pośrednictwem przejętego tagu innej firmy, podatnego pola komentarza lub przejętej sieci reklamowej — przeglądarka wykona go z pełnym dostępem do strony, w tym do wszystkiego, co wpisują Twoi odwiedzający. Ta klasa ataków, cross-site scripting, pozostaje jednym z najczęstszych sposobów przejmowania witryn.

CSP stanowi zabezpieczenie po stronie przeglądarki: wstrzyknięte treści z niezatwierdzonego źródła po prostu się nie ładują. Dokumentuje również, z którymi podmiotami zewnętrznymi komunikują się Twoje strony, co pomaga przy wykazywaniu zgodności z przepisami dotyczącymi prywatności, takimi jak .

Jak to naprawić

  1. Wymień prawidłowe źródła, z których Twoje strony ładują treści: własną domenę, , Analytics, czcionki i osadzone multimedia.
  2. Napisz politykę zezwalającą wyłącznie na te źródła. Zacznij restrykcyjnie, na przykład od default-src 'self', i w razie potrzeby dodaj konkretne źródła dla poszczególnych typów treści (script-src, img-src, style-src).
  3. Skonfiguruj serwer WWW, platformę hostingową lub CDN tak, aby wysyłały politykę jako nagłówek Content-Security-Policy na każdej stronie. Jeśli nie możesz zmienić nagłówków, zadziała również tag <meta http-equiv="Content-Security-Policy"> w sekcji head strony, choć preferowany jest nagłówek.
  4. Przetestuj przed wymuszeniem: najpierw wysyłaj politykę jako Content-Security-Policy-Report-Only i obserwuj konsolę przeglądarki pod kątem treści, które zostałyby zablokowane. Pamiętaj, że ta kontrola szuka nagłówka wymuszającego, więc polityka wyłącznie raportująca jej nie zalicza.

Jak Silktide to testuje

  1. Ładuje każdą stronę i zbiera jej nagłówki HTTP wraz ze wszystkimi tagami meta http-equiv na stronie, które przeglądarki traktują w ten sam sposób.
  2. Wyszukuje wartość Content-Security-Policy w jednym z tych miejsc.
  3. Zgłasza stronę, jeśli nie występuje w żadnym z nich lub jej wartość jest pusta.
  4. Silktide nie ocenia jakości polityki — sprawdza jedynie, czy istnieje.

Rozwiązywanie problemów

Ustawiłem(-am) politykę, ale kontrola nadal nie przechodzi

Potwierdź, że nagłówek pojawia się na dokładnie tych stronach, które są skanowane — polityki bywają konfigurowane tylko dla strony głównej lub jednego hosta wirtualnego. Nagłówki zwracane przez stronę możesz zobaczyć w narzędziach deweloperskich przeglądarki, na karcie Sieć.

Czy CSP może uszkodzić moją witrynę?

Zbyt restrykcyjna polityka może zablokować własne skrypty lub style. Dlatego zdecydowanie zaleca się najpierw testowanie za pomocą Content-Security-Policy-Report-Only — zgłasza ono naruszenia bez blokowania czegokolwiek.

Dowiedz się więcej

Ostatnio zaktualizowano

Czy ta strona była pomocna?