Defaults.Exposed

Defaults.ExposedKorjaukset › Ristiin-lähtöiset eristysotsakeet (COOP / CORP / COEP)

Kuinka korjata Ristiin-lähtöiset eristysotsakeet (COOP / CORP / COEP)

Kolme valinnaista selaimen ohjetta, jotka hallitsevat sitä, miten muut sivustot saavat vuorovaikuttaa sinun sivustosi kanssa – avaamaan sen ponnahdusikkunoihin, upottamaan kuviasi ja skriptejäsi tai vetämään resurssejasi omille sivuilleen. Ne ovat modernia kovennusta, ei perusvaatimus, ja pisteytyksessämme ne ovat tiedoksi annettavia: niiden puuttuminen ei laske arvosanaasi. Mutta kaksi turvallista sulkevat hiljaisen tietojenkalastelu- ja kaistanleveyden varastamisaukon, ja huolellisen ostajan IT-tiimi huomaa, kun ne ovat läsnä.

Lyhyesti liiketoiminnallesi: Kaksi näistä kolmesta otsikosta sulkee kehittyneen ponnahdusikkunatietojenkalastelun ja estää muita sivustoja suoraan linkittämästä kuviasi ja skriptejäsi (mikä maksaa kaistanleveytesi ja voi vuotaa dataa). Ne ovat ilmaisia, vaativat kehittäjältä noin 15 minuuttia, eivätkä rikkoa mitään. Kolmas on edistynyt ja voi rikkoa analytiikan, fontit ja upotukset – useimpien yritysten tulisi jättää se pois päältä. Mikään niistä ei vaikuta arvosanaasi, joten kohtele niitä viimeistelytyönä, ei paniikkina: tee kaksi turvallista, jätä riskialtis pois ellei sinulla ole erityistä tarvetta siihen.

Mitä tämä voi maksaa sinulle

Miksi tällä on merkitystä. Nämä ovat eteenpäin katsovia selaimen koventamisotsakkeita. Metodologiassamme kaikki kolme ovat tiedoksi annettavia – ne rekisteröidään nollalla pisteellä eivätkä koskaan muuta arvosanaasi – koska ne ovat edistyneitä hallintatoimia, joita sivusto voi laillisesti toimia ilman, ja yksi niistä voi tehdä haittaa väärin sovellettuna. Raportoimme niistä jotta näet missä olet. Kaksi turvallista (COOP ja CORP) on aidosti lisäämisen arvoista: ilmaisia, nopeita, ja ne sulkevat todellisia ponnahdusikkunatietojenkalastelu- ja resurssien varastamisaukkoja rikkomatta mitään.

Mitä nämä ovat, selkokielellä

Kun joku vierailee verkkosivustollasi, heidän selaimensa ei vain lataa sivujasi eristetyssä tilassa – se päättää myös, miten muut sivustot saavat vuorovaikuttaa sinun sivustosi kanssa. Voiko toinen sivusto avata sivustosi ponnahdusikkunassa ja pitää sen hallussa? Voiko toinen sivusto kurkottaa yli ja upottaa kuviasi ja skriptejäsi omille sivuilleen? Voiko oma sivustosi turvallisesti käyttää tiettyjä tehokkaita, lukittuja selaimen ominaisuuksia?

Nämä kolme otsikkoa ovat lyhyitä, näkymättömiä ohjeita, joita verkkosivustosi lähettää jokaiselle kävijän selaimelle vastatakseen täsmälleen niihin kysymyksiin. Niitä tunnetaan niiden lyhenteillä:

Kaksi niistä (COOP ja CORP) on turvallista lisätä ja aidosti hyödyllistä. Kolmas (COEP) on edistynyt ja voi rikkoa asioita jos kytketään päälle huolimattomasti.

Tärkein asia etukäteen tietää: pisteytyksessämme kaikki kolme ovat tiedoksi annettavia. Ne eivät vaikuta arvosanaasi. Puuttuva ei maksa sinulle mitään. Raportoimme niistä jotta näet missä olet ja siistit helpot voitot – ei jotta panikoinnit numerosta.

Mitä tämä voi maksaa yrityksellesi

Nämä ovat niche-riskejä, eivät pääotsikko-riskejä – mutta ne ovat todellisia, ja korjaukset ovat ilmaisia.

Mitä kukin oikeasti on

COOP — Cross-Origin-Opener-Policy (turvallinen, suositeltu)

Kun toinen sivusto avaa sinun sivustosi ponnahdusikkunan tai window.open-funktion avulla, kaksi ikkunaa voi yleensä pitää viittauksen toisiinsa. Tuota linkkiä voidaan väärinkäyttää: avaaja voi manipuloida tai ohjata ikkunaasi, lukea paloja sen URL:sta ja järjestää vakuuttavan tietojenkalastelun käyttäen todellista verkkotunnustasi. COOP: same-origin katkaisee tuon suhteen – ikkunasi eristäytyy kaikesta, mikä avasi sen eri alkuperistä. Tavallinen selaaminen, omat sisäiset linkkisi ja tavallinen navigointi eivät vaikutu lainkaan.

