Defaults.Exposed › Åtgärder › Cross-origin isolationshuvuden (COOP / CORP / COEP)
Hur du fixar Cross-origin isolationshuvuden (COOP / CORP / COEP)
Tre valfria webbläsarinstruktioner som styr hur andra webbplatser tillåts interagera med din — öppna den i popups, bädda in dess bilder och skript, eller dra in dess resurser i sina egna sidor. De är modern härdning, inte ett grundläggande måste, och i vår betygsättning är de informativa: att sakna dem sänker inte ditt betyg. Men de två säkra av dem stänger ett diskret nätfiske- och bandbreddsstöldsgap, och en noggrann köpares IT-team noterar när de finns på plats.
Slutsats för ditt företag: Två av dessa tre huvuden stänger av sofistikerat popup-nätfiske och hindrar andra webbplatser från att hotlänka dina bilder och skript (vilket kostar dig bandbredd och kan läcka data). De är gratis, tar en utvecklare ungefär 15 minuter, och bryter ingenting. Det tredje är avancerat och kan bryta analys, teckensnitt och inbäddningar — de flesta företag bör låta det vara. Ingen av dem påverkar ditt betyg, så behandla dem som polering, inte panik: gör de två säkra, hoppa över den riskfyllda om du inte specifikt behöver den.
Vad detta kan kosta dig
- En bedragare öppnar din riktiga webbplats i ett popupfönster och behåller fjärrkontrollen — omdirigerar tyst din kund till en falsk inloggning i det ögonblick de tittar bort. Det säkra huvudet (COOP) klipper den kontrolllänken helt.
- Andra webbplatser bäddar in dina produktfoton, logotyper och skript direkt från din server (hotlänkning) — du betalar bandbredden varje gång deras besökare laddar sidan, och dina tillgångar dyker upp på webbplatser du aldrig skulle godkänna.
- En potentiell kunds säkerhetsteam kör en huvudskanning innan de skriver på och ser att du har lagt till modern cross-origin-härdning — liten signal, men den placerar dig i 'de tar det här på allvar'-kolumnen istället för 'bara det absoluta minimum'-kolumnen.
- En utvecklare, som försöker vara noggrann, slår på det avancerade isolationshuvudet (COEP) utan att testa — och bryter din Google Analytics, webbteckensnitt och inbäddad bokningswidget över natten. Att veta vilket huvud som är säkert och vilket som är riskfyllt undviker ett självförsakat driftstopp.
- En revisors checklista nämner cross-origin-isolation; du vill hellre visa 'på plats och korrekt' på de två säkra än att förklara varför ingenting finns där alls.
Varför det spelar roll. Det här är framtidsinriktade webbläsarlärdningshuvuden. I vår metodik är alla tre informativa — de är registrerade med noll poäng och rör aldrig ditt betyg — för de är avancerade kontroller en webbplats legitimt kan verka utan, och en av dem kan orsaka skada om den tillämpas fel. Vi rapporterar om dem så att du kan se var du står. De två säkra (COOP och CORP) är verkligen värda att lägga till: gratis, snabba, och de stänger riktiga popup-nätfiske- och resurssstöldsgap utan att bryta något.
Vad det här är, i klartext
När någon besöker din webbplats laddar deras webbläsare inte bara dina sidor isolerat — den bestämmer också hur andra webbplatser tillåts interagera med din. Kan en annan webbplats öppna din webbplats i ett popup och behålla kontrollen över den? Kan en annan webbplats nå in och bädda in dina bilder och skript på sina egna sidor? Kan din egna webbplats på ett säkert sätt använda vissa kraftfulla, låsta webbläsarfunktioner?
Dessa tre huvuden är korta, osynliga instruktioner din webbplats skickar till varje besökares webbläsare för att besvara exakt dessa frågor. De är kända med sina förkortningar:
- COOP — Cross-Origin-Opener-Policy. Styr om andra webbplatser som öppnar din i ett popupfönster kan behålla fjärrkontrollen av det.
- CORP — Cross-Origin-Resource-Policy. Styr om andra webbplatser tillåts bädda in dina bilder, skript och andra filer på sina egna sidor.
- COEP — Cross-Origin-Embedder-Policy. En avancerad kontroll som, kombinerad med COOP, “isolerar” din sida så att den kan använda vissa kraftfulla webbläsarfunktioner på ett säkert sätt.
Två av dem (COOP och CORP) är säkra att lägga till och genuint användbara. Det tredje (COEP) är avancerat och kan bryta saker om det slås på vårdslöst.
Det viktigaste att veta på förhand: i vår betygsättning är alla tre informativa. De påverkar inte ditt betyg. En saknad kostar dig ingenting. Vi rapporterar om dem så att du kan se var du står och städa upp de enkla vinsterna — inte för att du ska panikera inför ett nummer.
Vad det här kan kosta dig
Det här är nischrisker, inte rubrikrisker — men de är verkliga, och åtgärderna är gratis.
-
Popup-nätfiske som behåller fjärrkontroll av din riktiga webbplats. Utan COOP kan en bedragares sida öppna din riktiga webbplats i ett popupfönster och hålla en live-referens till den. Medan din kunds uppmärksamhet är på bedragarens sida kan angriparen omdirigera det popupet — din riktiga domän i adressfältet — till en falsk inloggnings- eller betalningsskärm i exakt det ögonblick kunden vänder sig tillbaka till det. COOP satt till “same-origin” bryter den kontrolllänken så att popupet inte kan fjärrstyras.
-
Andra webbplatser som stjäl din bandbredd (och lägger dina tillgångar dit du inte vill ha dem). Utan CORP kan valfri webbplats på internet bädda in dina produktfoton, logotyper, skript och andra filer direkt från din server — “hotlänkning”. Varje besökare på deras sida laddar ned filen från dig, på din bandbreddsfaktura, med din tillgång som visas i ett sammanhang du aldrig godkände. CORP satt till “same-origin” hindrar utomstående webbplatser från att bädda in dina resurser.
-
En diskret dataläckningsväg för avancerade webbläsarattacker. Samma cross-origin-inbäddning som möjliggör hotlänkning är också en av de vägar som sofistikerade, sidokanals webbläsarattacker (Spectre-familjen) använder för att läsa data de inte borde. COOP och CORP tillsammans stänger den vägen på webbläsarnivå. För de flesta småföretag är det bälte-och-hängslen, men det är gratis bälte-och-hängslen.
-
Ett självförsakat driftstopp från fel huvud. Det avancerade, COEP, kräver att varje resurs din webbplats laddar uttryckligen väljer att delta. Slå på det utan att testa och din analys, webbteckensnitt, inbäddade kartor, bokningswidgets och tredjepartsskript kan alla sluta ladda — för ingen av dem ombads att delta. Det här är det enda sättet dessa huvuden faktiskt kan skada dig, och det är helt undvikbart: aktivera inte COEP utan att testa.
-
En missad enkel signal till noggranna köpare. När en potentiell kunds IT-team skannar dina huvuden innan de skriver på är det att hitta modern cross-origin-härdning på plats en liten men verklig “de här personerna tar säkerhet på allvar”-signal. Det vinner inte en affär på egen hand — men det är gratis att ha på rätt sida av det liggarbladet.
Vad var och en faktiskt är
COOP — Cross-Origin-Opener-Policy (säker, rekommenderad)
När en annan webbplats öppnar din med ett popup eller window.open kan de två fönstren normalt behålla en referens till varandra. Den länken kan missbrukas: öppnaren kan manipulera eller omdirigera ditt fönster, läsa fragment av dess URL och iscensätta övertygande nätfiske med din riktiga domän. COOP: same-origin bryter den relationen — ditt fönster blir isolerat från allt som öppnade det över ursprung. Normal surfning, dina egna interna länkar och vanlig navigering påverkas inte alls.
Vad “bra” ser ut som: Cross-Origin-Opener-Policy: same-origin.
CORP — Cross-Origin-Resource-Policy (säker, rekommenderad)
Som standard kan dina bilder, skript och andra filer bäddas in av vilken webbplats som helst var som helst. CORP: same-origin berättar för webbläsare att vägra cross-origin-inbäddning av dina resurser — så andra webbplatser inte kan hotlänka dina tillgångar eller dra in dem i sina sidor. Din egna webbplats laddar fortfarande sina egna resurser precis som förut; bara utomstående webbplatser blockeras.
Vad “bra” ser ut som: Cross-Origin-Resource-Policy: same-origin. (Om du avsiktligt publicerar tillgångar för andra att bädda in — en offentlig logotyp, ett öppet API — kan din utvecklare mildra detta på just de svaren.)
COEP — Cross-Origin-Embedder-Policy (avancerat, lämna vanligtvis av)
COEP slutför “cross-origin-isolation”: kombinerat med COOP kräver det att varje resurs din sida laddar uttryckligen väljer att delta (via CORS eller CORP). Gjort rätt låser detta upp vissa kraftfulla webbläsarfunktioner (som SharedArrayBuffer) och lägger till ett annat lager mot Spectre-klassen attacker. Men eftersom det kräver deltagande från allt du laddar, bryter det lätt tredjepartsverktyg — analys, teckensnitt, inbäddade widgets — som inte byggdes för att delta. De flesta webbplatser behöver inte de funktioner det låser upp och bör inte bära risken för avbrott.
Vad “bra” ser ut som: för den sällsynta webbplats som behöver det, Cross-Origin-Embedder-Policy: credentialless — det säkrare värdet, mindre troligt att bryta externa resurser än require-corp. För alla andra är frånvaro bra, och vår rapport straffar dig inte för det.
Så här åtgärdar du det (gratis, ~15 minuter)
Lämna det här till din IT-person eller webbutvecklare — åtgärden är gratis. Att lägga till COOP och CORP är ett par engradsinställningar på din server eller CDN; det finns ingen licens och ingen löpande kostnad. Den enda instruktionen till ägaren är: gör de två säkra, och aktivera inte COEP utan att testa.
Det är svarshuvuden, satta var din webbplats svar produceras — enklast på din CDN (t.ex. Cloudflare) om du har en, annars i din webbserverkonfiguration.
De två säkra huvuden (rekommenderade för alla)
Cloudflare — Regler → Omvandlingsregler → Ändra svarshuvud → Sätt:
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"
Dessa är säkra att lägga till och kommer inte att bryta normal funktionalitet. Efter driftsättning, ladda om ett par sidor och bekräfta att webbplatsen beter sig precis som förut (det bör den).
Det avancerade huvudet (bara om du specifikt behöver det)
Aktivera inte det här utan att testa i staging först. COEP kan bryta analys, teckensnitt och inbäddade widgets.
Cloudflare: Omvandlingsregler → Sätt Cross-Origin-Embedder-Policy = credentialless.
Nginx:
add_header Cross-Origin-Embedder-Policy "credentialless" always;
Använd credentialless snarare än require-corp — det är mindre troligt att bryta externa resurser. Testa noggrant i staging; titta på om något tredjepartsskript, teckensnitt eller inbäddning slutar ladda. Om något bryter och du faktiskt inte behöver de funktioner COEP låser upp, ta helt enkelt bort huvudet — det finns ingen avgift för att inte ha det.
Plattformsnoteringar
- Google Workspace / Microsoft 365: dessa driver din e-post, inte din webbplats, så det finns ingenting att sätta här. Dessa huvuden tillhör det som hostar din webbplats (din CDN, värd eller server).
- Vanliga hanterade värdar / webbplatsbyggare (Wix, Squarespace, Shopify m.fl.): anpassade svarshuvuden kan inte vara konfigurerbara på lägre planer. Om du inte kan lägga till dem är det bra — de är informativa och påverkar inte ditt betyg. Att placera din webbplats bakom en CDN som Cloudflare är det vanliga sättet att få huvudkontroll.
- WordPress på din egna hosting: sätt dem i din webbserverkonfiguration (Nginx/Apache ovan) eller via din CDN, inte i ett plugin om möjligt — server/CDN-nivå är renare och gäller för varje svar.
Vanliga misstag
- Aktivera COEP “för att vara noggrann” och bryta webbplatsen. Det här är det stora felet. COEP kräver deltagande från allt du laddar; slå på det utan att testa och din analys, teckensnitt och inbäddningar kan försvinna. Om du inte behöver de webbläsarfunktioner det låser upp, sätt det inte.
- Behandla de här som brådskande för att en skanner nämnde dem. De är informativa. De betygsatta webbhuvudena (HTTPS, HSTS, CSP, clickjacking, MIME-sniffning) kommer först — åtgärda de innan du spenderar någon energi här.
- Sätta CORP för strikt när du faktiskt publicerar inbäddbara tillgångar. Om du avsiktligt serverar en logotyp, ett märke eller ett API för andra webbplatser att använda, kommer en blankett
same-originCORP att blockera dem. Mildra det på just de svaren snarare än att överge huvudet överallt. - Lägga till huvudet på sida/app-nivå och missa några svar. Sätt dem på server- eller CDN-nivå så att de gäller för varje svar (bilder, skript, API-endpoints), inte bara HTML-sidor.
- Förväxla dessa med SSL-hänglåset. HTTPS krypterar anslutningen; dessa styr cross-site-interaktion. De är orelaterade, och du vill ha båda.
En notering om betyg
För att vara helt tydlig: ingen av dessa tre kontroller påverkar ditt betyg. De är registrerade i vår metodik som informativa, med noll poäng, och en saknad kostar dig aldrig något. Vi lyfter fram dem för att de två säkra är billiga, genuina förbättringar och för att det är användbart att se hela bilden — inte för att det finns ett nummer att försvara. Om du inte gör något här är ditt betyg exakt detsamma. Om du lägger till COOP och CORP har du stängt ett par riktiga (om än nischade) gap gratis. Det är rätt sätt att tänka på den här sidan: valfri polering, med en tydligt märkt fälla att undvika.
Vanliga frågor
De här påverkar inte mitt betyg — ska jag ens bry mig?
Två av dem, ja; en troligtvis inte. COOP och CORP är gratis, tar minuter och bryter inte din webbplats — de stänger riktiga (om än nischade) attackvägar, så de är värda att göra som billig hygien. COEP är avancerat och kan bryta tredjepartsverktyg, så de flesta företag bör låta det vara om de inte specifikt behöver de webbläsarfunktioner det låser upp. Ingen av de tre ändrar ditt betyg åt något håll, så det finns ingen brådska — behandla de två säkra som en ordningsam städning nästa gång din utvecklare är inne på webbplatsen.
Jag är inte teknisk — är det här något jag måste agera på?
Inte personligen, och inte brådskande. Eftersom de är informativa händer inget dåligt med ditt betyg om du hoppar över dem. Om du vill lägga till de två säkra, ge avsnittet 'Så här åtgärdar du det' till den som hanterar din webbplats eller CDN — det är ett par engradsinställningar och åtgärden är gratis. Det enda att flagga uttryckligen är COEP: berätta för dem att inte slå på det utan att testa, för det kan bryta analys och inbäddade widgets.
Vad är skillnaden mellan de här och huvuden som faktiskt påverkar mitt betyg?
De betygsatta webbsäkerhetshuvudena — HTTPS-omdirigering, HSTS, Content-Security-Policy, clickjacking-skydd (X-Frame-Options) och MIME-sniffningsskydd — försvarar mot vanliga, allmänt utnyttjade attacker, så att sakna dem kostar poäng. De tre på den här sidan (COOP, CORP, COEP) är nyare, mer specialiserade webbläsarisolationskontroller. De är god praxis men ännu inte grundläggande förväntning, så vi rapporterar dem utan att betygsätta dem. Gör de betygsatta först; de här är polering ovanpå.
Kommer att lägga till COOP eller CORP bryta min webbplats eller mina partners integrationer?
De rekommenderade inställningarna (båda 'same-origin') är utformade för att vara säkra. COOP klipper bara länken till fönster din webbplats öppnar i popups — normal surfning, dina egna sidor och vanliga länkar påverkas inte alls. CORP hindrar bara *andra* webbplatser från att bädda in dina bilder och skript; din egna webbplats laddar sina egna resurser precis som förut. Om du faktiskt serverar tillgångar (som en offentlig logotyp eller ett API) som andra webbplatser är tänkta att bädda in, kan din utvecklare använda en mer tillåtande inställning på just de svaren. Det som verkligen riskerar att gå sönder är COEP — håll det av om det inte testats.
Vad kostar 'hotlänkning' mig egentligen?
När en annan webbplats bäddar in din bild eller ditt skript direkt från din server istället för att hålla sin egna kopia, laddar varje besökare på deras sida ned det från dig — på din bandbreddsfaktura, och visar din tillgång i ett sammanhang du aldrig godkände. För ett litet företag är det sällan katastrofalt, men det är gratis pengar ut genom dörren, och CORP ('same-origin') stoppar det på webbläsarnivå. Det stänger också en subtil dataläckningsväg som avancerade (Spectre-klassen) webbläsarattacker förlitar sig på.
Vad ser 'bra' ut som för vart och ett av dessa?
COOP: ett Cross-Origin-Opener-Policy-huvud satt till 'same-origin'. CORP: ett Cross-Origin-Resource-Policy-huvud satt till 'same-origin'. COEP: ett Cross-Origin-Embedder-Policy-huvud — och om du sätter det alls är 'credentialless' det säkrare värdet jämfört med 'require-corp'. Vår rapport noterar helt enkelt om vart och ett finns och vad det är satt till; den straffar dig aldrig för ett saknat. Sikta på COOP och CORP på plats; lämna COEP frånvarande om du inte har testat det.