Defaults.Exposed

Defaults.ExposedOplossingen › Cross-origin-isolatieheaders (COOP / CORP / COEP)

Hoe je Cross-origin-isolatieheaders (COOP / CORP / COEP) oplost

Drie optionele browserinstructies die bepalen hoe andere websites met de uwe mogen omgaan — haar openen in pop-ups, haar afbeeldingen en scripts insluiten, of haar bronnen in hun eigen pagina's trekken. Het is moderne verharding, geen basale must-have, en op onze scoring zijn ze informatief: het ontbreken verlaagt uw cijfer niet. Maar de twee veilige sluiten een stil phishing- en bandbreedtediefstalgat, en het IT-team van een zorgvuldige koper merkt het op wanneer ze aanwezig zijn.

De kern voor je bedrijf: Twee van deze drie headers gooien geraffineerde pop-upphishing dicht en beletten andere sites uw afbeeldingen en scripts te hotlinken (wat bandbreedte kost en data kan lekken). Ze zijn gratis, kosten een ontwikkelaar zo'n 15 minuten, en breken niets. De derde is geavanceerd en kan analytics, lettertypen en embeds breken — de meeste bedrijven laten hem beter uit. Geen ervan raakt uw cijfer, dus behandel ze als afwerking, niet als paniek: doe de twee veilige, sla de riskante over tenzij u hem specifiek nodig heeft.

Wat dit je kan kosten

Waarom het ertoe doet. Dit zijn vooruitkijkende browserverhardingsheaders. In onze methodologie zijn alle drie informatief — ze zijn geregistreerd met nul punten en bewegen uw cijfer nooit — omdat het geavanceerde besturingen zijn waar een site legitiem zonder kan werken, en omdat een ervan schade kan doen bij verkeerd gebruik. We rapporteren erover zodat u kunt zien waar u staat. De twee veilige (COOP en CORP) zijn echt het toevoegen waard: gratis, snel, en ze sluiten reële pop-upphishing- en brondiefstalgaten zonder iets te breken.

Wat deze zijn, in gewone woorden

Wanneer iemand uw website bezoekt, laadt zijn browser uw pagina’s niet alleen geïsoleerd — hij beslist ook hoe andere websites met de uwe mogen omgaan. Mag een andere site uw site in een pop-up openen en die vasthouden? Mag een andere site uw afbeeldingen en scripts in zijn eigen pagina’s insluiten? Mag uw eigen site bepaalde krachtige, afgegrendelde browserfuncties veilig gebruiken?

Deze drie headers zijn korte, onzichtbare instructies die uw website naar de browser van elke bezoeker stuurt om precies die vragen te beantwoorden. Ze staan bekend onder hun initialen:

Twee ervan (COOP en CORP) zijn veilig toe te voegen en echt nuttig. De derde (COEP) is geavanceerd en kan dingen breken bij achteloos aanzetten.

Het belangrijkste om vooraf te weten: in onze scoring zijn alle drie informatief. Ze raken uw cijfer niet. Een ontbrekende kost u niets. We rapporteren erover zodat u kunt zien waar u staat en de makkelijke winsten kunt opruimen — niet zodat u panikeert over een getal.

Wat dit u kan kosten

Dit zijn nicherisico’s, geen koprisico’s — maar ze zijn reëel, en de oplossingen zijn gratis.

Wat elk feitelijk is

COOP — Cross-Origin-Opener-Policy (veilig, aanbevolen)

Wanneer een andere website de uwe opent via een pop-up of window.open, kunnen de twee vensters normaal een verwijzing naar elkaar houden. Die verbinding kan misbruikt worden: de opener kan uw venster manipuleren of omleiden, fragmenten van de URL lezen, en overtuigende phishing opzetten met uw echte domein. COOP: same-origin verbreekt die relatie — uw venster raakt geïsoleerd van alles wat het over origins heen opende. Normaal browsen, uw eigen interne links en gewone navigatie blijven volledig onaangeroerd.

Hoe „goed” eruitziet: Cross-Origin-Opener-Policy: same-origin.

