Defaults.Exposed › Naprawy › Nagłówki izolacji cross-origin (COOP / CORP / COEP)
Jak naprawić Nagłówki izolacji cross-origin (COOP / CORP / COEP)
Trzy opcjonalne polecenia przeglądarki, które kontrolują, jak inne witryny mogą wchodzić w interakcję z Twoją — otwierać ją w wyskakujących oknach, osadzać jej obrazy i skrypty albo wciągać jej zasoby do własnych stron. To nowoczesne wzmocnienie, nie podstawowy obowiązek, a w naszej punktacji są informacyjne: ich brak nie obniża oceny. Ale dwa bezpieczne z nich zamykają cichą lukę phishingu i kradzieży przepustowości, a zespół IT uważnego kupującego zauważy, gdy są obecne.
W skrócie dla Twojej firmy: Dwa z tych trzech nagłówków zamykają wyrafinowany phishing przez wyskakujące okna i powstrzymują inne witryny od podlinkowywania Twoich obrazów i skryptów (co kosztuje Cię przepustowość i może powodować wyciek danych). Są darmowe, zajmują programiście około 15 minut i niczego nie psują. Trzeci jest zaawansowany i może zepsuć analitykę, czcionki i osadzenia — większość firm powinna pozostawić go wyłączonym. Żaden nie wpływa na ocenę, więc traktuj je jako szlif, nie panikę: zrób dwa bezpieczne, pomiń ryzykowny, chyba że konkretnie go potrzebujesz.
Ile może Cię to kosztować
- Oszust otwiera Twoją prawdziwą witrynę w wyskakującym oknie i zachowuje nad nim zdalną kontrolę — po cichu przekierowując Twojego klienta na fałszywe logowanie w chwili, gdy odwróci wzrok. Bezpieczny nagłówek (COOP) całkowicie przecina to łącze kontroli.
- Inne witryny osadzają Twoje zdjęcia produktów, logotypy i skrypty prosto z Twojego serwera (hotlinking) — płacisz za przepustowość za każdym razem, gdy ich odwiedzający ładują stronę, a Twoje zasoby pojawiają się na witrynach, których nigdy byś nie zaakceptował.
- Zespół bezpieczeństwa potencjalnego klienta przed podpisaniem uruchamia skan nagłówków i widzi, że dodałeś nowoczesne wzmocnienie cross-origin — drobny sygnał, ale plasuje Cię w kolumnie traktują to poważnie zamiast absolutne minimum.
- Programista, chcąc być dokładny, włącza zaawansowany nagłówek izolacji (COEP) bez testów — i z dnia na dzień psuje Twoją analitykę, czcionki web i osadzony widżet rezerwacji. Wiedza, który nagłówek jest bezpieczny, a który ryzykowny, pozwala uniknąć samodzielnie wywołanej awarii.
- Lista kontrolna audytora wspomina o izolacji cross-origin; wolisz pokazać obecne i poprawne na dwóch bezpiecznych niż tłumaczyć, dlaczego nie ma niczego.
Dlaczego to ma znaczenie. To przyszłościowe nagłówki wzmacniające przeglądarkę. W naszej metodologii wszystkie trzy są informacyjne — zarejestrowane z zerową liczbą punktów i nigdy nie zmieniają oceny — ponieważ to zaawansowane mechanizmy, bez których witryna może legalnie działać, a jeden z nich może zaszkodzić przy złym zastosowaniu. Raportujemy je, byś widział, gdzie stoisz. Dwa bezpieczne (COOP i CORP) naprawdę warto dodać: darmowe, szybkie i zamykają realne luki phishingu przez wyskakujące okna oraz kradzieży zasobów, niczego nie psując.
Czym one są, po ludzku
Gdy ktoś odwiedza Twoją witrynę, jego przeglądarka nie ładuje Twoich stron w izolacji — decyduje też, jak inne witryny mogą wchodzić w interakcję z Twoją. Czy inna witryna może otworzyć Twoją w wyskakującym oknie i zachować nad nią kontrolę? Czy inna witryna może sięgnąć i osadzić Twoje obrazy i skrypty na własnych stronach? Czy Twoja własna witryna może bezpiecznie używać pewnych potężnych, zablokowanych funkcji przeglądarki?
Te trzy nagłówki to krótkie, niewidoczne polecenia, które Twoja witryna wysyła przeglądarce każdego odwiedzającego, by odpowiedzieć dokładnie na te pytania. Znane są ze swoich skrótów:
- COOP — Cross-Origin-Opener-Policy. Kontroluje, czy inne witryny, które otwierają Twoją w wyskakującym oknie, mogą zachować nad nim zdalną kontrolę.
- CORP — Cross-Origin-Resource-Policy. Kontroluje, czy inne witryny mogą osadzać Twoje obrazy, skrypty i inne pliki na własnych stronach.
- COEP — Cross-Origin-Embedder-Policy. Zaawansowany mechanizm, który w połączeniu z COOP „izoluje” Twoją stronę, by mogła bezpiecznie używać pewnych potężnych funkcji przeglądarki.
Dwa z nich (COOP i CORP) są bezpieczne do dodania i naprawdę użyteczne. Trzeci (COEP) jest zaawansowany i może coś zepsuć, jeśli włączyć go nieostrożnie.
Najważniejsze, co trzeba wiedzieć na wstępie: w naszej punktacji wszystkie trzy są informacyjne. Nie wpływają na Twoją ocenę. Brakujący nic Cię nie kosztuje. Raportujemy je, byś widział, gdzie stoisz, i zgarnął łatwe wygrane — nie po to, byś panikował o liczbę.
Co to może Cię kosztować
To ryzyka niszowe, nie nagłówkowe — ale realne, a poprawki są darmowe.
-
Phishing przez wyskakujące okno, który zachowuje zdalną kontrolę nad Twoją prawdziwą witryną. Bez COOP strona oszusta może otworzyć Twoją faktyczną witrynę w wyskakującym oknie i utrzymać do niej żywe odwołanie. Gdy uwaga Twojego klienta jest na stronie oszusta, atakujący może przekierować to wyskakujące okno — z Twoją prawdziwą domeną w pasku adresu — na fałszywy ekran logowania lub płatności dokładnie w chwili, gdy klient się do niego odwróci. COOP ustawiony na same-origin przecina to łącze kontroli, by wyskakującym oknem nie dało się sterować jak kukiełką.
-
Inne witryny kradnące Twoją przepustowość (i umieszczające Twoje zasoby tam, gdzie ich nie chcesz). Bez CORP dowolna witryna w internecie może osadzić Twoje zdjęcia produktów, logotypy, skrypty i inne pliki prosto z Twojego serwera — „hotlinking”. Każdy odwiedzający ich stronę pobiera plik od Ciebie, na Twój rachunek za przepustowość, a Twój zasób pojawia się w kontekście, którego nigdy nie zaakceptowałeś. CORP ustawiony na same-origin powstrzymuje witryny zewnętrzne przed osadzaniem Twoich zasobów.
-
Cicha ścieżka wycieku danych dla zaawansowanych ataków przeglądarki. To samo osadzanie cross-origin, które umożliwia hotlinking, jest też jedną ze ścieżek, których wyrafinowane ataki bocznego kanału na przeglądarkę (rodzina Spectre) używają do odczytu danych, których nie powinny. COOP i CORP razem zamykają tę ścieżkę na poziomie przeglądarki. Dla większości małych firm to pas i szelki, ale darmowy pas i szelki.
-
Samodzielnie wywołana awaria od złego nagłówka. Zaawansowany COEP wymaga, by każdy zasób, który Twoja witryna ładuje, jawnie się zgodził. Włącz go bez testów, a Twoja analityka, czcionki web, osadzone mapy, widżety rezerwacji i skrypty zewnętrzne mogą przestać się ładować — bo żadnego z nich o zgodę nie poproszono. To jedyny sposób, w jaki te nagłówki mogą Ci naprawdę zaszkodzić, i jest całkowicie do uniknięcia: nie włączaj COEP bez testów.
-
Pominięty łatwy sygnał dla uważnych kupujących. Gdy zespół IT potencjalnego klienta przed podpisaniem skanuje Twoje nagłówki, znalezienie nowoczesnego wzmocnienia cross-origin to drobny, lecz realny sygnał „ci ludzie traktują bezpieczeństwo poważnie”. Sam nie wygra transakcji — ale za darmo można go mieć po właściwej stronie bilansu.
Czym właściwie jest każdy z nich
COOP — Cross-Origin-Opener-Policy (bezpieczny, zalecany)
Gdy inna witryna otwiera Twoją za pomocą wyskakującego okna lub window.open, oba okna mogą normalnie zachować wzajemne odwołanie. To łącze można nadużyć: otwierający może manipulować lub przekierować Twoje okno, odczytać fragmenty jego adresu URL i zainscenizować przekonujący phishing przy użyciu Twojej prawdziwej domeny. COOP: same-origin zrywa tę relację — Twoje okno staje się odizolowane od wszystkiego, co otworzyło je z innego origin. Normalne przeglądanie, Twoje wewnętrzne odnośniki i zwykła nawigacja są zupełnie niedotknięte.
Jak wygląda dobry stan: Cross-Origin-Opener-Policy: same-origin.
CORP — Cross-Origin-Resource-Policy (bezpieczny, zalecany)
Domyślnie Twoje obrazy, skrypty i inne pliki mogą być osadzane przez dowolną witrynę gdziekolwiek. CORP: same-origin każe przeglądarkom odmawiać osadzania Twoich zasobów z innego origin — by inne witryny nie mogły podlinkowywać Twoich zasobów ani wciągać ich do swoich stron. Twoja własna witryna nadal ładuje swoje zasoby dokładnie jak wcześniej; blokowane są tylko witryny zewnętrzne.
Jak wygląda dobry stan: Cross-Origin-Resource-Policy: same-origin. (Jeśli celowo publikujesz zasoby do osadzania przez innych — publiczne logo, otwarte API — programista może rozluźnić to na tych konkretnych odpowiedziach.)
COEP — Cross-Origin-Embedder-Policy (zaawansowany, zwykle pozostaw wyłączony)
COEP dopełnia „izolację cross-origin”: w połączeniu z COOP wymaga, by każdy zasób, który Twoja strona ładuje, jawnie się zgodził (przez CORS lub CORP). Zrobiony właściwie, odblokowuje pewne potężne funkcje przeglądarki (jak SharedArrayBuffer) i dodaje kolejną warstwę przeciw atakom klasy Spectre. Ale ponieważ wymaga zgody od wszystkiego, co ładujesz, łatwo psuje narzędzia zewnętrzne — analitykę, czcionki, osadzone widżety — których nie zbudowano z myślą o wyrażaniu zgody. Większość witryn nie potrzebuje funkcji, które odblokowuje, i nie powinna brać na siebie ryzyka zepsucia.
Jak wygląda dobry stan: dla rzadkiej witryny, która go potrzebuje, Cross-Origin-Embedder-Policy: credentialless — bezpieczniejsza wartość, mniej prawdopodobna do zepsucia zasobów zewnętrznych niż require-corp. Dla wszystkich pozostałych nieobecność jest w porządku, a nasz raport Cię za nią nie ukarze.
Jak to naprawić (darmowo, ~15 minut)
Przekaż to swojemu informatykowi lub programiście WWW — poprawka jest darmowa. Dodanie COOP i CORP to kilka jednolinijkowych ustawień na serwerze lub CDN; nie ma licencji ani kosztu bieżącego. Jedyne polecenie dla właściciela to: zrób dwa bezpieczne i nie włączaj COEP bez testów.
To nagłówki odpowiedzi, ustawiane tam, gdzie powstają odpowiedzi Twojej witryny — najłatwiej w Twoim CDN (np. Cloudflare), jeśli go masz, inaczej w konfiguracji serwera WWW.
Dwa bezpieczne nagłówki (zalecane dla każdego)
Cloudflare — Rules → Transform Rules → Modify Response Headers → Set:
Cross-Origin-Opener-Policy=same-originCross-Origin-Resource-Policy=same-origin
Nginx:
add_header Cross-Origin-Opener-Policy "same-origin" always;
add_header Cross-Origin-Resource-Policy "same-origin" always;
Apache:
Header always set Cross-Origin-Opener-Policy "same-origin"
Header always set Cross-Origin-Resource-Policy "same-origin"
To bezpieczne dodatki i nie zepsują normalnego działania. Po wdrożeniu przeładuj kilka stron i potwierdź, że witryna zachowuje się dokładnie jak wcześniej (powinna).
Zaawansowany nagłówek (tylko jeśli konkretnie go potrzebujesz)
Nie włączaj tego bez wcześniejszych testów na środowisku testowym. COEP może zepsuć analitykę, czcionki i osadzone widżety.
Cloudflare: Transform Rules → Set Cross-Origin-Embedder-Policy = credentialless.
Nginx:
add_header Cross-Origin-Embedder-Policy "credentialless" always;
Użyj credentialless zamiast require-corp — mniej prawdopodobne, że zepsuje zasoby zewnętrzne. Testuj dokładnie na środowisku testowym; obserwuj, czy jakiś skrypt, czcionka lub osadzenie strony trzeciej przestaje się ładować. Jeśli coś się zepsuje, a tak naprawdę nie potrzebujesz funkcji, które COEP odblokowuje, po prostu usuń nagłówek — nie ma kary za jego brak.
Uwagi do platform
- Google Workspace / Microsoft 365: te obsługują Twój e-mail, nie witrynę, więc nie ma tu nic do ustawienia. Te nagłówki należą do tego, co hostuje Twoją witrynę (Twój CDN, host lub serwer).
- Popularne hosty zarządzane / kreatory witryn (Wix, Squarespace, Shopify itp.): niestandardowe nagłówki odpowiedzi mogą nie być konfigurowalne w niższych planach. Jeśli nie możesz ich dodać, to w porządku — są informacyjne i nie wpływają na ocenę. Postawienie witryny za CDN takim jak Cloudflare to zwykły sposób na uzyskanie kontroli nad nagłówkami.
- WordPress na własnym hostingu: ustaw je w konfiguracji serwera WWW (Nginx/Apache powyżej) lub przez CDN, w miarę możliwości nie we wtyczce — poziom serwera/CDN jest czystszy i obejmuje każdą odpowiedź.
Częste błędy
- Włączanie COEP „dla dokładności” i psucie witryny. To ten duży. COEP wymaga zgody od wszystkiego, co ładujesz; włącz go bez testów, a Twoja analityka, czcionki i osadzenia mogą zniknąć. Jeśli nie potrzebujesz funkcji przeglądarki, które odblokowuje, nie ustawiaj go.
- Traktowanie ich jako pilnych, bo skaner o nich wspomniał. Są informacyjne. Punktowane nagłówki web (HTTPS, HSTS, CSP, clickjacking, odgadywanie typu MIME) są pierwsze — napraw je, zanim poświęcisz tu jakąkolwiek energię.
- Ustawianie CORP zbyt restrykcyjnie, gdy faktycznie publikujesz zasoby do osadzania. Jeśli celowo serwujesz logo, plakietkę lub API dla innych witryn, ogólny CORP
same-originje zablokuje. Rozluźnij go tylko na tych odpowiedziach, zamiast porzucać nagłówek wszędzie. - Dodawanie nagłówka na poziomie strony/aplikacji i pomijanie części odpowiedzi. Ustaw je na poziomie serwera lub CDN, by obejmowały każdą odpowiedź (obrazy, skrypty, punkty końcowe API), nie tylko strony HTML.
- Mylenie ich z kłódką SSL. HTTPS szyfruje połączenie; te kontrolują interakcję między witrynami. Są niepowiązane i chcesz obu.
Uwaga o ocenie
Zupełnie jasno: żaden z tych trzech testów nie wpływa na Twoją ocenę. Są zarejestrowane w naszej metodologii jako informacyjne, z zerową liczbą punktów, a brakujący nigdy nic Cię nie kosztuje. Wynosimy je na wierzch, bo dwa bezpieczne to tanie, prawdziwe ulepszenia i bo widzenie pełnego obrazu jest użyteczne — nie dlatego, że jest liczba do obrony. Jeśli nic tu nie zrobisz, Twoja ocena jest dokładnie taka sama. Jeśli dodasz COOP i CORP, zamknąłeś za darmo kilka realnych (choć niszowych) luk. To właściwy sposób myślenia o tej stronie: opcjonalny szlif, z jedną wyraźnie oznaczoną pułapką do uniknięcia.
Najczęstsze pytania
Te nie wpływają na moją ocenę — czy w ogóle warto się nimi zajmować?
Dwoma tak; jednym raczej nie. COOP i CORP są darmowe, zajmują minuty i nie zepsują Twojej witryny — zamykają realne (choć niszowe) ścieżki ataku, więc warto je zrobić jako tanią higienę. COEP jest zaawansowany i może zepsuć narzędzia zewnętrzne, więc większość firm powinna pozostawić go wyłączonym, chyba że konkretnie potrzebuje funkcji przeglądarki, które odblokowuje. Żaden z trzech tak czy inaczej nie zmienia Twojego wyniku, więc nie ma pośpiechu — potraktuj dwa bezpieczne jako porządki przy następnej wizycie programisty w witrynie.
Nie znam się na technice — czy to coś, co muszę zrobić?
Nie osobiście i nie pilnie. Ponieważ są informacyjne, nic złego nie stanie się z Twoją oceną, jeśli je pominiesz. Jeśli chcesz dodać dwa bezpieczne, przekaż sekcję Jak to naprawić osobie zarządzającej Twoją witryną lub CDN — to kilka jednolinijkowych ustawień, a poprawka jest darmowa. Jedyne, co warto wprost zaznaczyć, to COEP: powiedz im, by nie włączali go bez testów, bo może zepsuć analitykę i osadzone widżety.
Czym te się różnią od nagłówków, które WPŁYWAJĄ na ocenę?
Punktowane nagłówki bezpieczeństwa web — przekierowanie HTTPS, HSTS, Content-Security-Policy, ochrona przed clickjackingiem (X-Frame-Options) i ochrona przed odgadywaniem typu MIME — bronią przed częstymi, szeroko wykorzystywanymi atakami, więc ich brak kosztuje punkty. Trzy z tej strony (COOP, CORP, COEP) to nowsze, bardziej wyspecjalizowane mechanizmy izolacji przeglądarki. To dobra praktyka, ale jeszcze nie bazowe oczekiwanie, więc raportujemy je bez punktowania. Najpierw zrób punktowane; te to szlif na wierzchu.
Czy dodanie COOP lub CORP zepsuje moją witrynę albo integracje partnerów?
Zalecane ustawienia (oba same-origin) zaprojektowano jako bezpieczne. COOP przecina jedynie łącze do okien, które Twoja witryna otwiera w wyskakujących oknach — normalne przeglądanie, Twoje własne strony i zwykłe odnośniki nie są dotknięte. CORP powstrzymuje tylko *inne* witryny od osadzania Twoich obrazów i skryptów; Twoja własna witryna ładuje swoje zasoby dokładnie jak wcześniej. Jeśli faktycznie serwujesz zasoby (jak publiczne logo czy API), które inne witryny mają osadzać, programista może użyć bardziej permisywnego ustawienia na tych konkretnych odpowiedziach. Tym, który naprawdę grozi zepsuciem, jest COEP — pozostaw go wyłączonym, chyba że przetestowany.
Ile naprawdę kosztuje mnie „hotlinking”?
Gdy inna witryna osadza Twój obraz lub skrypt prosto z Twojego serwera, zamiast hostować własną kopię, każdy odwiedzający jej stronę pobiera go od Ciebie — na Twój rachunek za przepustowość i pokazując Twój zasób w kontekście, którego nie zaakceptowałeś. Dla małej firmy rzadko jest to katastrofa, ale to darmowe pieniądze wyciekające za drzwi, a CORP (same-origin) powstrzymuje to na poziomie przeglądarki. Zamyka też subtelną ścieżkę wycieku danych, na której opierają się zaawansowane ataki przeglądarki klasy Spectre.
Jak wygląda dobry stan dla każdego z nich?
COOP: nagłówek Cross-Origin-Opener-Policy ustawiony na same-origin. CORP: nagłówek Cross-Origin-Resource-Policy ustawiony na same-origin. COEP: nagłówek Cross-Origin-Embedder-Policy — a jeśli już go ustawiasz, credentialless to bezpieczniejsza wartość niż require-corp. Nasz raport po prostu odnotowuje, czy każdy jest obecny i na co ustawiony; nigdy nie karze Cię za brakujący. Celuj w obecne COOP i CORP; pozostaw COEP nieobecny, chyba że go przetestowałeś.