Defaults.Exposed › Taisymai › Tarpusavio kilmės izoliavimo antraštės (COOP / CORP / COEP)
Kaip ištaisyti Tarpusavio kilmės izoliavimo antraštės (COOP / CORP / COEP)
Trys neprivalomi naršyklės nurodymai, valdantys, kaip kitoms svetainėms leidžiama sąveikauti su jūsų svetaine – atidarant ją iššokančiuose languose, įterpiant jos paveikslėlius ir scenarijus ar traukiant jos išteklius į savo puslapius. Jie yra šiuolaikinis kietinimas, ne privaloma bazinė priemonė, ir mūsų vertinime jie yra informaciniai: jų trūkumas nemažina jūsų vertinimo. Bet dvi saugios uždaro tylų sukčiavimo ir pralaidumo vagystės atotrūkį, ir atsargus pirkėjo IT komanda pastebės, kai jie yra. Nemokamos, penkiolika minučių kūrėjui, ir nieko nesugadins.
Praktinė reikšmė jūsų verslui: Dvi iš šių trijų antraščių uždaro pažangius sukčiavimo ir sustabdo kitas svetaines nuo jūsų paveikslėlių ir scenarijų hotlinkinimo (kas kainuoja jums pralaidumą ir gali nutekinti duomenis). Jie nemokami, kūrėjui užtrunka apie 15 minučių, ir nieko nesugadins. Trečioji yra pažangi ir gali sulaužyti analitiką, šriftus ir įterpinius – dauguma verslų turėtų ją palikti išjungtą. Nė viena iš jų neveikia jūsų vertinimo, todėl traktuokite jas kaip poliravimą, ne paniką: padarykite dvi saugias, praleiskite rizikingą, nebent jums konkrečiai jos reikia.
Ką tai gali kainuoti
- Sukčius atidaro jūsų tikrą svetainę iššokančiame lange ir išlaiko nuotolinę kontrolę – tyliai nukreipdamas jūsų klientą į netikrą prisijungimą to momentu, kai jie nusigrįžia. Saugios antraštė (COOP) visiškai perkerta tą valdymo ryšį.
- Kitos svetainės tiesiogiai iš jūsų serverio įterpia jūsų produktų nuotraukas, logotipus ir scenarijus (hotlinkinimas) – kiekvieną kartą, kai jų lankytojai įkelia puslapį, jūs mokate už pralaidumą, ir jūsų turtas rodomas svetainėse, kurių niekada nepatvirtintumėte.
- Perspektyvos saugumo komanda prieš pasirašydama paleidžia antraščių nuskaitymą ir pamato, kad jūs pridėjote šiuolaikinį tarpusavio kilmės kietinimą – mažas signalas, bet jis patenka į 'jie rimtai vertina tai' stulpelį, o ne 'minimalus minimumo'.
- Kūrėjas, stengdamasis būti kruopščius, įjungia pažangią izoliavimo antraštę (COEP) neišbandęs – ir sulaužo jūsų Google Analytics, žiniatinklio šriftus ir įterptas rezervavimo valdiklį per naktį. Žinojimas, kuri antraštė yra saugi ir kuri yra rizikinga, neleidžia sau sukeltos gedimų.
- Auditoriaus kontrolinis sąrašas mini tarpusavio kilmės izoliavimą; verčiau parodyti 'esamą ir teisingą' dviem saugiems nei paaiškinti, kodėl ten nieko nėra.
Kodėl tai svarbu. Tai yra perspektyvos naršyklės kietinimo antraštės. Mūsų metodikoje visos trys yra informacinės – jos registruotos su nulio taškais ir niekada neperkelia jūsų vertinimo – nes jos yra pažangūs valdikliai, kuriuos svetainė gali teisėtai veikti be jų, ir vienas iš jų gali daryti žalą, jei blogai taikomas. Mes pranešame apie juos, kad galėtumėte pamatyti, kur stovite. Dvi saugios (COOP ir CORP) tikrai vertos pridėjimo: nemokamai, greitai, ir jos uždaro realius iššokančiojo sukčiavimo ir išteklių vagystės atotrūkius nieko nesugadinant.
Kas tai yra, paprastais žodžiais
Kai kas nors apsilanko jūsų svetainėje, jų naršyklė ne tik įkelia jūsų puslapius atskirai – ji taip pat nusprendžia, kaip kitoms svetainėms leidžiama sąveikauti su jūsų svetaine. Ar kita svetainė gali atidaryti jūsų svetainę iššokančiame lange ir išlaikyti ją? Ar kita svetainė gali pasiekti per jūsų paveikslėlius ir scenarijus savo puslapiuose? Ar jūsų pati svetainė saugiai gali naudoti tam tikras galingas, užrakintas naršyklės funkcijas?
Šios trys antraštės yra trumpi, nematomi nurodymai, kuriuos jūsų svetainė siunčia kiekvieno lankytojo naršyklei, atsakydama tiksliai į tuos klausimus. Jie žinomi savo inicialais:
- COOP – Cross-Origin-Opener-Policy. Valdo, ar kitos svetainės, atidariusios jūsų svetainę iššokančiame lange, gali išlaikyti jo nuotolinę kontrolę.
- CORP – Cross-Origin-Resource-Policy. Valdo, ar kitoms svetainėms leidžiama įterpti jūsų paveikslėlius, scenarijus ir kitus failus savo puslapiuose.
- COEP – Cross-Origin-Embedder-Policy. Pažangi valdiklis, kuris kartu su COOP „izoliuoja” jūsų puslapį, kad jis galėtų saugiai naudoti tam tikras galingas naršyklės funkcijas.
Du iš jų (COOP ir CORP) yra saugūs pridėti ir tikrai naudingi. Trečioji (COEP) yra pažangi ir gali sulaužyti dalykus, jei aplaidžiai įjungta.
Svarbiausia iš anksto žinoti: mūsų vertinime visos trys yra informacinės. Jos neveikia jūsų vertinimo. Trūkstama niekam jums nieko nekainuoja. Pranešame apie juos, kad galėtumėte pamatyti, kur stovite ir sutvarkyti lengvus laimėjimus – ne kad jus paniktumėte dėl skaičiaus.
Kiek tai gali jus kainuoti
Tai yra nišinės rizikos, ne antraštinės – bet jos yra realios, ir pataisymai yra nemokami.
-
Iššokančiojo sukčiavimas, kuris išlaiko nuotolinę kontrolę jūsų tikros svetainės. Be COOP, sukčiaus puslapis gali atidaryti jūsų tikrą svetainę iššokančiame lange ir laikyti gyvą nuorodą į ją. Kol jūsų kliento dėmesys yra ant sukčiaus puslapio, užpuolikas gali nukreipti tą iššokantįjį langą – jūsų tikrą domeną adreso juostoje – į netikrą prisijungimą ar mokėjimo ekraną tiksliai tuo momentu, kai klientas grįžta prie jo. COOP nustatytas į „same-origin” perkerta tą valdymo ryšį, todėl iššokantysis langas negali būti lėlėmis valdomas.
-
Kitos svetainės vagia jūsų pralaidumą (ir deda jūsų turtą ten, kur jo nenorite). Be CORP, bet kuri internetinė svetainė gali tiesiogiai iš jūsų serverio įterpti jūsų produktų nuotraukas, logotipus, scenarijus ir kitus failus – „hotlinkinimas”. Kiekvienas jų puslapio lankytojas atsisiunčia failą iš jūsų, jūsų pralaidumo sąskaitoje, jūsų turtui rodantis kontekste, kurio niekada nepatvirtinote. CORP nustatytas į „same-origin” sustabdo išorines svetaines nuo jūsų išteklių įterpimo.
-
Tylus duomenų nutekėjimo kelias pažangių naršyklės atakų. Tas pats tarpusavio kilmės įterpimas, kuris įgalina hotlinkinimą, taip pat yra vienas kelių, kuriais rafinuotos, šono kanalo naršyklės atakos (Spectre šeima) naudoja skaityti duomenis, kurių neturėtų. COOP ir CORP kartu uždaro tą kelią naršyklės lygiu. Daugumai mažų verslų tai yra diržo ir petnešų, bet tai yra nemokamas diržas ir petnešos.
-
Sau sukeltas gedimas iš netinkamos antraštės. Pažangiajai COEP reikalauja, kad kiekvienas išteklius, kurį įkelia jūsų svetainė, aiškiai pasirašytų. Įjunkite ją be išbandymo ir jūsų analitika, žiniatinklio šriftai, įterpti žemėlapiai, rezervavimo valdikliai ir trečiosios šalies scenarijai visi gali nustoti įkelti – nes nė vienas jų nebuvo paprašytas pasirašyti. Tai yra vienas būdas, kuriuo šios antraštės gali iš tikrųjų jums pakenkti, ir tai yra visiškai išvengiama: neįjunkite COEP be išbandymo.
-
Praleistas lengvas signalas atsargiems pirkėjams. Kai perspektyvos IT komanda nuskaito jūsų antraštes prieš pasirašydama, šiuolaikinio tarpusavio kilmės kietinimo radimas savo vietoje yra mažas, bet realus „šie žmonės rimtai vertina saugumą” signalas. Jis neužlaimės sandorio vienas pats – bet tai yra nemokama turėti tinkamoje tos sąskaitos pusėje.
Ką kiekviena iš tikrųjų yra
COOP – Cross-Origin-Opener-Policy (saugu, rekomenduojama)
Kai kita svetainė atidaro jūsų svetainę naudodama iššokantįjį langą ar window.open, du langai paprastai gali išlaikyti nuorodą vienas į kitą. Tas ryšys gali būti piktnaudžiaujamas: atidarytojas gali manipuliuoti ar nukreipti jūsų langą, skaityti URL fragmentus ir patirti įtikinamus sukčiavimus naudodamas jūsų tikrą domeną. COOP: same-origin palaužia tą ryšį – jūsų langas tampa izoliuotas nuo bet ko, kas jį atidarė per kilmes. Įprastas naršymas, jūsų pačios vidinės nuorodos ir įprastas naršymas yra visiškai nepaveikti.
Kaip atrodo „gerai”: Cross-Origin-Opener-Policy: same-origin.
CORP – Cross-Origin-Resource-Policy (saugu, rekomenduojama)
Pagal numatytąjį, jūsų paveikslėliai, scenarijai ir kiti failai gali būti įterpiami bet kurios svetainės bet kur. CORP: same-origin liepia naršyklėms atsisakyti tarpusavio kilmės jūsų išteklių įterpimo – todėl kitos svetainės negali hotlinkuoti jūsų turto ar juos traukti į savo puslapius. Jūsų pačios svetainė vis tiek įkelia savo išteklius tiksliai kaip anksčiau; tik išorinės svetainės yra blokuojamos.
Kaip atrodo „gerai”: Cross-Origin-Resource-Policy: same-origin. (Jei tyčia skelbiate turtą kitiems įterpti – viešas logotipas, atvira API – jūsų kūrėjas gali susilpninti jį tiem konkretiems atsakymams.)
COEP – Cross-Origin-Embedder-Policy (pažangi, paprastai palikite išjungtą)
COEP užbaigia „tarpusavio kilmės izoliavimą”: kartu su COOP, ji reikalauja, kad kiekvienas išteklius, kurį įkelia jūsų puslapis, aiškiai pasirašytų (per CORS ar CORP). Atliktas teisingai, tai atrakiną tam tikras galingas naršyklės funkcijas (kaip SharedArrayBuffer) ir prideda kitą sluoksnį prieš Spectre klasės atakas. Bet kadangi ji reikalauja pasirašymo iš visko, ką įkeliate, ji lengvai sulaužo trečiosios šalies įrankius – analitiką, šriftus, įterptus valdiklius – kurie nebuvo sukurti pasirašyti. Dauguma svetainių nereikia funkcijų, kurias ji atrakiną, ir neturėtų neštis sulaužymo rizikos.
Kaip atrodo „gerai”: retoms svetainėms, kurioms tai reikia, Cross-Origin-Embedder-Policy: credentialless – saugesnė reikšmė, mažiau tikėtina sulaužyti išorinius išteklius nei require-corp. Visiems kitiems nebuvimas yra gerai, ir mūsų ataskaita jūsų nebaudžia dėl jo.
Kaip tai ištaisyti (nemokama, ~15 minučių)
Perduokite tai savo IT asmeniui ar žiniatinklio kūrėjui – pataisymas yra nemokamas. COOP ir CORP pridėjimas yra keli vienos eilutės nustatymai jūsų serveryje ar CDN; nėra licencijos ir nėra nuolatinių išlaidų. Vienintelis nurodymas savininkui yra: atlikite dvi saugias, ir neįjunkite COEP be išbandymo.
Tai yra atsakymo antraštės, nustatytos ten, kur gaminami jūsų svetainės atsakymai – lengviausiai jūsų CDN (pvz., Cloudflare), jei turite, kitaip jūsų žiniatinklio serverio konfigūracijoje.
Dvi saugios antraštės (rekomenduojama visiems)
Cloudflare – Taisyklės → Transformavimo taisyklės → Modifikuoti atsakymo antraštes → Nustatykite:
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"
Jas pridėti yra saugu ir nesugadins įprastos funkcionalumo. Po diegimo perkraukite kelis puslapius ir patvirtinkite, kad svetainė elgiasi tiksliai kaip anksčiau (turėtų).
Pažangi antraštė (tik jei jums konkrečiai jos reikia)
Neįjunkite jos be išbandymo stadijoje pirmiau. COEP gali sulaužyti analitiką, šriftus ir įterptus valdiklius.
Cloudflare: Transformavimo taisyklės → Nustatykite Cross-Origin-Embedder-Policy = credentialless.
Nginx:
add_header Cross-Origin-Embedder-Policy "credentialless" always;
Naudokite credentialless, o ne require-corp – tai mažiau tikėtina sulaužyti išorinius išteklius. Išbandykite kruopščiai stadijoje; žiūrėkite, ar kokie trečiosios šalies scenarijaus, šrifto ar įterpinio nustoja įkelti. Jei kažkas sulaužo ir jums iš tikrųjų nereikia funkcijų, kurias atrakiną COEP, tiesiog pašalinkite antraštę – nėra bausmės, jos neturint.
Platformos pastabos
- Google Workspace / Microsoft 365: jos valdo jūsų el. paštą, ne jūsų svetainę, todėl čia nereikia nieko nustatyti. Šios antraštės priklauso tam, kas prieglobsta jūsų svetainę (jūsų CDN, priegloba ar serveris).
- Bendros valdomos prieglobos / svetainių kūrėjai (Wix, Squarespace, Shopify ir pan.): pasirinktinės atsakymo antraštės gali nebūti konfigūruojamos žemesniais planais. Jei negalite jų pridėti, tai yra gerai – jie yra informaciniai ir neveikia jūsų vertinimo. Svetainės padėjimas į CDN kaip Cloudflare yra įprastas būdas įgyti antraščių kontrolę.
- WordPress ant savo prieglobos: nustatykite juos savo žiniatinklio serverio konfigūracijoje (Nginx/Apache aukščiau) ar per savo CDN, ne priede, kur įmanoma – serverio/CDN lygis yra švaresnis ir taikomas kiekvienam atsakymui.
Dažnos klaidos
- COEP įjungimas „būti kruopštus” ir svetainės sulaužymas. Tai yra didelis dalykas. COEP reikalauja pasirašymo iš visko, ką įkeliate; apverskite jį be išbandymo ir jūsų analitika, šriftai ir įterpiniai gali išnykti. Jei nereikia naršyklės funkcijų, kurias jis atrakiną, jo nenustatykite.
- Traktavimas kaip skubaus, nes nuskaitytuvas juos paminėjo. Jie yra informaciniai. Vertinamos žiniatinklio antraštės (HTTPS, HSTS, CSP, paspaudimų pagrobimas, MIME tipo uostymas) yra pirmos – prieš leisdami bet kokią energiją čia, ištaisykite jas.
- CORP per griežtas nustatymas, kai iš tikrųjų skelbiate įterpiamą turtą. Jei tyčia tarnaujate logotipu, ženklu ar API kitoms svetainėms naudoti, blanketinis
same-originCORP juos blokuos. Susilpninkite jį tik tiem atsakymams, o ne atsisakykite antraštės visur. - Antraštės pridėjimas puslapio/programos lygiu ir kai kurių atsakymų praleidimas. Nustatykite juos serverio ar CDN lygiu, kad jie taikytųsi kiekvienam atsakymui (paveikslėliai, scenarijai, API galutiniai taškai), ne tik HTML puslapiams.
- Jų painiojimas su SSL spyna. HTTPS šifruoja ryšį; jie valdo tarpusavio svetainės sąveiką. Jie nesusiję, ir jums reikia abiejų.
Pastaba apie vertinimą
Kad būtų visiškai aišku: nė vienas iš šių trijų tikrinimų neveikia jūsų vertinimo. Jie yra registruoti mūsų metodikoje kaip informaciniai, su nulio taškais, ir trūkstamas niekad jums nieko nekainuoja. Mes juos pateikiame, nes dvi saugios yra pigūs, realūs patobulinimai ir todėl, kad viso vaizdo matymas yra naudingas – ne todėl, kad skaičius reikia ginti. Jei nieko čia nedarote, jūsų vertinimas yra tiksliai toks pats. Jei pridedate COOP ir CORP, uždarėte keletą realių (jei nišinių) atotrūkių nemokamai. Tai yra tinkamas būdas mąstyti apie šį puslapį: neprivalomas poliravimas, su vienu aiškiai pažymėtu spąstu, kurio reikia vengti.
DUK
Tai neveikia mano vertinimo – ar apskritai verta?
Dvi iš jų, taip; viena, tikriausiai ne. COOP ir CORP yra nemokamos, užtrunka minutes, ir nesulaužys jūsų svetainės – jos uždaro realius (jei nišinius) atakų kelius, todėl vertos atlikti kaip pigi higiena. COEP yra pažangi ir gali sulaužyti trečiosios šalies įrankius, todėl dauguma verslų turėtų ją palikti išjungtą, nebent jiems konkrečiai reikia jos atrakinamų naršyklės funkcijų. Nė viena iš trijų nekeičia jūsų rezultato bet kuriuo atveju, todėl nėra skubos – traktuokite dvi saugias kaip tvarkymąsi tą kitą kartą, kai jūsų kūrėjas svetainėje.
Aš nesu technikas – ar tai mane turiu vykdyti?
Ne asmeniškai, ir ne skubiai. Kadangi jie yra informaciniai, nieko blogo neatsitinka jūsų vertinimui, jei praleistumėte juos. Jei norėtumėte pridėti dvi saugias, perduokite 'Kaip tai ištaisyti' skyrių tam, kas valdo jūsų svetainę ar CDN – tai yra keli vienos eilutės nustatymai ir pataisymas yra nemokamas. Vienintelis, kurį reikia aiškiai pažymėti, yra COEP: pasakykite jiems jo neįjungti be išbandymo, nes jis gali sulaužyti analitiką ir įterptus valdiklius.
Koks skirtumas tarp šių ir antraščių, kurios VEIKIA mano vertinimą?
Vertinamos žiniatinklio saugumo antraštės – HTTPS peradresavimas, HSTS, Content-Security-Policy, apsauga nuo paspaudimų pagrobimo (X-Frame-Options) ir apsauga nuo MIME tipo uostymo – apsaugo nuo bendrų, plačiai išnaudojamų atakų, todėl jų trūkumas kainuoja taškų. Trys šiame puslapyje (COOP, CORP, COEP) yra naujesnė, specializuotesnė naršyklės izoliavimo valdikliai. Jie yra gera praktika, bet dar nėra bazinė lūkestis, todėl pranešame apie juos jų nevertinant. Pirmiausia atlikite įvertintus; jie yra poliravimas ant viršaus.
Ar COOP ar CORP pridėjimas sulaužys mano svetainę ar mano partnerių integracijas?
Rekomenduojami nustatymai (abu 'same-origin') skirti būti saugūs. COOP tik perkerta ryšį su langais, kuriuos jūsų svetainė atidaro iššokančiuose languose – įprastas naršymas, jūsų pačios puslapiai ir įprastos nuorodos yra nepaveiktos. CORP tik sustabdo *kitas* svetaines nuo jūsų paveikslėlių ir scenarijų įterpimo; jūsų pačios svetainė įkelia savo išteklius tiksliai kaip anksčiau. Jei iš tikrųjų tarniaujate turtą (kaip viešas logotipas ar API), kurį kitos svetainės turėtų įterpti, jūsų kūrėjas gali naudoti laidesnį nustatymą tiem konkretiems atsakymams. Tas, kuris tikrai rizikuoja sulaužymu, yra COEP – laikykite tą išjungtą, kol nebus išbandyta.
Ką 'hotlinkinimas' iš tikrųjų man kainuoja?
Kai kita svetainė tiesiogiai iš jūsų serverio įterpia jūsų paveikslėlį ar scenarijų, o ne prieglobos savo kopijos, kiekvienas jų puslapio lankytojas jį atsisiunčia iš jūsų – jūsų pralaidumo sąskaitoje, rodant jūsų turtą kontekste, kurio nepatvirtinote. Mažam verslui tai retai yra katastrofiškas, bet tai yra nemokami pinigai lauk pro duris, ir CORP ('same-origin') sustabdo jį naršyklės lygiu. Tai taip pat uždaro subtilų duomenų nutekėjimo kelią, kuriuo pažangios (Spectre klasės) naršyklės atakos remiasi.
Kaip atrodo 'gerai' kiekvienai iš jų?
COOP: Cross-Origin-Opener-Policy antraštė nustatyta į 'same-origin'. CORP: Cross-Origin-Resource-Policy antraštė nustatyta į 'same-origin'. COEP: Cross-Origin-Embedder-Policy antraštė – ir jei ją nustatote bet kuriai, 'credentialless' yra saugesnė reikšmė nei 'require-corp'. Mūsų ataskaita tiesiog pažymi, ar kiekviena yra ir ką ji nustatyta; ji niekada jūsų nebaudžia dėl trūkstamos. Siekite COOP ir CORP; palikite COEP nebuvusią, nebent išbandėte.