CORP — Cross-Origin-Resource-Policy (veilig, aanbevolen)

Standaard kunnen uw afbeeldingen, scripts en andere bestanden door elke site overal worden ingesloten. CORP: same-origin zegt browsers cross-origin-insluiting van uw bronnen te weigeren — zodat andere sites uw assets niet kunnen hotlinken of in hun pagina’s trekken. Uw eigen site laadt zijn eigen bronnen precies als voorheen; alleen externe sites worden geblokkeerd.

Hoe „goed” eruitziet: Cross-Origin-Resource-Policy: same-origin. (Publiceert u bewust assets voor anderen om in te sluiten — een publiek logo, een open API — dan kan uw ontwikkelaar dit op die specifieke responses versoepelen.)

COEP — Cross-Origin-Embedder-Policy (geavanceerd, meestal uit laten)

COEP voltooit „cross-origin-isolatie”: gecombineerd met COOP vereist hij dat elke bron die uw pagina laadt zich expliciet aanmeldt (via CORS of CORP). Goed gedaan ontgrendelt dit bepaalde krachtige browserfuncties (zoals SharedArrayBuffer) en voegt een extra laag tegen Spectre-klasse-aanvallen toe. Maar omdat hij aanmelding eist van alles wat u laadt, breekt hij gemakkelijk tools van derden — analytics, lettertypen, ingesloten widgets — die niet gebouwd zijn om zich aan te melden. De meeste websites hebben de functies die hij ontgrendelt niet nodig en zouden het risico op breuk niet moeten dragen.

Hoe „goed” eruitziet: voor de zeldzame site die hem nodig heeft, Cross-Origin-Embedder-Policy: credentialless — de veiligere waarde, minder kans om externe bronnen te breken dan require-corp. Voor iedereen anders is afwezig prima, en ons rapport straft u er niet voor.

Hoe los je het op (gratis, ~15 minuten)

Geef dit aan uw IT’er of webontwikkelaar — de oplossing is gratis. COOP en CORP toevoegen zijn een paar instellingen van één regel op uw server of CDN; er is geen licentie en geen doorlopende kosten. De enige instructie voor de eigenaar is: doe de twee veilige, en zet COEP niet aan zonder testen.

Dit zijn response-headers, ingesteld waar de responses van uw site worden geproduceerd — het makkelijkst bij uw CDN (bijv. Cloudflare) als u dat heeft, anders in uw webserverconfig.

De twee veilige headers (aanbevolen voor iedereen)

Cloudflare — Rules → Transform Rules → Modify Response Headers → Set:

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"

Deze zijn veilig toe te voegen en breken geen normale functionaliteit. Herlaad na het uitrollen een paar pagina’s en bevestig dat de site zich precies als voorheen gedraagt (dat zou moeten).

De geavanceerde header (alleen als u hem specifiek nodig heeft)

Zet deze niet aan zonder eerst op staging te testen. COEP kan analytics, lettertypen en ingesloten widgets breken.

Cloudflare: Transform Rules → Set Cross-Origin-Embedder-Policy = credentialless.

Nginx:

add_header Cross-Origin-Embedder-Policy "credentialless" always;

Gebruik credentialless in plaats van require-corp — minder kans om externe bronnen te breken. Test grondig op staging; let op elk script, lettertype of embed van derden dat stopt met laden. Breekt er iets en heeft u de functies die COEP ontgrendelt niet echt nodig, verwijder dan simpelweg de header — er is geen straf voor het niet hebben ervan.

Platformnotities

Veelgemaakte fouten

Een noot over het cijfer

Om het volkomen duidelijk te stellen: geen van deze drie checks raakt uw cijfer. Ze zijn in onze methodologie geregistreerd als informatief, met nul punten, en een ontbrekende kost u nooit iets. We brengen ze naar voren omdat de twee veilige goedkope, echte verbeteringen zijn en omdat het hele plaatje zien nuttig is — niet omdat er een getal te verdedigen valt. Doet u hier niets, dan is uw cijfer precies hetzelfde. Voegt u COOP en CORP toe, dan heeft u een paar reële (zij het niche) gaten gratis gedicht. Dat is de juiste manier om over deze pagina te denken: optionele afwerking, met één duidelijk gemarkeerde valkuil om te vermijden.

