Defaults.Exposed

Defaults.ExposedTaisymai › 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

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:

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.

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:

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

Dažnos klaidos

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.