ARK. B21Parametr monitoringuBezpieczeństwo · lista 50 parametrów

Referrer-Policy

ważność niskamierzonysposób security_headers

Kontroluje, co trafia do nagłówka Referer. Brak to wyciek adresów wewnętrznych.

ARK. 1

WIKI

artykuł z 16.09.2026 · źródeł 8

Nagłówek Referrer-Policy to parametr monitoringu stron internetowych, który sprawdza, czy odpowiedź serwera zawiera nagłówek Referrer-Policy. Pomiar kończy się jednym z trzech wyników: nagłówek obecny, brak nagłówka albo nie udało się pobrać odpowiedzi. Nagłówek określa, ile informacji o stronie źródłowej przeglądarka umieszcza w nagłówku Referer żądań wychodzących z dokumentu [2].

Jak działa

Nagłówek Referer zawiera adres strony, z której wyszło żądanie: przejście po odnośniku albo pobranie obrazu czy skryptu [4]. Polityka decyduje, czy trafi do niego pełny adres, samo pochodzenie, czyli adres bez ścieżki i zapytania, czy nic [1]. Przed wysłaniem przeglądarka zawsze usuwa z adresu fragment oraz nazwę użytkownika i hasło, a adres dłuższy niż 4096 znaków skraca do pochodzenia [1].

Politykę ustawia nagłówek HTTP, element meta o nazwie referrer, atrybut referrerpolicy na odnośnikach, obrazach, ramkach i elementach link albo relacja rel="noreferrer" [1] [2]. Gdy strona nie ustawia żadnej polityki, obowiązuje domyślna strict-origin-when-cross-origin [1]. Chrome przyjął ją w wersji 85 w 2020 roku; wcześniej powszechną wartością domyślną było no-referrer-when-downgrade [3]. Polityka ustawiona przez stronę ma pierwszeństwo przed domyślną [3].

RYS. 1.1Co trafia do nagłówka Referer

Standardy i specyfikacje

  • Referrer Policy (W3C WebAppSec) definiuje osiem wartości oraz pusty łańcuch, który oznacza brak polityki i przejście do polityki nadrzędnej albo domyślnej [1]. Wersja kandydująca opublikowana w 2017 roku jako zachowanie domyślne wskazywała jeszcze no-referrer-when-downgrade [8].
  • MDN podaje strict-origin-when-cross-origin jako politykę stosowaną, gdy żadnej nie określono albo wartość jest nieprawidłowa [2].
  • OWASP zaleca jawne ustawienie strict-origin-when-cross-origin i uzasadnia to tym, że współczesne przeglądarki domyślnie przestały wysyłać obcym serwisom ścieżkę i zapytanie [6].
  • Pisownia. W nagłówku HTTP i elemencie meta wartość zapisuje się jako no-referrer, z myślnikiem, a w atrybucie rel jako noreferrer, bez myślnika [2]. Chrome, zapowiadając zmianę wartości domyślnej, odnotował, że większość przeglądarek zmierza w podobnym kierunku ochrony prywatności [3].

Zagrożenia i skutki

Tokeny w adresach. OWASP opisuje ujawnienie danych przez parametry adresu: nazwy użytkowników, hasła i tokeny w URL trafiają m.in. do nagłówka Referer, logów serwera, historii i pamięci podręcznej przeglądarki, a samo HTTPS tego nie rozwiązuje [5]. MDN podaje przykład strony resetu hasła z odnośnikiem do serwisu społecznościowego w stopce: po kliknięciu serwis może otrzymać adres resetu i wykorzystać zawarte w nim informacje [4]. Specyfikacja zastrzega, że kontrola nad nagłówkiem pomaga chronić adresy uprawniające, ale sama nie zapobiega wszystkim wyciekom [1].

RYS. 1.2Adres z tokenem trafia do obcego serwisu

Treści zewnętrzne. Nagłówek nie towarzyszy tylko kliknięciom. Informację o stronie źródłowej dostają też osadzone obrazy i widżety serwisów społecznościowych [4]. Dla elementów szczególnie narażonych MDN zaleca atrybut referrerpolicy="no-referrer" albo relację rel="noreferrer", a dla całego dokumentu element meta z polityką no-referrer [4].

Dane osobowe. Dane osobowe to wszelkie informacje o zidentyfikowanej lub możliwej do zidentyfikowania osobie, np. adres e-mail, adres IP albo identyfikator z pliku cookie [7]. Dane pseudonimizowane, które pozwalają ponownie zidentyfikować osobę, pozostają danymi osobowymi w rozumieniu RODO [7]. OWASP przytacza przypadek logowania, w którym parametry adresu zawierały jednorazowy kod i adres e-mail użytkownika [5]. MDN zaleca, by nie umieszczać danych wrażliwych w adresach, przesyłać je metodą POST i usuwać treści zewnętrzne ze stron logowania, płatności i resetu hasła [4].

