A Google pontosítja a SharedArrayBuffer e-mailt

A Google Keresési Központ pontosított egy zavaros üzenetet a Google Search Console által a múlt héten küldött SharedArrayBuffer problémákkal kapcsolatban. A Google emellett frissítette útmutatóját, amely lehetővé teszi a származási helyek elkülönítésének engedélyezését.

Mi az a SharedArrayBuffer?

A SharedArrayBuffer, egyszerűen fogalmazva, a JavaScript működési kulisszái mögött van, amelyek segítik őket feladataik hatékony végrehajtásában.

A Mozilla webmunkások dokumentációja szerint:

“A webmunkások a webtartalom egyszerű eszközei a szkriptek futtatására háttérszálakban.”

És egy másik Mozilla fejlesztői oldal szerint:

“A SharedArrayBuffer használatával mindkét webmunkás, mindkét szál, ugyanabból a memóriarészből írhat adatokat és olvashat adatokat.”

A memória azért fontos, mert a JavaScript a böngésző memóriájával működik, és ha az oldal nem kezeli megfelelően, akkor ez olyan nem kívánt következményekhez vezethet, mint például a memória puffadása.

Hirdetés

Olvassa tovább az alábbiakban

A Mozilla fejlesztői oldala tovább magyarázza:

„Az ArrayBuffers lehetőséget nyújt arra, hogy bizonyos adatait manuálisan kezelje, annak ellenére, hogy Ön a JavaScript-ben dolgozik, amely automatikus memóriakezeléssel rendelkezik.

… Egy tipikus alkalmazásban a munkáról egyetlen egyén gondoskodik – a fő szál.

… És bizonyos körülmények között az ArrayBuffers csökkentheti a fő szál elvégzésének munkáját. ”

A továbbiakban azt magyarázza, hogy néha nem elég megosztani a munkát, és itt lépnek színre a fent említett webmunkások, akik ugyanazon a memóriarészen osztoznak.

A Google Martin Splitt így foglalta össze ezt 2017-ben, amikor a SharedArrayBuffers egy újabb szolgáltatás volt:

„A JavaScript egyszálú, és a hosszú futó parancsfájlok nem reagálnak az oldalra

A Webmunkások lehetővé teszik a JavaScript futtatását külön szálakban, üzenetekkel kommunikálva a fő szálral.

Azok az üzenetek, amelyek nagy mennyiségű adatot továbbítanak a TypedArrays vagy az ArrayBuffers alkalmazásban, nagy memóriaköltséget okoznak az adatok klónozása miatt

… A SharedArrayBuffers egy hamarosan megjelenő szolgáltatás, amely lehetővé teszi az adatok megosztását a szálak között. “

Hirdetés

Olvassa tovább az alábbiakban

Miért kapta meg a SharedArrayBuffer üzenetet?

A Google Search Central blogja elmagyarázza, hogy a kiadók a „titokzatos” üzenetet azért kapták, mert valami a weboldalukon található, a SharedArrayBuffers használatával, amely kódolási trükk a JavaScript-folyamatok felgyorsítására.

A Google szerint:

“A használat oka lehet a webhelyen található keretek, könyvtárak vagy más, harmadik féltől származó tartalom.”

Miért jelent problémát a SharedArrayBuffer (SAB)?

A SAB-k problematikussá váltak a Spectre és Meltdown biztonsági rések felfedezése után.

Ezek a sebezhetőségek érintik az összes számítógépes feldolgozó egységet (CPU), és lehetővé teszik a támadó számára, hogy elolvassa a memóriában lévő elemeket. A támadás minden számítógépes eszközt érint, beleértve a tárgyak internetét is.

A Chrome eredetileg felfüggesztette az SAB-ok használatát, de a folyamatokat lényegében izoláló megoldás után újra engedélyezte őket.

A Chrome és a Firefox megváltoztatja a SharedArrayBuffers kezelésének módját

Az e-mail oka az volt, hogy megpróbálták felhívni a figyelmet arra, hogyan kezeli a Chrome a SharedArrayBuffereket, és segíteni a kiadókat abban, hogy olyan folyamatokkal segítsék fel őket, amelyek biztonságosabbá teszik webhelyeiket és látogatóikat.

2021. május végén a Chrome 91 új korlátozással jelenik meg, amely erőteljesebb védelmet nyújt a Spectre és az Meltdown sebezhetőségei ellen.

Kereszt-eredetű”A webhelyen kívülről származó forrásokra (például képek, CSS és JavaScript fájlok) való hivatkozás.