Miltä “hyvä” näyttää: Cross-Origin-Opener-Policy: same-origin.

CORP — Cross-Origin-Resource-Policy (turvallinen, suositeltu)

Oletuksena kuvasi, skriptisi ja muut tiedostosi voivat olla minkä tahansa sivuston kaikkialla upottamia. CORP: same-origin kertoo selaimille kieltäytyä ristiin-lähtöisestä upottamisesta resursseistasi – joten muut sivustot eivät voi suoraan linkittää resurssejasi tai vetää niitä sivuilleen. Oma sivustosi lataa edelleen omia resurssejaan täsmälleen kuten ennenkin; vain ulkopuoliset sivustot estetään.

Miltä “hyvä” näyttää: Cross-Origin-Resource-Policy: same-origin. (Jos tarkoituksellisesti julkaiset resursseja muiden upottamaksi – julkinen logo, avoin API – kehittäjäsi voi rentoutua tätä juuri noissa vastauksissa.)

COEP — Cross-Origin-Embedder-Policy (edistynyt, jätä yleensä pois)

COEP täydentää “ristiin-lähtöisen eristyksen”: yhdistettynä COOPin kanssa se vaatii, että jokainen sivusi lataama resurssi erikseen osallistuu (CORSin tai CORPin kautta). Tehty oikein, tämä avaa tiettyjä tehokkaita selaimen ominaisuuksia (kuten SharedArrayBuffer) ja lisää toisen kerroksen Spectre-luokan hyökkäyksiä vastaan. Mutta koska se vaatii osallistumista kaikilta lataamiltasi, se rikkoo helposti kolmannen osapuolen työkaluja – analytiikan, fontit, upotetut vimpaltimet – joita ei rakennettu osallistumaan. Useimmat verkkosivustot eivät tarvitse ominaisuuksia, joita se avaa, eivätkä saisi kantaa rikkoutumisriskiä.

Miltä “hyvä” näyttää: harvinaiselle sivustolle, joka tarvitsee sitä, Cross-Origin-Embedder-Policy: credentialless – turvallisempi arvo, vähemmän todennäköinen ulkoisten resurssien rikkominen kuin require-corp. Kaikille muille, poissa oleva on ok, eikä raporttimme rankaise sinua siitä.

Korjausohje (ilmainen, n. 15 minuuttia)

Anna tämä IT-henkilöllesi tai webkehittäjällesi – korjaus on ilmainen. COOPin ja CORPin lisääminen on pari yksirivisetusta palvelimessasi tai CDN:ssäsi; lisenssiä ei ole ja jatkuvia kustannuksia ei ole. Ainoa ohje omistajalle on: tee kaksi turvallista, äläkä ota COEPia käyttöön testaamatta.

Nämä ovat vastaustahoja, asetettuna siellä missä sivustosi vastaukset tuotetaan – helpoimmin CDN:ssäsi (esim. Cloudflare) jos sinulla on sellainen, muuten verkkopalvelimesi konfiguraatiossa.

Kaksi turvallista otsikkoa (suositeltu kaikille)

Cloudflare — Säännöt → Muuntosäännöt → Muokkaa vastaustahoja → Aseta:

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"

Nämä on turvallista lisätä eivätkä ne rikkoa normaalia toiminnallisuutta. Käyttöönoton jälkeen lataa muutama sivu ja vahvista, että sivusto käyttäytyy täsmälleen kuten ennenkin (sen pitäisi).

Edistynyt otsikko (vain jos tarvitset sitä erityisesti)

Älä kytke tätä päälle testaamatta lavastuksessa ensin. COEP voi rikkoa analytiikan, fontit ja upotetut vimpaltimet.

Cloudflare: Muuntosäännöt → Aseta Cross-Origin-Embedder-Policy = credentialless.

Nginx:

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

Käytä credentiallessia require-corpin sijaan – se on vähemmän todennäköinen ulkoisten resurssien rikkominen. Testaa perusteellisesti lavastuksessa; tarkkaile kolmannen osapuolen skriptejä, fontteja tai upotuksia, jotka lakkaavat latautumasta. Jos jotain rikkoutuu eikä todella tarvita ominaisuuksia, joita COEP avaa, poista yksinkertaisesti otsikko – siitä ei rangaista sen puuttumisesta.

Alustamuistiot

Yleisimmät virheet

Huomio arvosanasta

Ollakseni täysin selkeä: mikään näistä kolmesta tarkistuksesta ei vaikuta arvosanaasi. Ne rekisteröidään metodologiassamme tiedoksi annettavina, nollalla pisteellä, eikä puuttuva koskaan maksa sinulle mitään. Tuomme ne esiin koska kaksi turvallista ovat halpoja, todellisia parannuksia ja koska täyden kuvan näkeminen on hyödyllistä – ei koska on numero, jota puolustaa. Jos et tee mitään täällä, arvosanasi on täsmälleen sama. Jos lisäät COOPin ja CORPin, olet sulkenut pari todellista (joskin niche-) aukkoa ilmaiseksi. Se on oikea tapa ajatella tätä sivua: valinnainen viimeistely, jossa on yksi selkeästi merkitty ansa vältettäväksi.