Veelgestelde vragen

Deze raken mijn cijfer niet — moet ik er überhaupt aan beginnen?

Twee ervan, ja; één, waarschijnlijk niet. COOP en CORP zijn gratis, kosten minuten en breken uw site niet — ze sluiten reële (zij het niche) aanvalspaden, dus ze zijn de moeite waard als goedkope hygiëne. COEP is geavanceerd en kan tools van derden breken, dus de meeste bedrijven laten hem beter uit tenzij ze specifiek de browserfuncties nodig hebben die hij ontgrendelt. Geen van de drie verandert uw score, dus er is geen haast — behandel de twee veilige als een opruimklusje wanneer uw ontwikkelaar de volgende keer in de site is.

Ik ben niet technisch — moet ik hier iets mee?

Niet persoonlijk, en niet met spoed. Omdat deze informatief zijn, gebeurt er niets met uw cijfer als u ze overslaat. Wilt u de twee veilige toevoegen, geef dan het onderdeel „Hoe los je het op” aan wie uw website of CDN beheert — het zijn een paar instellingen van één regel en de oplossing is gratis. De enige om expliciet te markeren is COEP: zeg ze die niet aan te zetten zonder testen, want hij kan analytics en ingesloten widgets breken.

Wat is het verschil tussen deze en de headers die mijn cijfer WÉL raken?

De gescoorde websecurityheaders — HTTPS-omleiding, HSTS, Content-Security-Policy, clickjacking-bescherming (X-Frame-Options) en MIME-sniffing-bescherming — verdedigen tegen veelvoorkomende, breed misbruikte aanvallen, dus het ontbreken kost punten. De drie op deze pagina (COOP, CORP, COEP) zijn nieuwere, gespecialiseerdere browserisolatiebesturingen. Ze zijn goede praktijk maar nog geen basisverwachting, dus we rapporteren ze zonder ze te scoren. Doe eerst de gescoorde; deze zijn de afwerking daarbovenop.

Breekt COOP of CORP toevoegen mijn website of de integraties van mijn partners?

De aanbevolen instellingen (beide „same-origin”) zijn ontworpen om veilig te zijn. COOP verbreekt alleen de verbinding naar vensters die uw site in pop-ups opent — normaal browsen, uw eigen pagina's en gewone links blijven onaangeroerd. CORP belet alleen *andere* sites uw afbeeldingen en scripts in te sluiten; uw eigen site laadt zijn eigen bronnen precies als voorheen. Als u werkelijk assets serveert (zoals een publiek logo of een API) die andere sites mogen insluiten, kan uw ontwikkelaar een toegeeflijker instelling gebruiken op die specifieke responses. Degene die echt risico op breuk loopt is COEP — laat die uit tenzij getest.

Wat kost „hotlinking” me echt?

Wanneer een andere site uw afbeelding of script rechtstreeks vanaf uw server insluit in plaats van een eigen kopie te hosten, downloadt elke bezoeker van hun pagina het van u — op uw bandbreedterekening, en met uw asset getoond in een context die u niet goedkeurde. Voor een klein bedrijf is het zelden catastrofaal, maar het is gratis geld dat de deur uitgaat, en CORP („same-origin”) stopt het op browserniveau. Het sluit ook een subtiel datalekpad dat geavanceerde (Spectre-klasse) browseraanvallen gebruiken.

Hoe ziet „goed” eruit voor elk van deze?

COOP: een Cross-Origin-Opener-Policy-header op „same-origin”. CORP: een Cross-Origin-Resource-Policy-header op „same-origin”. COEP: een Cross-Origin-Embedder-Policy-header — en als u hem überhaupt instelt, is „credentialless” de veiligere waarde dan „require-corp”. Ons rapport noteert simpelweg of elk aanwezig is en waarop hij staat; het straft u nooit voor een ontbrekende. Streef naar COOP en CORP aanwezig; laat COEP afwezig tenzij u hem getest heeft.