Defaults.Exposed › Naprawy › Referrer-Policy
Jak naprawić Referrer-Policy
Referrer-Policy to jednolinijkowe polecenie, które Twoja witryna przekazuje przeglądarce każdego odwiedzającego, kontrolując, jak duża część Twojego adresu WWW wędruje z nim, gdy kliknie odnośnik do innej witryny. Bez niego pełny adres strony, na której był — wpisane frazy wyszukiwania, numery kont, linki resetujące, ścieżki wewnętrznych stron i wszystko inne — jest po cichu przekazywany kolejnej witrynie, na którą trafia, w tym reklamodawcom, firmom analitycznym i wszędzie tam, dokąd prowadzi odnośnik.
W skrócie dla Twojej firmy: Za każdym razem, gdy odwiedzający kliknie odnośnik wychodzący, reklamę lub udostępniony zasób, jego przeglądarka może przekazać celowi pełny adres Twojej strony — a jeśli Twoje adresy niosą frazy wyszukiwania, identyfikatory klientów, numery zamówień lub jednorazowe linki, ujawniasz dane klientów stronom trzecim, których nie kontrolujesz. To problem ochrony danych, który regulatorzy traktują poważnie, po cichu złamana obietnica prywatności i punktowana luka, którą zespół bezpieczeństwa klienta wychwyci podczas due diligence.
Ile może Cię to kosztować
- Klient wypełnia formularz lub wykonuje wyszukiwanie, po czym klika odnośnik wychodzący lub reklamę — a adres strony, wraz z tym, co wpisał, trafia prosto do reklamodawcy lub firmy analitycznej, z którą nigdy nie zamierzałeś tego dzielić.
- Linki do resetu hasła i potwierdzenia konta czasem niosą tajny token w adresie WWW; bez tego nagłówka kliknięcie dowolnego odnośnika na takiej stronie może przekazać cały adres — wraz z tokenem — witrynie zewnętrznej.
- Prywatne ścieżki wewnętrznych stron (panele administracyjne, strony tylko dla klientów, poziomy cenowe, linki do dokumentów) zostają odsłonięte każdej stronie trzeciej, do której Twoi odwiedzający przeklikują, wręczając konkurentom i ciekawskim mapę Twojej witryny, której nigdy nie powinni zobaczyć.
- Przegląd bezpieczeństwa klienta lub audyt prywatności skanuje Twoją witrynę, nie widzi Referrer-Policy i odnotowuje to jako uchybienie minimalizacji danych — rodzaj ustalenia, które wstrzymuje kontrakt lub certyfikację.
- Dane osobowe trafiają w ręce podmiotów przetwarzających, z którymi nie masz umowy, zamieniając pięciominutowe przeoczenie w podlegające zgłoszeniu naruszenie ochrony danych.
Dlaczego to ma znaczenie. Przeglądarki pozostawione same sobie są gadatliwe: domyślnie mówią kolejnej witrynie, skąd właśnie przyszedł odwiedzający, często wraz z pełnym adresem strony. Dla witryny-wizytówki może to być nieszkodliwe, ale w chwili, gdy Twoje adresy zawierają cokolwiek osobistego — frazę wyszukiwania, identyfikator zamówienia, e-mail w odnośniku, prywatną ścieżkę — to ustawienie domyślne po cichu to ujawnia stronom zewnętrznym. Referrer-Policy to jedno ustawienie, które każe przeglądarkom przestać nadmiernie dzielić się danymi. To punktowany test na Twojej karcie wyników wart realne punkty, mapowany wprost na obowiązki minimalizacji danych z prawa o prywatności i jeden ze standardowych nagłówków bezpieczeństwa, których oczekuje każdy profesjonalny przegląd.
Co to jest, po ludzku
Za każdym razem, gdy odwiedzający Twoją witrynę klika odnośnik do innej witryny — odnośnik wychodzący, baner reklamowy, „udostępnij to”, a nawet czcionkę lub obraz ładowany skądinąd — jego przeglądarka po cichu dołącza notkę mówiącą, z której Twojej strony przyszedł. Ta notka nazywa się refererem.
Używany rozsądnie, referer jest nieszkodliwy, a nawet pomocny: dzięki niemu inne witryny wiedzą, że ruch przyszedł od Ciebie, i napędza on sporą część uczciwej analityki. Haczyk tkwi w zachowaniu domyślnym. Pozostawiona bez kontroli przeglądarka nie mówi po prostu „przyszli z twoja-firma.pl” — często przekazuje pełny adres dokładnej strony, wraz ze wszystkim po nazwie domeny. A adresy WWW niosą znacznie więcej, niż ludzie sądzą: frazy wpisane w wyszukiwarkę Twojej witryny, numery zamówień i kont, ścieżkę do prywatnej strony tylko dla członków, a nawet jednorazowe tajne tokeny w linkach resetu hasła i potwierdzenia.
Referrer-Policy to pojedyncze polecenie, które Twoja witryna wysyła przeglądarce, mówiące, jak dużo z tej notki wolno jej udostępniać. Możesz kazać dzielić tylko nazwę domeny, tylko z innymi stronami na własnej witrynie albo nic. Pomyśl o tym jak o różnicy między wręczeniem nieznajomemu pełnego adresu domowego z dołączonym dziennym rozkładem dnia, a powiedzeniem mu jedynie, w którym mieście mieszkasz.
To jeden z niewielkiej rodziny „nagłówków bezpieczeństwa” — krótkich poleceń, które Twoja witryna daje przeglądarce każdego odwiedzającego. Nie zmienia tego, jak Twoja witryna wygląda ani działa. Po prostu powstrzymuje przeglądarkę przed nadmiernym dzieleniem się danymi w Twoim imieniu.
Co to może Cię kosztować
Oto konkretne, codzienne sposoby, w jakie brakujący lub permisywny Referrer-Policy uderza w prawdziwe firmy. Żaden nie wymaga hakera — dzieją się automatycznie, każdego dnia, w normalnym użytkowaniu.
-
Wyciek wyszukiwania. Klient szuka na Twojej witrynie czegoś wrażliwego — produktu medycznego, usługi związanej z długiem, porównania z konkurencją — a fraza wyszukiwania ląduje w adresie strony. Następnie klika odnośnik wychodzący lub reklamę na tej stronie wyników. Reklamodawca otrzymuje teraz Twój adres z frazą wyszukiwania w środku, dowiadując się dokładnie, czego szukał Twój klient. Nigdy nie zgodziłeś się tego dzielić i nie możesz tego cofnąć.
-
Odsłonięty link resetujący. Wiele systemów umieszcza tajny jednorazowy token w adresie stron resetu hasła, potwierdzenia e-maila lub „magicznego logowania”. Jeśli taka strona zawiera jakikolwiek odnośnik wychodzący lub zasób strony trzeciej, pełny adres — wraz z tokenem — może trafić do witryny zewnętrznej. W najgorszym przypadku wręcza to stronie trzeciej klucze do konta.
-
Mapa witryny rozdana za darmo. Twoje ścieżki wewnętrznych stron często zdradzają strukturę: /admin, /cennik-enterprise, /klienci/acme, /pliki/raport-prywatny. Bez tego nagłówka każda witryna zewnętrzna, do której przeklikują Twoi odwiedzający, otrzymuje te ścieżki. Konkurenci poznają Twoje poziomy cenowe i linie produktów; roboty dowiadują się, które strony zaatakować.
-
Niechciana relacja dzielenia danych. Prawo o prywatności oczekuje, że wiesz, dokąd trafiają dane osobowe Twoich klientów, i masz zawartą umowę. Wyciekanie adresów stron zawierających identyfikatory klientów lub adresy e-mail do sieci reklamowych i firm analitycznych — bez umowy i bez zgody — to dokładnie ten rodzaj niekontrolowanego przepływu danych, który zamienia rutynowy audyt w ustalenie, a ustalenie w naruszenie podlegające zgłoszeniu.
-
Transakcja, która utyka na due diligence. Gdy zespół bezpieczeństwa większego klienta Cię sprawdza, brak standardowych nagłówków bezpieczeństwa to szybka, automatyczna pozycja do odhaczenia. Brak Referrer-Policy mówi im, że podstawowa higiena prywatności nigdy nie została ustawiona — a to wrażenie rzutuje na całą resztę przeglądu.
Czym to właściwie jest
Domyślnie przeglądarki w nowoczesnych wersjach stosują zachowanie z grubsza odpowiadające „strict-origin-when-cross-origin” — ale nie możesz na tym polegać, bo starsze przeglądarki, osadzone webviews i pewne konfiguracje wciąż wracają do wyciekania większej ilości danych. Jedyny sposób, by mieć pewność, to ustawić politykę jawnie. Gdy to robisz, wybierasz jedną regułę z krótkiej listy. Te, które się liczą:
- no-referrer — nie dziel niczym. Kolejnej witrynie nie mówi się nic o tym, skąd przyszedł odwiedzający. Maksymalna prywatność; może osłabić analitykę odesłań.
- same-origin — dziel pełny adres tylko, gdy odwiedzający przechodzi między stronami na Twojej własnej witrynie; z witrynami zewnętrznymi nie dziel niczym.
- strict-origin-when-cross-origin — zalecane ustawienie domyślne. W obrębie Twojej witryny dzielona jest pełna ścieżka; witrynom zewnętrznym tylko sama nazwa domeny (i zupełnie nic przy przejściu ze strony bezpiecznej na niebezpieczną). Strony zewnętrzne dowiadują się, że ruch przyszedł od Ciebie, lecz nigdy prywatnych szczegółów po nazwie domeny.
- origin — zawsze dziel tylko nazwę domeny, nawet w obrębie własnej witryny.
Oraz dwie wartości, których należy unikać, bo karta wyników traktuje je jak nie lepsze niż brak nagłówka:
- unsafe-url — dziel pełny adres ze wszystkimi, zawsze. To najgorszy przypadek w jednym słowie.
- no-referrer-when-downgrade — stare domyślne ustawienie przeglądarek; wciąż wysyła pełny adres innym bezpiecznym witrynom, wyciekając wszystko opisane powyżej.
Jak wygląda dobry stan: nagłówek Referrer-Policy jest obecny i ustawiony na wartość restrykcyjną — dla większości firm strict-origin-when-cross-origin. To utrzymuje działanie analityki odesłań, jednocześnie gwarantując, że nic poza nazwą Twojej domeny nigdy nie dotrze do witryny zewnętrznej.
Jak to naprawić (darmowo, około 5 minut)
Przekaż tę sekcję swojemu informatykowi, programiście WWW lub wsparciu hostingu — poprawka jest darmowa, to pojedyncza linijka i nie zepsuje Twojej witryny. Nie ma tu ryzykownego wdrożenia: w przeciwieństwie do niektórych ustawień bezpieczeństwa rozsądny Referrer-Policy nie powstrzyma Twoich odnośników ani stron przed działaniem. Przycina jedynie to, co jest dzielone z innymi witrynami.
Cel: ustaw nagłówek odpowiedzi Referrer-Policy na wartość strict-origin-when-cross-origin (lub wartość bardziej restrykcyjną, jeśli wolisz dzielić jeszcze mniej).
Cloudflare (bez kodu — najłatwiej, jeśli go używasz):
Panel → Twoja domena → Rules → Transform Rules → Modify Response Header → Create rule → Set static → nazwa nagłówka Referrer-Policy, wartość strict-origin-when-cross-origin → zastosuj do wszystkich przychodzących żądań → Deploy.
Google Workspace / Microsoft 365: te zarządzają Twoim e-mailem, nie witryną, więc nagłówek ustawia się tam, gdzie Twoja witryna jest faktycznie hostowana (Twój host WWW, CDN lub serwer) — nie w panelu Workspace ani 365. Ustal hosta i użyj pasującej opcji poniżej.
Nginx:
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
Apache (w konfiguracji witryny lub .htaccess):
Header always set Referrer-Policy "strict-origin-when-cross-origin"
IIS (web.config):
<httpProtocol><customHeaders>
<add name="Referrer-Policy" value="strict-origin-when-cross-origin" />
</customHeaders></httpProtocol>
Node / Express:
app.use((req, res, next) => { res.setHeader('Referrer-Policy', 'strict-origin-when-cross-origin'); next(); });
WordPress / popularne hosty: większość zarządzanego WordPressa i hostów współdzielonych pozwala dodać nagłówki odpowiedzi przez wtyczkę bezpieczeństwa, panel „nagłówki” w panelu sterowania hostingu albo fragment .htaccess powyżej. Jeśli jesteś za Cloudflare, metoda Cloudflare jest najczystsza i obejmuje wszystko naraz.
Po zastosowaniu: wczytaj swoją witrynę i uruchom test ponownie albo użyj narzędzi deweloperskich przeglądarki (zakładka Sieć → kliknij główny dokument → Nagłówki odpowiedzi), by potwierdzić obecność Referrer-Policy: strict-origin-when-cross-origin.
Częste błędy
- Ustawienie wartości permisywnej i zakładanie, że się liczy.
unsafe-urlino-referrer-when-downgradeoba wciąż wyciekają pełny adres. Karta wyników daje za nie zero — identycznie jak za brak nagłówka. Jeśli nagłówek jest obecny, a punktów nie ma, to niemal zawsze dlatego. - Ustawienie tylko na stronie głównej. Nagłówek powinien być wysyłany na każdej stronie, bo wycieki dzieją się na stronach wyników wyszukiwania, kont i resetu — nie na stronie głównej. Ustaw go na poziomie serwera, CDN lub Cloudflare, by obejmował całą witrynę automatycznie.
- Ustawienie tylko w znacznikach HTML
<meta>. Znacznik<meta name="referrer">działa w niektórych przypadkach, ale nie we wszystkich, i łatwo o niespójność między stronami. Ustawienie go jako właściwego nagłówka odpowiedzi (metody powyżej) to niezawodne podejście. - Pozwalanie, by jedna warstwa nadpisywała drugą. Jeśli i Twój serwer origin, i CDN ustawiają nagłówek z różnymi wartościami, wynik może być nieprzewidywalny. Wybierz jedno miejsce do zarządzania — zwykle CDN lub Cloudflare, jeśli go masz — i utrzymuj resztę spójną.
- Traktowanie go jako zamiennika trzymania danych z dala od adresów URL. Nagłówek ogranicza szkodę, ale czystszym nawykiem na dłuższą metę jest w ogóle nie umieszczać sekretów i danych osobowych w adresach WWW. Użyj nagłówka teraz; higienę adresów URL podnieś z programistą jako kolejny krok.
Krótka uwaga o powiązanych nagłówkach
Referrer-Policy stoi obok niewielkiego zestawu innych nagłówków bezpieczeństwa web, które sprawdzamy — Content-Security-Policy, X-Frame-Options, X-Content-Type-Options i kilku zaawansowanych nagłówków cross-origin. Chronią różne rzeczy, więc posiadanie jednego nie pokrywa pozostałych. Jeśli brakuje Twojego Referrer-Policy, warto poprosić osobę, która to naprawia, by przy okazji potwierdziła obecność pozostałych standardowych nagłówków, ponieważ zwykle konfiguruje się je w tym samym jednym miejscu, a wizyta nic dodatkowego nie kosztuje.
W skrócie
Referrer-Policy to najtańsza, najbezpieczniejsza poprawka prywatności na Twojej karcie wyników: jedna linijka, około pięciu minut, bez ryzyka zepsucia czegokolwiek i darmowa. Powstrzymuje przeglądarki Twoich odwiedzających przed cichym wręczaniem prywatnych adresów Twoich stron — i wszelkich danych osobowych, jakie zawierają — każdej witrynie zewnętrznej, do której przeklikują. Ustaw ją na strict-origin-when-cross-origin, potwierdź, że jest aktywna na każdej stronie, a luka średniej wagi i jej 15 punktów są zamknięte.
Najczęstsze pytania
Nie znam się na technice — czy to coś, czym faktycznie mogę się zająć?
Tak, i to jedna z najłatwiejszych poprawek na całej karcie wyników. To pojedyncza linijka dodawana przez osobę zarządzającą Twoją witryną lub hostingiem, a w usługach takich jak Cloudflare to kilka kliknięć bez żadnego kodu. Przekaż im sekcję Jak to naprawić poniżej. Jest darmowa, zajmuje około pięciu minut i — w przeciwieństwie do niektórych ustawień bezpieczeństwa — niczego na Twojej witrynie nie zepsuje.
Co właściwie znaczy tu „referer”?
Gdy ktoś klika odnośnik z Twojej strony do innej witryny, jego przeglądarka dołącza notkę mówiącą, z której strony przyszedł — ta notka to referer. Jest naprawdę przydatna dla uczciwej analityki. Problem w tym, że domyślnie notka często zawiera pełny adres Twojej strony, a nie tylko nazwę domeny. Jeśli ten adres zawiera coś prywatnego, też zostaje udostępnione. Referrer-Policy pozwala przyciąć notkę do samej domeny albo ją wyłączyć, by nic wrażliwego nie wyciekło.
Czy naprawdę warto się tym przejmować, jeśli moja witryna nie obsługuje płatności?
Niemal na pewno tak. Nie potrzebujesz kasy, by mieć prywatne informacje w adresach WWW — pola wyszukiwania, formularze kontaktowe, strony kont, linki do dokumentów i e-maile resetujące hasło rutynowo umieszczają dane w pasku adresu. A nawet bez żadnych danych osobowych ujawnianie ścieżek wewnętrznych stron każdej witrynie zewnętrznej, którą klikają odwiedzający, wręcza konkurentom i robotom darmową mapę Twojej witryny. Poprawka nic nie kosztuje i pięć minut, więc nie ma większego powodu, by ją pominąć.
Czy włączenie tego może zepsuć moją witrynę lub analitykę?
Nie. To jeden z bezpiecznych nagłówków — kontroluje jedynie, jak dużo szczegółów adresu jest dzielonych z innymi witrynami, a nie to, czy odnośniki działają. Zalecane ustawienie nadal wysyła nazwę Twojej domeny witrynom zewnętrznym, więc legalna analityka odesłań działa dalej; po prostu przestaje wraz z nią wędrować pełny prywatny adres. Nie trzeba okresu próbnego z samym obserwowaniem ani niczego testować najpierw na środowisku testowym.
Czy to kwestia prawa o prywatności, czy tylko miły dodatek?
To może być prawdziwy problem zgodności. Przepisy o ochronie danych wymagają zbierania i dzielenia jedynie minimum niezbędnych danych osobowych oraz wiedzy, dokąd te dane trafiają. Jeśli Twoje adresy niosą identyfikatory osobowe, a Ty wyciekasz je reklamodawcom lub firmom analitycznym bez umowy, to uchybienie minimalizacji danych, które audytorzy i regulatorzy rozpoznają. Dla większości firm ten nagłówek to tani, konkretny sposób na zamknięcie tej luki.
Czy to wpływa na naszą ocenę, czy to tylko porada?
Wpływa na Twoją ocenę. Test Referrer-Policy jest punktowany i wart do 15 punktów w kategorii Bezpieczeństwo web. Brak nagłówka jest oznaczany jako średnia waga. Uwaga na jedną pułapkę: ustawienie nagłówka na wartość permisywną, jak unsafe-url czy no-referrer-when-downgrade, daje zero punktów — tyle samo, co brak nagłówka — bo te wartości wciąż wyciekają pełny adres. By zdobyć punkty, potrzebujesz właściwie restrykcyjnej wartości, jak strict-origin-when-cross-origin.