UKK

Nämä eivät vaikuta arvosanaani – kannattaako vaivautua lainkaan?

Kaksi niistä, kyllä; yksi, todennäköisesti ei. COOP ja CORP ovat ilmaisia, vievät minuutteja, eivätkä rikkoa sivustoasi – ne sulkevat todellisia (joskin niche-) hyökkäyspolkuja, joten ne kannattaa tehdä halpana hygieniana. COEP on edistynyt ja voi rikkoa kolmannen osapuolen työkaluja, joten useimpien yritysten tulisi jättää se pois ellei erikseen tarvita selaimen ominaisuuksia, joita se avaa. Mikään kolmesta ei muuta pisteitä suuntaan tai toiseen, joten kiireellisyyttä ei ole – kohtele kahta turvallista siistimistyönä seuraavalla kerralla kun kehittäjäsi on sivustossa.

En ole tekninen – onko minun toimittava tämän suhteen?

Ei henkilökohtaisesti, eikä kiireellisesti. Koska nämä ovat tiedoksi annettavia, arvosanallesi ei tapahdu mitään pahaa jos jätät ne väliin. Jos haluat lisätä kaksi turvallista, anna alla oleva 'Korjausohje' sille, joka hallinnoi verkkosivustoasi tai CDN:ääsi – se on pari yksirivisetusta ja korjaus on ilmainen. Ainoa, joka kannattaa merkitä eksplisiittisesti, on COEP: kerro heille olla kytkemättä sitä päälle testaamatta, koska se voi rikkoa analytiikan ja upotettuja vimpalimia.

Mitä eroa on näillä ja otsakkeilla, jotka VAIKUTTAVAT arvosanaani?

Pisteytetyt webturva-otsakeet – HTTPS-uudelleenohjaus, HSTS, Content-Security-Policy, klikkaushuijauksen suojaus (X-Frame-Options) ja MIME-sniffing-suojaus – puolustavat yleisiä, laajasti hyödynnettyjä hyökkäyksiä vastaan, joten niiden puuttuminen maksaa pisteitä. Tällä sivulla olevat kolme (COOP, CORP, COEP) ovat uudempia, erikoistuneempia selaimen eristyshallintatoimia. Ne ovat hyviä käytäntöjä, mutta eivät vielä perustason odotuksia, joten raportoimme niistä pisteyttämättä. Tee pisteytetyt ensin; nämä ovat viimeistelyä niiden päälle.

Rikkoutuuko sivustoni tai kumppaniintegraationi jos lisään COOPin tai CORPin?

Suositellut asetukset (molemmat 'same-origin') on suunniteltu olemaan turvallisia. COOP katkaisee vain linkin ikkunoihin, jotka sivustosi avaa ponnahdusikkunoina – tavallinen selaaminen, omat sivusi ja tavalliset linkit eivät vaikutu. CORP estää vain *muita* sivustoja upottamasta kuviasi ja skriptejäsi; oma sivustosi lataa omia resurssejaan täsmälleen kuten ennenkin. Jos todella tarjoilet resursseja (kuten julkisen logon tai API:n), joita muiden sivustojen on tarkoitus upottaa, kehittäjäsi voi käyttää sallivampaa asetusta juuri noissa vastauksissa. Ainoa, joka todella riskeeraa rikkoutumista, on COEP – pidä se pois päältä ellei testattuna.

Mitä 'suora linkitys' oikeasti maksaa minulle?

Kun toinen sivusto upottaa kuvasi tai skriptisi suoraan palvelimeltasi sen sijaan, että isännöisi oman kopiansa, jokainen heidän sivunsa kävijä lataa sen sinulta – kaistanleveydestäsi, ja näyttäen resurssiasi kontekstissa, jota et hyväksynyt. Pienelle yritykselle se on harvoin katastrofaalinen, mutta se on ilmaista rahaa menemässä ulos ovesta, ja CORP ('same-origin') estää sen selaintasolla. Se sulkee myös hienovaraisen datavuotopolun, johon kehittyneet (Spectre-luokan) selainhyökkäykset nojaavat.

Miltä 'hyvä' näyttää näissä kussakin?

COOP: Cross-Origin-Opener-Policy-otsikko asetettuna 'same-origin'. CORP: Cross-Origin-Resource-Policy-otsikko asetettuna 'same-origin'. COEP: Cross-Origin-Embedder-Policy-otsikko – ja jos asetat sen lainkaan, 'credentialless' on turvallisempi arvo kuin 'require-corp'. Raporttimme yksinkertaisesti huomioi onko kumpikin läsnä ja mihin se on asetettu; se ei koskaan rankaise puuttuvasta. Tähtää COOPin ja CORPin läsnäoloon; jätä COEP poissa ellei testattuna.