Defaults.Exposed › Opravy › Hlavičky cross-origin izolácie (COOP / CORP / COEP)
Ako opraviť Hlavičky cross-origin izolácie (COOP / CORP / COEP)
Tri voliteľné inštrukcie prehliadača, ktoré kontrolujú, ako iné webové stránky môžu interagovať s vašou — otváranie jej v popupoch, vkladanie jej obrázkov a skriptov alebo sťahovanie jej zdrojov do ich vlastných stránok. Sú to moderné posilnenia, nie nevyhnutné základy, a v našom hodnotení sú informatívne: ich absencia neznižuje vaše hodnotenie. Ale dve bezpečné uzatvárajú tichú phishingovú medzeru a krádež šírky pásma, a opatrný IT tím kupujúceho si všimne, keď sú prítomné.
Podstata pre vaše podnikanie: Dve z týchto troch hlavičiek uzatvárajú sofistikovaný popup-phishing a zastavujú iné stránky od hotlinkovania vašich obrázkov a skriptov (čo vás stojí šírku pásma a môže unikať dáta). Sú zadarmo, vývojárovi trvajú asi 15 minút a nič nepoškodia. Tretia je pokročilá a môže poškodiť analytiku, písma a vložené prvky — väčšina firiem by ju mala nechať vypnutú. Žiadna z nich neovplyvní vaše hodnotenie, preto ich považujte za leštenie, nie paniku: urobte tie dve bezpečné, preskočte riskantnú, pokiaľ ju výslovne nepotrebujete.
Čo vás to môže stáť
- Podvodník otvorí váš skutočný web vo vyskakovacom okne a ponechá si nad ním vzdialenú kontrolu — ticho presmerujúc vášho zákazníka na falošné prihlásenie v momente, keď sa odvrátia. Bezpečná hlavička (COOP) preruší toto kontrolné spojenie úplne.
- Iné webové stránky vkladajú vaše fotky produktov, logá a skripty priamo z vášho servera (hotlinking) — vy platíte za šírku pásma zakaždým, keď ich návštevníci načítajú stránku, a vaše materiály sa zobrazujú na stránkach, ktoré by ste nikdy neschválili.
- IT tím potenciálneho zákazníka spustí sken hlavičiek pred podpisom a uvidí, že ste pridali moderné cross-origin posilnenie — malý signál, ale zaradí vás do stĺpca 'berú to vážne' namiesto 'holé minimum'.
- Vývojár, snaží sa byť dôkladný, zapne pokročilú izolačnú hlavičku (COEP) bez testovania — a cez noc poruší vašu Google Analytics, webové písma a vložený rezervačný widget. Vedieť, ktorá hlavička je bezpečná a ktorá riziková, zabraňuje self-inflicted výpadku.
- Kontrolný zoznam audítora zmieňuje cross-origin izoláciu; radšej by ste ukázali 'prítomné a správne' na tých dvoch bezpečných, ako vysvetľovať, prečo tam nie je nič.
Prečo na tom záleží. Toto sú výhľadové hlavičky posilňujúce prehliadač. V našej metodike sú všetky tri informatívne — sú zaregistrované s nulou bodov a nikdy nepohnú vaším hodnotením — pretože sú to pokročilé kontroly, bez ktorých môže stránka legitímne fungovať, a jedna z nich môže uškodiť, ak je nesprávne aplikovaná. Reportujeme o nich, aby ste videli, kde stojíte. Tie dve bezpečné (COOP a CORP) skutočne stojí za pridanie: zadarmo, rýchlo a uzatvárajú skutočné medzery popup-phishingu a krádeže zdrojov bez toho, aby niečo poškodili.
Čo to je, v jednoduchých slovách
Keď niekto navštívi váš web, ich prehliadač nenačíta vaše stránky v izolácii — tiež rozhoduje, ako iné webové stránky môžu interagovať s vašou. Môže iná stránka otvoriť vašu stránku vo vyskakovacom okne a udržiavať si ju? Môže iná stránka načítať vaše obrázky a skripty do svojich vlastných stránok? Môže vaša vlastná stránka bezpečne používať určité výkonné, uzamknuté funkcie prehliadača?
Tieto tri hlavičky sú krátke, neviditeľné inštrukcie, ktoré váš web posiela prehliadaču každého návštevníka a odpovedajú presne na tieto otázky. Sú známe podľa svojich iniciálov:
- COOP — Cross-Origin-Opener-Policy. Kontroluje, či iné stránky, ktoré otvoria vašu vo vyskakovacom okne, si môžu udržiavať vzdialenú kontrolu nad ním.
- CORP — Cross-Origin-Resource-Policy. Kontroluje, či iné stránky môžu vkladať vaše obrázky, skripty a iné súbory do svojich vlastných stránok.
- COEP — Cross-Origin-Embedder-Policy. Pokročilá kontrola, ktorá v kombinácii s COOP “izoluje” vašu stránku, aby mohla bezpečne používať určité výkonné funkcie prehliadača.
Dve z nich (COOP a CORP) sú bezpečné na pridanie a skutočne užitočné. Tretia (COEP) je pokročilá a môže poškodiť veci, ak je zapnutá neopatrne.
Najdôležitejšia vec, ktorú treba vedieť vopred: v našom hodnotení sú všetky tri informatívne. Neovplyvňujú vaše hodnotenie. Chýbajúca vás nestojí nič. Reportujeme o nich, aby ste videli, kde stojíte a mohli si upratať ľahké výhry — nie preto, aby ste panikárili kvôli číslu.
Čo vás to môže stáť
Toto sú niche riziká, nie titulkové — ale sú skutočné a opravy sú zadarmo.
-
Popup phishing, ktorý si zachováva vzdialenú kontrolu nad vaším skutočným webom. Bez COOP môže stránka podvodníka otvoriť váš skutočný web vo vyskakovacom okne a udržiavať živú referenciu na neho. Kým pozornosť vášho zákazníka je na stránke podvodníka, útočník môže presmerovať tento popup — váša skutočná doména v adresnom riadku — na falošné prihlásenie alebo platobný ekrán v presnom momente, keď sa zákazník obráti späť. COOP nastavené na “same-origin” preruší toto kontrolné spojenie, takže popup nemôže byť manipulovaný.
-
Iné stránky kradnúce vašu šírku pásma (a umiestňujúce vaše materiály tam, kam nechcete). Bez CORP môže akákoľvek webová stránka na internete vkladať vaše fotky produktov, logá, skripty a iné súbory priamo z vášho servera — “hotlinking.” Každý návštevník ich stránky stiahne súbor od vás, na vašom účte za šírku pásma, s vaším materiálom zobrazujúcim sa v kontexte, ktorý ste nikdy neschválili. CORP nastavené na “same-origin” zastaví externé stránky od vkladania vašich zdrojov.
-
Tichá cesta úniku dát pre pokročilé útoky prehliadača. To isté cross-origin vkladanie, ktoré umožňuje hotlinking, je tiež jednou z ciest, ktoré sofistikované, bočno-kanálové útoky prehliadača (Spectre rodina) používajú na čítanie dát, ktoré by nemali. COOP a CORP spolu uzatvoria túto cestu na úrovni prehliadača. Pre väčšinu malých firiem je to opasok aj šle, ale je to zadarmo.
-
Self-inflicted výpadok z nesprávnej hlavičky. Pokročilá, COEP, požaduje, aby každý zdroj, ktorý vaša stránka načítava, explicitne súhlasil. Zapnite ju bez testovania a vaša analytika, webové písma, vložené mapy, rezervačné widgety a skripty tretích strán môžu všetky prestať načítavať — pretože žiadny z nich nebol požiadaný o súhlas. Toto je jediný spôsob, akým môžu tieto hlavičky skutočne ublížiť, a je to úplne vyhnuteľné: nezapínajte COEP bez testovania.
-
Premeškaný ľahký signál pre opatrných kupujúcich. Keď IT tím potenciálneho zákazníka skenuje vaše hlavičky pred podpisom, nájdenie moderného cross-origin posilnenia je malý, ale skutočný signál “títo ľudia berú bezpečnosť vážne”. Samo osebe to obchod nevyhrá — ale je zadarmo mať to na správnej strane toho záznamu.
Čo každá z nich v skutočnosti je
COOP — Cross-Origin-Opener-Policy (bezpečná, odporúčaná)
Keď iná webová stránka otvorí vašu pomocou popupu alebo window.open, oba okná môžu normálne udržiavať referenciu na druhé. Toto spojenie môže byť zneužité: otvárač môže manipulovať alebo presmerovať vaše okno, čítať fragmenty jeho URL a zinscenovať presvedčivý phishing pomocou vašej skutočnej domény. COOP: same-origin prerušuje tento vzťah — vaše okno sa stane izolovaným od čohokoľvek, čo ho otvorilo naprieč pôvodmi. Normálne prehliadanie, vaše vlastné interné odkazy a bežná navigácia nie sú nijako ovplyvnené.
Ako vyzerá ‘dobré’: Cross-Origin-Opener-Policy: same-origin.
CORP — Cross-Origin-Resource-Policy (bezpečná, odporúčaná)
Predvolene môžu vaše obrázky, skripty a iné súbory vkladať akékoľvek stránky kdekoľvek. CORP: same-origin hovorí prehliadačom, aby odmietli cross-origin vkladanie vašich zdrojov — takže iné stránky nemôžu hotlinkovať vaše materiály ani ich sťahovať do svojich stránok. Vaša vlastná stránka načítava vlastné zdroje presne ako predtým; blokované sú len externé stránky.
Ako vyzerá ‘dobré’: Cross-Origin-Resource-Policy: same-origin. (Ak zámerne publikujete materiály pre vkladanie inými — verejné logo, otvorené API — váš vývojár môže toto uvoľniť práve na tých konkrétnych odpovediach.)
COEP — Cross-Origin-Embedder-Policy (pokročilá, zvyčajne nechajte vypnutú)
COEP dokončuje “cross-origin izoláciu”: v kombinácii s COOP požaduje, aby každý zdroj, ktorý vaša stránka načítava, explicitne súhlasil (cez CORS alebo CORP). Správne urobené to odomyká určité výkonné funkcie prehliadača a pridáva ďalšiu vrstvu proti Spectre-class útokom. Ale pretože požaduje súhlas od všetkého, čo načítavate, ľahko poruší nástroje tretích strán — analytiku, písma, vložené widgety — ktoré neboli postavené na súhlas. Väčšina webov nepotrebuje funkcie, ktoré odomyká, a nemala by niesť riziko poruchy.
Ako vyzerá ‘dobré’:* pre vzácny web, ktorý to potrebuje, Cross-Origin-Embedder-Policy: credentialless — bezpečnejšia hodnota, menej pravdepodobné, že poruší externé zdroje ako require-corp. Pre všetkých ostatných chýbajúca je v poriadku a náš report vás za to nepotrestá.
Ako to opraviť (zadarmo, ~15 minút)
Odovzdajte to vášmu IT pracovníkovi alebo webovému vývojárovi — oprava je zadarmo. Pridanie COOP a CORP je pár jednoriadkových nastavení na vašom serveri alebo CDN; nie je žiadna licencia a žiadne priebežné náklady. Jedinou inštrukciou pre vlastníka je: urobte tie dve bezpečné a nezapínajte COEP bez testovania.
Toto sú hlavičky odpovede, nastavené tam, kde sa produkujú odpovede vašej stránky — najjednoduchšie na vašej CDN (napr. Cloudflare), ak ju máte, inak v konfigurácii webového servera.
Dve bezpečné hlavičky (odporúčané pre všetkých)
Cloudflare — Pravidlá → Transformovať pravidlá → Upraviť hlavičky odpovede → Nastaviť:
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"
Tieto sú bezpečné na pridanie a nepoškodia normálnu funkčnosť. Po nasadení načítajte niekoľko stránok a potvrďte, že stránka sa správa presne ako predtým (malo by to byť tak).
Pokročilá hlavička (len ak ju výslovne potrebujete)
Nezapínajte toto bez testovania v stagingu. COEP môže poškodiť analytiku, písma a vložené widgety.
Cloudflare: Transformovať pravidlá → Nastaviť Cross-Origin-Embedder-Policy = credentialless.
Nginx:
add_header Cross-Origin-Embedder-Policy "credentialless" always;
Použite credentialless namiesto require-corp — je menej pravdepodobné, že poruší externé zdroje. Testujte dôkladne v stagingu; dávajte pozor na akýkoľvek skript tretej strany, písmo alebo vložený prvok, ktorý prestane načítavať. Ak sa niečo poruší a vy skutočne nepotrebujete funkcie, ktoré COEP odomyká, jednoducho hlavičku odstráňte — za jej neprítomnosť nie je žiadna sankcia.
Bežné chyby
- Zapnutie COEP “aby to bolo dôkladné” a poruší sa stránka. Toto je to hlavné. COEP požaduje súhlas od všetkého, čo načítavate; zapnite ho bez testovania a vaša analytika, písma a vložené prvky môžu zmiznúť. Ak nepotrebujete funkcie prehliadača, ktoré odomyká, nenastavujte ho.
- Zaobchádzanie s nimi ako s urgentnými, pretože skener ich zmienil. Sú informatívne. Hodnotené webové hlavičky (HTTPS, HSTS, CSP, clickjacking, MIME-sniffing) idú prvé — pred výdajom akejkoľvek energie tu opravte tie.
- Nastavenie CORP príliš prísne, keď skutočne publikujete vkladateľné materiály. Ak zámerne slúžite logo, odznak alebo API pre iné stránky na použitie, blanketné CORP
same-originich zablokuje. Uvoľnite ho práve na tých odpovediach namiesto opustenia hlavičky všade. - Pridanie hlavičky na úrovni stránky/aplikácie a chýba niektoré odpovede. Nastavte ich na úrovni servera alebo CDN, aby sa aplikovali na každú odpoveď (obrázky, skripty, API endpointy), nielen na HTML stránky.
- Zamieňanie ich s SSL zámkom. HTTPS šifruje pripojenie; tieto kontrolujú cross-site interakciu. Nesúvisia a chcete oboje.
Poznámka k hodnoteniu
Aby sme boli úplne otvorení: žiadna z týchto troch kontrol neovplyvňuje vaše hodnotenie. Sú zaregistrované v našej metodike ako informatívne, s nulou bodov, a chýbajúca vás nikdy nič nestojí. Uvádzame ich, pretože tie dve bezpečné sú lacné, skutočné zlepšenia a pretože vidieť celý obraz je užitočné — nie preto, že existuje číslo, ktoré treba brániť. Ak tu nič neurobíte, vaše hodnotenie je presne rovnaké. Ak pridáte COOP a CORP, zadarmo ste uzatvorili pár skutočných (aj keď niche) medzier. Toto je správny spôsob, ako čítať túto stránku: voliteľné leštenie s jednou jasne označenou pascou, ktorej sa treba vyhnúť.
FAQ
Tieto neovplyvňujú moje hodnotenie — mám sa tým vôbec zaoberať?
Dve z nich áno; jedna pravdepodobne nie. COOP a CORP sú zadarmo, trvajú minúty a nepoškodia vašu stránku — uzatvárajú skutočné (aj keď niche) útočné cesty, takže sa oplatí ich urobiť ako lacnú hygienu. COEP je pokročilá a môže poškodiť nástroje tretích strán, takže väčšina firiem by ju mala nechať vypnutú, pokiaľ výslovne nepotrebujú funkcie prehliadača, ktoré odomyká. Žiadna z troch nezmení vaše skóre tak či tak, preto nie je urgentnosť — zaobchádzajte s tými dvoma bezpečnými ako s upratovaním nabudúce, keď bude váš vývojár na stránke.
Nie som technicky zdatný — je to niečo, čo musím riešiť?
Nie osobne a nie naliehavo. Keďže sú informatívne, ak ich preskočíte, nič zlé sa nestane vášmu hodnoteniu. Ak by ste chceli pridať tie dve bezpečné, odovzdajte sekciu 'Ako to opraviť' tomu, kto spravuje váš web alebo CDN — je to pár jednoriadkových nastavení a oprava je zadarmo. Jedinou, ktorú treba výslovne označiť, je COEP: povedzte im, aby ju nezapínali bez testovania, pretože môže poškodiť analytiku a vložené widgety.
Aký je rozdiel medzi týmito a hlavičkami, ktoré skutočne ovplyvňujú moje hodnotenie?
Hodnotené hlavičky webovej bezpečnosti — HTTPS presmerovanie, HSTS, Content Security Policy, ochrana pred clickjackingom (X-Frame-Options) a ochrana pred MIME-sniffingom — bránia bežným, široko využívaným útokom, takže ich absencia stojí body. Tri na tejto stránke (COOP, CORP, COEP) sú novšie, špecializovanejšie kontroly izolácie prehliadača. Sú dobrým zvykom, ale ešte nie sú základným očakávaním, preto ich reportujeme bez hodnotenia. Urobte najprv hodnotené; tieto sú leštením na vrchu.
Poškodí pridanie COOP alebo CORP moju webovú stránku alebo integrácie partnerov?
Odporúčané nastavenia (oboje 'same-origin') sú navrhnuté tak, aby boli bezpečné. COOP len preruší spojenie s oknami, ktoré vaša stránka otvára vo vyskakovacích oknách — normálne prehliadanie, vaše vlastné stránky a bežné odkazy nie sú nijako ovplyvnené. CORP len zastavuje *iné* stránky pred vkladaním vašich obrázkov a skriptov; vaša vlastná stránka načítava vlastné zdroje presne ako predtým. Ak skutočne slúžite aktíva (ako verejné logo alebo API), ktoré iné stránky majú vkladať, váš vývojár môže použiť permisívnejšie nastavenie práve na tieto konkrétne odpovede. Tou, ktorá skutočne riskuje poruchu, je COEP — nechajte túto vypnutú pokiaľ nebola testovaná.
Čo ma v skutočnosti stojí 'hotlinking'?
Keď iná stránka vkladá váš obrázok alebo skript priamo z vášho servera namiesto toho, aby hostila vlastnú kópiu, každý návštevník ich stránky ho stiahne od vás — na vašom účte za šírku pásma a zobrazuje váš materiál v kontexte, ktorý ste neschválili. Pre malú firmu je to zriedka katastrofálne, ale sú to zadarmo peniaze preč z dverí a CORP ('same-origin') to zastaví na úrovni prehliadača. Tiež uzatvára jemnú cestu úniku dát, na ktorú sa spolieha pokročilé (Spectre-class) útoky prehliadača.
Ako vyzerá 'dobré' nastavenie pre každú z nich?
COOP: hlavička Cross-Origin-Opener-Policy nastavená na 'same-origin'. CORP: hlavička Cross-Origin-Resource-Policy nastavená na 'same-origin'. COEP: hlavička Cross-Origin-Embedder-Policy — a ak ju vôbec nastavíte, 'credentialless' je bezpečnejšia hodnota ako 'require-corp'. Náš report jednoducho zaznamenáva, či je každá prítomná a na čo je nastavená; nikdy vás netrestá za chýbajúcu. Cieľte na prítomné COOP a CORP; nechajte COEP neprítomné, pokiaľ ste ho netestovali.