Vydanie Chrome 90

Google odhalil vydanie webového prehliadača Chrome 90. Zároveň je k dispozícii stabilné vydanie bezplatného projektu Chromium, ktorý slúži ako základ prehliadača Chrome. Prehliadač Chrome sa vyznačuje použitím log Google, prítomnosťou systému na odosielanie upozornení v prípade havárie, modulmi na prehrávanie chráneného video obsahu (DRM), systémom automatickej inštalácie aktualizácií a prenosom parametrov RLZ pri vyhľadávaní. Ďalšie vydanie prehliadača Chrome 91 je naplánované na 25. mája.

Kľúčové zmeny v Chrome 90:

  • Všetci používatelia majú pri zadávaní názvov hostiteľov do panela s adresou štandardne povolené otváranie stránok cez HTTPS. Napríklad, keď zadáte hostiteľský example.com, predvolene sa otvorí stránka https://example.com a ak sa pri otváraní vyskytnú problémy, vráti sa späť na http://example.com. Na ovládanie používania predvoleného „https://“ sa navrhuje nastavenie „chrome://flags#omnibox-default-typed-navigations-to-https“.
  • Teraz je možné priradiť oknám rôzne štítky, aby ste ich vizuálne oddelili na paneli pracovnej plochy. Podpora zmeny názvu okna zjednoduší organizáciu práce pri používaní samostatných okien prehliadača na rôzne úlohy, napríklad pri otváraní samostatných okien pre pracovné úlohy, osobné záujmy, zábavu, odložené materiály atď. Názov sa zmení prostredníctvom položky „Pridať názov okna“ v kontextovej ponuke, ktorá sa zobrazí po kliknutí pravým tlačidlom myši na prázdnu oblasť na paneli kariet. Po zmene názvu na paneli aplikácie sa namiesto názvu stránky z aktívnej karty zobrazí zvolený názov, čo môže byť užitočné pri otváraní rovnakých stránok v rôznych oknách prepojených so samostatnými účtami. Väzba je udržiavaná medzi reláciami a po reštarte sa okná obnovia so zvolenými názvami.
    Vydanie Chrome 90
  • Pridaná možnosť skryť „Zoznam na čítanie“ bez nutnosti meniť nastavenia v „chrome://flags“ („chrome://flags#read-later“). Na skrytie môžete teraz použiť možnosť „Zobraziť zoznam na čítanie“ v spodnej časti kontextovej ponuky, ktorá sa zobrazí po kliknutí pravým tlačidlom myši na panel so záložkami. Pripomeňme, že v poslednom vydaní, keď niektorí používatelia kliknú na hviezdičku v paneli s adresou, zobrazí sa okrem tlačidla „Pridať záložku“ aj druhé tlačidlo „Pridať do zoznamu na čítanie“ a v pravom rohu na paneli záložiek sa zobrazí ponuka „Zoznam na čítanie“, v ktorej sú uvedené všetky predtým pridané strany do zoznamu. Keď otvoríte stránku zo zoznamu, označí sa ako prečítaná. Stránky v zozname možno tiež manuálne označiť ako prečítané alebo neprečítané, prípadne ich zo zoznamu odstrániť.
  • Pridaná podpora pre segmentáciu siete na ochranu pred metódami sledovania pohybu používateľov medzi stránkami na základe ukladania identifikátorov v oblastiach, ktoré nie sú určené na trvalé ukladanie informácií („Supercookies“). Pretože prostriedky uložené vo vyrovnávacej pamäti sú uložené v spoločnom priestore názvov, bez ohľadu na pôvodnú doménu, jedna lokalita môže určiť, že zdroje načítava iná lokalita, a to tak, že skontroluje, či je daný zdroj vo vyrovnávacej pamäti. Ochrana je založená na použití segmentácie siete (Network Partitioning), ktorej podstatou je pridať do zdieľaných cache dodatočnú väzbu záznamov na doménu, z ktorej sa otvára hlavná stránka, čo obmedzuje pokrytie cache iba pre skripty na sledovanie pohybu. na aktuálnu lokalitu (skript z prvku iframe nebude môcť skontrolovať, či bol zdroj stiahnutý z inej lokality). Cenou za segmentáciu je zníženie efektivity ukladania do vyrovnávacej pamäte, čo vedie k miernemu zvýšeniu času načítania stránky (maximálne o 1.32 %, ale pri 80 % stránok o 0.09 – 0.75 %).
  • Čierna listina sieťových portov, pre ktoré je blokované odosielanie požiadaviek HTTP, HTTPS a FTP, bola doplnená s cieľom chrániť pred útokmi typu NAT slipstreaming, čo umožňuje pri otvorení webovej stránky špeciálne pripravenej útočníkom v prehliadači vytvoriť sieť. pripojenie zo servera útočníka k akémukoľvek portu UDP alebo TCP v systéme používateľa, a to aj napriek použitiu interného rozsahu adries (192.168.x.x, 10.x.x.x). Pridané 554 (RTSP protokol) a 10080 (používané v zálohovaní Amanda a VMWare vCenter) do zoznamu zakázaných portov. Predtým už boli zablokované porty 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 a 6566.
  • Pridaná počiatočná podpora otvárania dokumentov PDF pomocou formulárov XFA v prehliadači.
  • Pre niektorých používateľov bola aktivovaná nová sekcia nastavení „Nastavenia prehliadača Chrome > Ochrana osobných údajov a zabezpečenie > Karanténa ochrany osobných údajov“, ktorá vám umožňuje spravovať parametre API FLoC zamerané na určenie kategórie záujmov používateľov bez individuálnej identifikácie a bez odkazu na históriu návštev konkrétnych stránok.
  • Keď sa používateľ pripojí k profilu, pre ktorý je povolená centralizovaná správa, teraz sa zobrazí prehľadnejšie upozornenie so zoznamom povolených akcií.
  • Rozhranie žiadosti o povolenia bolo menej rušivé. Požiadavky, ktoré používateľ pravdepodobne neschváli, sú teraz automaticky blokované so zodpovedajúcim indikátorom zobrazeným v paneli s adresou, pomocou ktorého môže používateľ prejsť do rozhrania na správu povolení na základe jednotlivých stránok.
    Vydanie Chrome 90
  • Podpora rozšírení Intel CET (Intel Control-flow Enforcement Technology) je zahrnutá na ochranu hardvéru pred zneužitím pomocou techník návratovo orientovaného programovania (ROP, Return-Oriented Programming).
  • Pokračuje práca na prechode prehliadača na používanie inkluzívnej terminológie. Súbor „master_preferences“ bol premenovaný na „initial_preferences“, aby sa predišlo zraneniu pocitov používateľov, ktorí slovo „master“ vnímajú ako náznak bývalého otroctva svojich predkov. Aby bola zachovaná kompatibilita, podpora pre „master_preferences“ zostane v prehliadači nejaký čas. Predtým sa prehliadač už zbavil používania slov „whitelist“, „blacklist“ a „native“.
  • Vo verzii pre Android, keď je povolený režim úspory prevádzky „Lite“, pri sťahovaní videa pri pripojení cez siete mobilných operátorov sa zníži bitová rýchlosť, čo zníži náklady používateľov, ktorí majú povolené tarify založené na premávke. Režim „Lite“ tiež poskytuje kompresiu obrázkov požadovaných z verejne dostupných zdrojov (nevyžaduje overenie) prostredníctvom protokolu HTTPS.
  • Pridaný kodér video formátu AV1, špeciálne optimalizovaný pre použitie vo videokonferenciách na základe protokolu WebRTC. Použitie AV1 pri videokonferenciách umožňuje zvýšiť efektivitu kompresie a poskytuje možnosť vysielania na kanáloch so šírkou pásma 30 kbit/s.
  • V JavaScripte objekty Array, String a TypedArrays implementujú metódu at(), ktorá vám umožňuje použiť relatívne indexovanie (relatívna pozícia je určená ako index poľa), vrátane zadávania záporných hodnôt relatívne ku koncu (napr. "arr.at(-1)" vráti posledný prvok poľa).
  • JavaScript pridal pre regulárne výrazy vlastnosť „.indices“, ktorá obsahuje pole so začiatočnou a koncovou pozíciou skupín zhôd. Vlastnosť sa vyplní iba pri vykonávaní regulárneho výrazu s príznakom "/d". const re = /(a)(b)/d; const m = re.exec(‘ab’); console.log(m.indexy[0]); // 0 — všetky skupiny zápasov // → [0, 2] console.log(m.indexy[1]); // 1 je prvá skupina zhôd // → [0, 1] console.log(m.indices[2]); // 2 - druhá skupina zápasov // → [1, 2]
  • Výkon „super“ vlastností (napríklad super.x), pre ktoré je povolená inline vyrovnávacia pamäť, bol optimalizovaný. Výkonnosť používania „super“ je teraz blízka výkonu prístupu k bežným vlastnostiam.
  • Volanie funkcií WebAssembly z JavaScriptu sa výrazne zrýchlilo vďaka použitiu inline nasadenia. Táto optimalizácia zostáva zatiaľ experimentálna a vyžaduje spustenie s príznakom „-turbo-inline-js-wasm-calls“.
  • Pridané rozhranie WebXR Depth Sensing API, ktoré umožňuje určiť vzdialenosť medzi objektmi v prostredí používateľa a zariadením používateľa, napríklad vytvárať realistickejšie aplikácie rozšírenej reality. Pripomeňme, že WebXR API umožňuje zjednotiť prácu s rôznymi triedami zariadení virtuálnej reality, od stacionárnych 3D prilieb až po riešenia založené na mobilných zariadeniach.
  • Funkcia WebXR AR Lighting Estimation bola stabilizovaná, čo umožňuje reláciám WebXR AR určiť parametre okolitého osvetlenia, aby modely získali prirodzenejší vzhľad a lepšiu integráciu s prostredím používateľa.
  • Režim Origin Trials (experimentálne funkcie vyžadujúce samostatnú aktiváciu) pridáva niekoľko nových rozhraní API, ktoré sú momentálne obmedzené na platformu Android. Origin Trial znamená schopnosť pracovať so špecifikovaným API z aplikácií stiahnutých z localhost alebo 127.0.0.1, alebo po registrácii a prijatí špeciálneho tokenu, ktorý je platný na obmedzený čas pre konkrétnu stránku.
    • Metóda getCurrentBrowsingContextMedia(), ktorá umožňuje zachytiť stream videa MediaStream odrážajúci obsah aktuálnej karty. Na rozdiel od podobnej metódy getDisplayMedia() sa pri volaní getCurrentBrowsingContextMedia() používateľovi zobrazí jednoduché dialógové okno na potvrdenie alebo zablokovanie operácie prenosu videa s obsahom karty.
    • Insertable Streams API, ktoré vám umožňuje manipulovať s nespracovanými mediálnymi tokmi prenášanými cez MediaStreamTrack API, ako sú údaje z kamery a mikrofónu, výsledky snímania obrazovky alebo dekódovacie údaje prechodného kodeku. Rozhrania WebCodec sa používajú na prezentáciu nespracovaných rámcov a generuje sa prúd podobný tomu, ktorý generuje rozhranie WebRTC Insertable Streams API na základe RTCPeerConnections. Z praktického hľadiska nové API umožňuje funkcie, ako je aplikácia techník strojového učenia na identifikáciu alebo anotáciu objektov v reálnom čase, alebo pridávanie efektov, ako je orezanie pozadia pred kódovaním alebo po dekódovaní pomocou kodeku.
    • Schopnosť zabaliť zdroje do balíkov (Web Bundle) na organizáciu efektívnejšieho načítania veľkého počtu sprievodných súborov (štýly CSS, JavaScript, obrázky, iframe). Medzi nedostatky v existujúcej podpore balíkov pre súbory JavaScript (webpack), ktoré sa Web Bundle snaží odstrániť: samotný balík, ale nie jeho súčasti, môže skončiť v HTTP cache; kompilácia a spustenie môže začať až po úplnom stiahnutí balíka; Dodatočné zdroje, ako sú CSS a obrázky, musia byť zakódované vo forme reťazcov JavaScript, čo zväčšuje veľkosť a vyžaduje ďalší krok analýzy.
    • Podpora spracovania výnimiek vo WebAssembly.
  • Stabilizovalo deklaratívne Shadow DOM API na vytvorenie nových koreňových vetiev v Shadow DOM, napríklad na oddelenie importovaného štýlu elementu tretej strany a jeho pridruženej podvetvy DOM od hlavného dokumentu. Navrhované deklaratívne API vám umožňuje použiť iba HTML na uvoľnenie vetiev DOM bez potreby písať kód JavaScript.
  • Vlastnosť CSS pomeru strán, ktorá vám umožňuje explicitne naviazať pomer strán na akýkoľvek prvok (automaticky vypočítať chýbajúcu veľkosť pri zadaní iba výšky alebo šírky), implementuje možnosť interpolácie hodnôt počas animácie (plynulý prechod z jednej pomer strán k inému).
  • Pridaná možnosť odrážať stav vlastných prvkov HTML v CSS prostredníctvom pseudotriedy „:state()“. Funkcionalita je implementovaná analogicky so schopnosťou štandardných HTML prvkov meniť svoj stav v závislosti od interakcie používateľa.
  • Vlastnosť CSS „appearance“ teraz podporuje hodnotu „auto“, ktorá je predvolene nastavená pre a a na platforme Android navyše pre , , , a .
  • Do vlastnosti CSS „overflow“ bola pridaná podpora pre hodnotu „clip“, keď je nastavená, obsah, ktorý presahuje blok, je orezaný na hranicu povoleného pretečenia bloku bez možnosti posúvania. Hodnota, ktorá určuje, ako ďaleko môže obsah presahovať skutočný okraj rámčeka pred začiatkom orezávania, sa nastavuje pomocou novej vlastnosti CSS „overflow-clip-margin“. V porovnaní s „overflow: hidden“ umožňuje použitie „overflow: clip“ lepší výkon.
    Vydanie Chrome 90Vydanie Chrome 90
  • Hlavička HTTP Feature-Policy bola nahradená novou hlavičkou Permissions-Policy na riadenie delegovania povolení a aktiváciu pokročilých funkcií, ktorá zahŕňa podporu pre štruktúrované hodnoty polí (napríklad teraz môžete zadať „Permissions-Policy: geolocation“ =()“ namiesto „Funkcia – politika: geolokácia „žiadne“).
  • Posilnená ochrana proti používaniu Protocol Bufferov pri útokoch spôsobených špekulatívnym vykonávaním inštrukcií v procesoroch. Ochrana je implementovaná pridaním typu MIME „application/x-protobuffer“ do zoznamu nikdy nesniffovaných typov MIME, ktorý je spracovaný prostredníctvom mechanizmu Cross-Origin-Read-Blocking. Predtým bol typ MIME „application/x-protobuf“ už zahrnutý v podobnom zozname, ale „application/x-protobuffer“ bol vynechaný.
  • Rozhranie File System Access API implementuje schopnosť posunúť aktuálnu pozíciu v súbore za jeho koniec, čím sa výsledná medzera vyplní nulami počas následného zápisu prostredníctvom volania FileSystemWritableFileStream.write(). Táto funkcia umožňuje vytvárať riedke súbory s prázdnymi priestormi a výrazne zjednodušuje organizáciu zápisu do súborových prúdov s neusporiadaným príchodom dátových blokov (napríklad sa to praktizuje v BitTorrent).
  • Pridaný konštruktor StaticRange s implementáciou ľahkých typov rozsahov, ktoré nevyžadujú aktualizáciu všetkých pridružených objektov pri každej zmene stromu DOM.
  • Implementovaná schopnosť špecifikovať parametre šírky a výšky pre prvky špecifikované v prvku . Táto funkcia vám umožňuje vypočítať pomer strán pre prvky , podobne ako sa to robí pre prvky , a .
  • Z WebRTC bola odstránená neštandardizovaná podpora pre dátové kanály RTP a namiesto toho sa odporúča použiť dátové kanály založené na SCTP.
  • Vlastnosti navigator.plugins a navigator.mimeTypes teraz vždy vracajú prázdnu hodnotu (po ukončení podpory Flash už tieto vlastnosti nie sú potrebné).
  • V nástrojoch pre vývojárov webu sa urobila veľká časť malých vylepšení a bol pridaný nový nástroj na ladenie CSS, flexbox.
    Vydanie Chrome 90

