← Wszystkie artykuły i nowości

Bezpieczeństwo

Nagłówki HTTP: wdrażanie CSP bez wyłączania strony

Zacznij od obserwacji, rozróżnij Report-Only od blokowania i przetestuj logowanie, formularze oraz osadzone zasoby.

MerMiko2 min czytania

Zrób inwentaryzację zasobów

Spisz domeny, z których strona pobiera skrypty, style, obrazy, fonty i ramki. Uwzględnij CAPTCHA, logowanie oraz połączenia WebSocket. Wklejenie przypadkowej restrykcyjnej polityki może zepsuć działający proces bez usunięcia przyczyny podatności. CSP jest dodatkową warstwą ochrony, a nie zamiennikiem bezpiecznego generowania HTML.

Najpierw obserwuj

Dla etapu testowego poniższy nagłówek ilustruje kierunek polityki. Dopasuj go do swojej aplikacji. W trybie Report-Only przeglądarka raportuje naruszenia, ale ich nie blokuje; samo istnienie takiego nagłówka nie dowodzi egzekwowania ograniczeń.

Content-Security-Policy-Report-Only: default-src 'self'; object-src 'none'; base-uri 'self'

Komunikaty sprawdzisz w konsoli i, po konfiguracji, w systemie raportowania. Raporty mogą zawierać adresy stron i zasobów. Jeżeli je zapisujesz, ogranicz dane, dostęp oraz okres przechowywania i uwzględnij to w rzeczywistym opisie prywatności.

Testuj scenariusze, nie tylko stronę główną

  • Logowanie, wylogowanie i dodatkowe potwierdzenia konta.
  • Formularze z komunikatami błędów i CAPTCHA.
  • Osadzone materiały, pobieranie plików i połączenia aplikacji.
  • PL/EN, oba motywy oraz widoki mobilne.

Po uporządkowaniu naruszeń wdrażaj egzekwowaną politykę Content-Security-Policy etapami. Jeśli używasz nonce, musi być generowany poprawnie dla odpowiedzi i uzgodniony ze skryptami. Stały nonce wpisany raz do wszystkich dokumentów nie daje zamierzonej ochrony.

Pozostałe nagłówki dobieraj osobno

X-Content-Type-Options: nosniff pomaga egzekwować deklarowany typ treści, więc upewnij się, że serwer podaje poprawne MIME. HSTS wymaga działającego HTTPS; długi okres, objęcie wszystkich subdomen i preload mają szersze skutki niż pojedynczy test. Polityki osadzania i uprawnień również sprawdzaj z używanymi integracjami. Zachowaj kontrolowaną możliwość wycofania zmian.

Źródła i dokumentacja

Odnośniki do źródeł pozwalają sprawdzić daty, dostępność oraz pełny kontekst informacji.

Czytaj dalej

Biblioteka poradników Najnowsze wiadomości