Przejdź do treści

Analizator raportów CSP

Zmienia wklejone raporty naruszenia CSP na czytelne podsumowanie dyrektywy i zablokowanych źródeł.

Wejście
Wynik

Analizator raportów CSP

Wklej JSON, który odebrał Twój endpoint report-uri CSP lub kolektor Reporting API, a to narzędzie zmieni stos raportów naruszenia na podsumowanie, które można faktycznie czytać: które dyrektywy są blokowane i które źródła je wyzwalają. Zostało stworzone dla deweloperów wdrażających lub zaostrzających Content-Security-Policy, którzy muszą widzieć wzór w dziesiątkach lub setkach raportów zamiast czytać je jeden po drugim.

Grupując według dyrektywy, widzisz, które części polityki najczęściej się uruchamiają, lub grupując według zablokowanego źródła, znajdujesz jeden skrypt lub arkusz stylów powodujący większość szumu. Ukryj raporty z rozszerzeń przeglądarki — Chrome i Firefox wysyłają treść csp-report z chrome-extension: lub moz-extension: blocked-uri, gdy zainstalowane rozszerzenie narusza politykę strony, co nie ma nic wspólnego z Twoim własnym kodem. Włącz wyświetlane strony, a zobaczysz każdy adres URL dokumentu, na którym widoczne było naruszenie. Przełącz wyjście na sugerowane reguły, a narzędzie zaproponuje dodatki listy źródeł — pochodzenie, 'unsafe-inline', data: — które pozwoliłyby każdej blokowanej dyrektywie przejść, jako punkt wyjścia do rozszerzenia polityki.

Analizator akceptuje tablicę JSON, jeden obiekt raportu lub jeden raport na wiersz i rozumie zarówno klasyczną treść POST {"csp-report": {...}} jak i nowszą otoczkę Reporting API {"type", "body"}, dzięki czemu surowe dzienniki serwera wklejają się bez reformatowania. Raporty, które się nie parsują, są pomijane zamiast powodować niepowodzenie partii, a liczba pokazuje, ile raportów przyszło, ile grup się zawaliły i ile raportów z rozszerzeń zostało odfiltrowanyc.

Wszystko działa w Twojej przeglądarce. Wklejone raporty nigdy nigdzie nie odchodzą, co ma znaczenie, ponieważ mogą zawierać wewnętrzne adresy URL i strukturę strony. Skopiuj podsumowanie, pobierz je jako plik .txt lub wyślij do wejścia innego narzędzia, aby kontynuować pracę.

Częste pytania

Które formaty raportów są obsługiwane?
Obie formy wysyłane przez przeglądarki: klasyczna treść POST report-uri opakowana w "csp-report" i nowsza otoczka Reporting API z polem "body". Akceptuje również obiekt raportu bez opakowania i zarówno tablicę JSON, jak i jeden raport na wiersz.
Jaka jest różnica między grupowaniem według dyrektywy a według źródła?
Grupując według dyrektywy, zobaczysz, które części polityki (script-src, style-src…) najczęściej się uruchamiają; grupując według zablokowanego źródła, zobaczysz, który skrypt, arkusz stylów lub inne źródło powoduje najwięcej naruszeń w dyrektywach.
Dlaczego niektóre raporty są domyślnie ukryte?
Raporty, których blocked-uri zaczyna się od chrome-extension: lub moz-extension:, pochodzą z rozszerzenia przeglądarki naruszającego politykę strony, a nie z Twojego własnego kodu. Ukrywanie jest domyślnie włączone; wyłącz je, aby zobaczyć wszystko.
Jak obliczane są sugerowane reguły?
Dla każdej dyrektywy narzędzie zbiera każde odrębne zablokowane źródło i redukuje je do wyrażenia źródła CSP — pochodzenia adresu URL, 'unsafe-inline' dla wbudowanych skryptów lub stylów, 'unsafe-eval' dla eval, data: dla identyfikatorów URI danych — a następnie wyświetla je jako punkt wyjścia, a nie politykę do wklejenia bez przeglądu.
Czy moje dane z raportu są gdziekolwiek przesyłane?
Nie. Analiza odbywa się całkowicie w Twojej przeglądarce — wklejone raporty nigdy nie opuszczają Twoją urządzenie.