Tehát mi folyik a Chrome 91-tel, és amire a Google megköveteli, az az erőforrásokra vonatkozó biztonsági irányelvek meghatározása és a Chrome (és a Firefox) irányelvei szerint megengedett tartalmak lezárása a webhely látogatóinak és a megjelenítőknek a Spectre sebezhetőség elleni védelme érdekében.

Ez jó a webhely látogatóinak, de rossz lehet azoknak a webhely-megjelenítőknek, akik a SharedArrayBuffer objektumokat kereszt-eredet nélküli elkülönítés nélkül használják.

A Google pontosítása szerint (hivatkozva a Chrome 91-es verziójára):

„… a származási helyek közötti elkülönítést szabványosították a SharedArrayBuffer objektum biztonságos engedélyezésének módjaként. A 91-es verziótól kezdve, amelyet 2021 május végén terveznek kiadni, a Chrome át fogja vezetni a SharedArrayBuffer objektumot a kereszt-eredet elkülönítése mögött.

… A Chrome 91 kiadása után a SharedArrayBuffer objektum kereszt-eredetű elkülönítés nélkül már nem fog működni. ”

Hirdetés

Olvassa tovább az alábbiakban

Mit kell tennie a SharedArrayBuffer probléma elhárításához

Két feladatot kell elvégezni.

  1. Azonosítsa a SAB használatát a webhelyén.
  2. Javítsa vagy távolítsa el a funkcionalitást

Az SAB használatának azonosítása

A Google az alábbi lépéseket javasolja a SharedArrayBuffers azonosításához:

„Két lehetőséged van:

Használja a Chrome DevTools alkalmazást, és ellenőrizze a fontos oldalakat.
(Haladó) A Reporting API használatával elavulási jelentéseket küldhet egy jelentési végpontnak.
Tanulja meg, hogyan alkalmazhatja a fenti megközelítéseket: Itt megtudhatja, hogy a SharedArrayBuffer webhelyet hol használják. “

A Google útmutatója a származások közötti elkülönítésről útmutatásokat kínál a Chrome Dev Tools használatáról a SharedArrayBuffers használatának azonosításához.

  1. „Nyissa meg a Chrome DevTools alkalmazást azon az oldalon, amelyről feltételezi, hogy a SharedArrayBuffer programot használja.
  2. Válassza a Konzol panelt.
  3. Ha az oldal SharedArrayBuffer programot használ, akkor a következő üzenet jelenik meg:
    [Deprecation] SharedArrayBuffer will require cross-origin isolation as of M91, around May 2021. See https://developer.chrome.com/blog/enabling-shared-array-buffer/ for more details. common-bundle.js:535
  4. Az üzenet végén található fájlnév és sorszám (például common-bundle.js: 535) jelzi, hogy honnan származik a SharedArrayBuffer. Ha ez egy harmadik féltől származó könyvtár, akkor forduljon a fejlesztőhöz a probléma kijavításához. Ha a webhelye részeként valósítja meg, akkor kövesse az alábbi útmutatót a származási helyek közötti elkülönítés engedélyezéséhez. “

Hirdetés

Olvassa tovább az alábbiakban

Link: Hogyan lehet engedélyezni a kereszt-eredetű elkülönítést

Sok bevihető

Ezt nagyon sokat kell vállalni, mert jelentős mennyiségű fejlesztési szakzsargont és rövidítést kell megjegyezni.

A különféle fejlesztői oldalakat nehéz megérteni, mert hajlamosak több rövidítést definiálni 2000 szócikk elején, majd kizárólag a rövidítésekre utalnak, anélkül, hogy a cikk egészében további magyarázatot adnának, mintha az olvasó képes lenne megtartani a COEP jelentését, ill. COOP.

Idézetek

Hivatalos Google-pontosítás:
Pontosítás a SharedArrayBuffer objektumüzenetről

Biztonsági fejléc háttérinformációs erőforrása: ScottHelme.co.uk
COEP COOP CORP CORS CORB – CRAP Ez egy csomó új dolog!

A Mozilla fejlesztői oldala arról, hogy mi a SharedArrayBuffers:
Rajzfilmbevezetés az ArrayBuffers és a SharedArrayBuffers oldalakba

A Google fejlesztői oldala a származási helyek közötti izoláció elemzéséről
Útmutató a kereszt-eredetű izoláció elemzéséhez

A Google fejlesztői oldala a kereszt származás elkülönítésének engedélyezéséről
Hogyan lehet engedélyezni a kereszt-eredetű elkülönítést

Leave a Reply

Your email address will not be published. Required fields are marked *