Brak nagłówka to nie pełny wyciek. Bez polityki strony przeglądarka stosuje domyślną: obcym serwisom wysyła samo pochodzenie, a pełny adres tylko w obrębie tego samego pochodzenia [3] [6]. Ścieżka i zapytanie trafiają więc nadal do zasobów z tego samego pochodzenia [3]. Pełny adres wycieka do obcych serwisów przy starszej domyślnej no-referrer-when-downgrade albo przy polityce jawnie liberalnej [2].

Polityki liberalne. Wartość unsafe-url wysyła pełny adres niezależnie od bezpieczeństwa połączenia, co MDN oznacza jako ujawnianie informacji wrażliwych [2]. Wartości origin, origin-when-cross-origin i unsafe-url mogą ujawniać informacje przez połączenia nieszyfrowane [8].

Przykłady

Tabela zestawia zawartość nagłówka Referer przy żądaniu wychodzącym ze strony HTTPS [1] [2].

PolitykaTo samo pochodzenieObce pochodzenie, HTTPSCel po HTTP
no-referrernicnicnic
same-originpełny URLnicnic
originpochodzeniepochodzeniepochodzenie
strict-originpochodzeniepochodzenienic
origin-when-cross-originpełny URLpochodzeniepochodzenie
strict-origin-when-cross-origin (domyślna)pełny URLpochodzenienic
no-referrer-when-downgradepełny URLpełny URLnic
unsafe-urlpełny URLpełny URLpełny URL
TAB. 1.1Przypisy8
  1. [1] Referrer Policy — Editor's Draft · W3C WebAppSec
  2. [2] Referrer-Policy header · MDN Web Docs
  3. [3] A new default Referrer-Policy for Chrome: strict-origin-when-cross-origin · Chrome for Developers
  4. [4] Referer header: privacy and security concerns · MDN Web Docs
  5. [5] Information exposure through query strings in URL · OWASP
  6. [6] HTTP Security Response Headers Cheat Sheet · OWASP
  7. [7] Data protection explained · Komisja Europejska
  8. [8] Referrer Policy — Candidate Recommendation, 26 January 2017 · W3C
ARK. 2

STATS

wyniki z systemu · tylko liczby zbiorcze
TAB. 2.1Odczyty per strona

Ten parametr nie zapisuje odczytu per strona — przebieg zostawia tylko ustalenia, więc liczby sprawdzonych stron i wyników „ok” system nie ma. Pojawią się po wdrożeniu zapisu przebiegów per strona per parametr.

TAB. 2.3Ustalenia

Ten parametr nie otworzył jeszcze żadnego ustalenia w bazie LAB247. Pusto nie znaczy „czysto” — znaczy, że nic nie przekroczyło reguły.

TAB. 2.4Przebiegi z tym sposobem sprawdzeniaod 09.09.2026
Przebiegów
33sposób security_headers
W 30 dni
33przebiegów
Ostatni
19.09.2026start przebiegu
Stron w przebiegach
33 przebiegów bez liczby stron
ARK. 3

CARD

karta z kodu CREATO_PING, odczyt 16.09.2026
RYS. 3.1Droga parametru przez system: Referrer-Policy
TAB. 3.1Pomiarpliki: 4
Obszar i ważnośćBezpieczeństwo · niska (B21)
Workflow i częstotliwośćcreato_ping_security_v2 · P3 działa na LAB247cron co 24 h, T1–T3; T4 raz po anomalii · Dokładny skan. dns_integrity porównuje NS, MX, SPF i DMARC z wzorcem z poprzedniego przebiegu.
Sonda i helpersposób security_headers · CREATO_PING/helpers/security_headers.py
Testy
  1. Tylko przebieg P3; domena bez rekordu A pominięta na wstępie; strony w przebiegu sprawdzane po kolei.
  2. HEAD https://domena (wyłącznie strona główna) z podążaniem za przekierowaniami — nagłówki czytane tylko z odpowiedzi końcowej; kod 405 = druga próba GET.
  3. Sprawdzana tylko obecność Referrer-Policy; wartość nie jest czytana, a polityka w znaczniku meta ani atrybuty referrerpolicy się nie liczą.
  4. Jedno żądanie obsługuje sześć nagłówków bezpieczeństwa.