Okrem inovácií a opráv chýb nová verzia odstraňuje 37 zraniteľností. Mnohé zo zraniteľností boli identifikované ako výsledok automatizovaného testovania pomocou nástrojov AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer a AFL. Neboli identifikované žiadne kritické problémy, ktoré by umožnili obísť všetky úrovne ochrany prehliadača a spustiť kód v systéme mimo prostredia karantény. V rámci programu peňažných odmien za objavenie slabých miest aktuálneho vydania spoločnosť Google vyplatila 19 ocenení v hodnote 54000 20000 USD (jedno ocenenie 10000 5000 USD, jedno ocenenie 3000 2000 USD, dve ocenenia 1000 500 USD, tri ocenenia 6 XNUMX USD, jedno ocenenie XNUMX XNUMX USD, jedno ocenenie XNUMX XNUMX USD a štyri ocenenia ).). Veľkosť XNUMX odmien ešte nebola stanovená.

Samostatne je možné poznamenať, že včera, po vytvorení opravného vydania 89.0.4389.128, ale pred vydaním Chrome 90, bol zverejnený ďalší exploit, ktorý používal novú 0-dňovú zraniteľnosť, ktorá nebola opravená v Chrome 89.0.4389.128 . Zatiaľ nie je jasné, či bol tento problém odstránený v Chrome 90. Rovnako ako v prvom prípade, exploit pokrýva iba jednu zraniteľnosť a neobsahuje kód na obídenie izolácie sandboxu (pri spustení prehliadača Chrome s príznakom „--no-sandbox“ , zneužitie sa vyskytuje pri otvorení webovej stránky na platforme Windows umožňuje spustiť Poznámkový blok). Zraniteľnosť spojená s novým exploitom ovplyvňuje technológiu WebAssembly.

Zdroj: opennet.ru

Pridať komentár