Typ wyniku0 albo 1 ustalenie missing_referrer_policy
Jednostkabrak — wynik jakościowy (obecność nagłówka)
Próg i regułaTimeout 6,0 s, połączenie 2,0 s (stała w helperze). Reguła: brak nagłówka = missing_referrer_policy; nagłówek z dowolną wartością, także unsafe-url, = ok.
Gdzie leżą pokrętłaCREATO_PING/helpers/security_headers.py → _CHECKS, _TIMEOUTCREATO_PING/helpers/security_runner.py → _TASK_SEVERITIES (dalej idą tylko urgent i high)CREATO_PING/config/incident_policy.toml → [finding] missing_referrer_policy
Retencja odczytówŻadna: ustalenie odpada w filtrze przebiegu, a przebieg z --no-stats nie zapisuje licznika. Z tego kanału nic nie trafia do bazy LAB247.
Znane rozbieżności
  1. Brak nagłówka nie oznacza wycieku: przeglądarki bez polityki strony stosują strict-origin-when-cross-origin i obcym serwisom wysyłają samo pochodzenie — opis w katalogu przesadza.
  2. Sprawdzana sama obecność: jawne unsafe-url, słabsze od domyślnej przeglądarki, przechodzi jako ok.
  3. Polityka w znaczniku meta i atrybuty referrerpolicy są niewidoczne dla HEAD.
  4. Ustalenie nie zostawia śladu: filtr przebiegu odrzuca je przed polityką, a --no-stats wyłącza licznik — wpis w polityce jest martwy.
  5. Błąd sieci albo timeout zwraca pustą listę — nieodróżnialne od „nagłówek jest”; odpowiedź 403 z WAF-a albo 5xx oceniana jak zwykła strona.
kandydaci do pętli: kod a opis parametru albo specyfikacja
Karta przepisana zCREATO_PING/helpers/security_headers.py · CREATO_PING/helpers/security_runner.py · CREATO_PING/config/incident_policy.toml · CREATO_PING/workflows/_prod/creato_ping_security_v2.json · odczyt 16.09.2026
TAB. 3.2Co oznacza failtypów ustaleń: 1

Helper zgłasza powagę niską, a filtr przebiegu przepuszcza tylko pilną i wysoką — ustalenie odpada, zanim zostanie odczytana polityka incydentów. Przebieg produkcyjny idzie z --no-stats, więc nie zostaje nawet licznik. Wpis w polityce (gate=false) nie jest osiągany; nawet po przejściu filtra nie powstałby subtask. Utwardzenie, nie incydent.

UstaleniePowagaPewnośćSkutekSubtask / alarmCo zrobić
Brak Referrer-Policymissing_referrer_policyNiskieEwidentnebez wpływunie / nieDodaj Referrer-Policy: strict-origin-when-cross-origin.
ARK. 4

LOOP

bez pętli
RYS. 4.1Pętla parametru — sześć etapów
TAB. 4.1Trafność, 30 dnialarmy · prawdziwe · fałszywe · bez rozstrzygnięcia

Trafności jeszcze nie liczymy: zamknięcie subtaska nie niesie dziś werdyktu (prawdziwy / fałszywy / nie dało się sprawdzić). Cztery liczby pojawią się, gdy każde zamknięcie dostanie werdykt — to warunek startu pętli 1.

TAB. 4.2Pętle

Ten parametr nie przeszedł jeszcze żadnej pętli. Kolejność po pierwszych pięciu grupach ustali miara trafności.

Blog 24/7
20.09Zastrzeżony PESEL: zmiana raz na 30 minut, blokada przy wypłaciedobreprogramy.pl20.09Fałszywe SMS-y od GITD o mandacie za autostradę wyłudzają dane kartyinstalki.pl20.09Pakiet npm indexed-btree omija blokadę skryptów instalacyjnychbleepingcomputer.com19.09SolarWinds łata CVE-2026-28326 w Access Rights Manager, zdalny kod bez logowaniathehackernews.com19.09Orkes Conductor: luka CVE-2026-58138 atakowana w sieci, poprawka w wersji 3.30.2thehackernews.com19.09Trzy luki jądra Linux w katalogu CISA KEV, Red Hat potwierdza aktywne atakithehackernews.com18.09Publiczne exploity na cztery luki jądra Linux dają lokalnie uprawnienia rootthehackernews.com18.09Brevo: skradziony klucz API Cloudflare i skrypty ClickFix na stronach klientówbleepingcomputer.com18.09WaterPlum z Korei Północnej zainfekowała 30 000 urządzeń w 100 krajachtherecord.media18.09Jedna zgoda OAuth daje napastnikowi dostęp do poczty i plików mimo MFAdarkreading.com