Chrome 90. kiadás

A Google bemutatta a Chrome 90 webböngésző kiadását, ezzel egyidejűleg elérhető a Chrome alapjául szolgáló ingyenes Chromium projekt stabil kiadása is. A Chrome böngészőt a Google logók használata, az összeomlás esetén értesítéseket küldő rendszer, a védett videotartalom lejátszására szolgáló modulok (DRM), a frissítések automatikus telepítésére szolgáló rendszer és az RLZ-paraméterek kereséskor történő továbbítása különbözteti meg. A Chrome 91 következő kiadása május 25-én jelenik meg.

Főbb változások a Chrome 90-ban:

  • Alapértelmezés szerint minden felhasználó számára engedélyezve van a webhelyek megnyitása HTTPS-en keresztül, amikor beírja a gazdagép nevét a címsorba. Például, amikor megadja az example.com gazdagépet, a https://example.com webhely alapértelmezés szerint megnyílik, és ha problémák merülnek fel a megnyitás során, akkor visszakerül a http://example.com címre. Az alapértelmezett „https://” használatának szabályozásához a „chrome://flags#omnibox-default-typed-navigations-to-https” beállítás javasolt.
  • Mostantól különböző címkéket is hozzá lehet rendelni az ablakokhoz, hogy vizuálisan elkülönítsék őket az asztali panelen. Az ablaknév megváltoztatásának támogatása leegyszerűsíti a munkaszervezést, ha külön böngészőablakot használ a különböző feladatokhoz, például amikor külön ablakokat nyit meg a munkafeladatokhoz, személyes érdeklődési körökhöz, szórakozáshoz, halasztott anyagokhoz stb. A név megváltoztatása a helyi menü „Ablakcím hozzáadása” elemével történik, amely akkor jelenik meg, ha jobb gombbal kattint a fülsáv üres területére. Az alkalmazáspanelen a név megváltoztatása után az aktív lapról származó webhelynév helyett a kiválasztott név jelenik meg, ami hasznos lehet ugyanazon webhelyek különböző, külön fiókokhoz kapcsolódó ablakokban történő megnyitásakor. Az összerendelés a munkamenetek között megmarad, és újraindítás után az ablakok a kiválasztott nevekkel állnak vissza.
    Chrome 90. kiadás
  • Hozzáadtuk az „Olvasási lista” elrejtésének lehetőségét anélkül, hogy módosítani kellene a „chrome://flags” („chrome://flags#read-later”) beállításait. Az elrejtéshez használhatja az „Olvasási lista megjelenítése” opciót a helyi menü alján, amely akkor jelenik meg, amikor jobb gombbal kattint a könyvjelzősávra. Emlékezzünk vissza, hogy a legutóbbi kiadásban, amikor néhány felhasználó a címsorban lévő csillagra kattintott, a „Könyvjelző hozzáadása” gomb mellett megjelent egy második „Hozzáadás az olvasólistához” gomb, és a könyvjelzők jobb sarkában. panelen megjelent az „Olvasási lista” menü, amely felsorolta az összes korábban a listára felvett oldalt. Amikor megnyit egy oldalt a listából, a rendszer olvasottként jelöli meg. A listában szereplő oldalak manuálisan is megjelölhetők olvasottként vagy olvasatlanként, illetve eltávolíthatók a listáról.
  • Támogatás hozzáadva a hálózati szegmentációhoz, hogy megvédje a felhasználók webhelyek közötti mozgásának nyomon követését az azonosítók tárolásán alapuló olyan területeken, amelyek nem az állandó információ tárolására szolgálnak („szupercookie-k”). Mivel a gyorsítótárazott erőforrások egy közös névtérben vannak tárolva, függetlenül a származási tartománytól, az egyik webhely úgy tudja megállapítani, hogy egy másik webhely erőforrásokat tölt be, ha ellenőrzi, hogy az erőforrás a gyorsítótárban van-e. A védelem a hálózati szegmentálás (Network Partitioning) használatán alapul, melynek lényege, hogy a megosztott gyorsítótárakba további rekordokat kötnek ahhoz a tartományhoz, ahonnan a főoldal megnyílik, ami korlátozza a gyorsítótár lefedettségét csak a mozgáskövető szkriptek számára. az aktuális webhelyre (az iframe-ből származó szkript nem tudja ellenőrizni, hogy az erőforrást egy másik webhelyről töltötték-e le). A szegmentálás ára a gyorsítótárazási hatékonyság csökkenése, ami az oldalbetöltési idő enyhe növekedését eredményezi (maximum 1.32%-kal, de az oldalak 80%-ánál 0.09-0.75%-kal).
  • A NAT slipstreaming támadások elleni védelem érdekében kiegészítésre került azon hálózati portok fekete listája, amelyeknél a HTTP, HTTPS és FTP kérések küldése le van tiltva, amely lehetővé teszi a támadó által speciálisan elkészített weboldal böngészőben történő megnyitásakor a hálózat létrehozását. kapcsolat a támadó szerverétől a felhasználó rendszerének bármely UDP- vagy TCP-portjához, annak ellenére, hogy a belső címtartományt (192.168.x.x, 10.x.x.x) használja. Az 554 (RTSP protokoll) és az 10080 (az Amanda biztonsági mentésben és a VMWare vCenterben használatos) hozzáadva a tiltott portok listájához. Korábban a 69-es, 137-es, 161-es, 554-es, 1719-es, 1720-as, 1723-as, 5060-as, 5061-es és 6566-os portok már le voltak tiltva.
  • Kezdeti támogatás hozzáadva a PDF dokumentumok megnyitásához XFA űrlapokkal a böngészőben.
  • Egyes felhasználóknál aktiválásra került egy új beállítási rész „Chrome Beállítások > Adatvédelem és biztonság > Adatvédelmi sandbox”, amely lehetővé teszi a FLoC API paramétereinek kezelését, melynek célja a felhasználói érdeklődési kategóriák meghatározása egyéni azonosítás és hivatkozás nélkül. adott helyszínek látogatásának története.
  • Egy világosabb értesítés jelenik meg az engedélyezett műveletek listájával, amikor a felhasználó olyan profilhoz csatlakozik, amelynél engedélyezve van a központosított kezelés.
  • Kevésbé tolakodóvá tette az engedélykérés felületét. Azok a kérések, amelyeket a felhasználó valószínűleg elutasít, ezentúl automatikusan letiltásra kerülnek, a címsorban megjelenő megfelelő jelzővel, amellyel a felhasználó webhelyenként léphet a jogosultságkezelési felületre.
    Chrome 90. kiadás
  • Az Intel CET (Intel Control-flow Enforcement Technology) bővítmények támogatása a hardveres védelmet szolgálja a visszatérésorientált programozási (ROP, Return-Oriented Programming) technikákkal épített kihasználások ellen.
  • Folytatódik a munka a böngésző átállásán a befogadó terminológia használatára. A "master_preferences" fájlt átnevezték "initial_preferences"-re, hogy ne sértse meg azoknak a felhasználóknak az érzéseit, akik a "master" szót az őseik egykori rabszolgaságára utaló utalásként érzékelik. A kompatibilitás fenntartása érdekében a „master_preferences” támogatása egy ideig megmarad a böngészőben. Korábban a böngésző már megszabadult a „whitelist”, „blacklist” és „native” szavak használatától.
  • Az Android verzióban, ha a „Lite” forgalomtakarékos mód engedélyezve van, a mobilszolgáltatók hálózatán keresztül történő csatlakozáskor a videó letöltésekor a bitsebesség csökken, ami csökkenti a forgalomalapú tarifákkal rendelkező felhasználók költségeit. Az „Egyszerűsített” mód a nyilvánosan elérhető forrásokból kért képek tömörítését is biztosítja (nem igényel hitelesítést) HTTPS-en keresztül.
  • Hozzáadott AV1 videoformátum kódoló, kifejezetten a WebRTC protokollon alapuló videokonferenciákhoz optimalizálva. Az AV1 használata a videokonferenciákban lehetővé teszi a tömörítési hatékonyság növelését és a 30 kbit/sec sávszélességű csatornákon történő sugárzás lehetőségét.
  • A JavaScriptben az Array, String és TypedArrays objektumok az at() metódust valósítják meg, amely lehetővé teszi a relatív indexelés használatát (a relatív pozíciót a tömbindexként adjuk meg), beleértve a végéhez viszonyított negatív értékek megadását (pl. Az "arr.at(-1)" a tömb utolsó elemét adja vissza).
  • A JavaScript hozzáadta az „.indexes” tulajdonságot a reguláris kifejezésekhez, amely egy tömböt tartalmaz az egyezések csoportjainak kezdő és záró pozíciójával. A tulajdonság csak akkor lesz kitöltve, ha a reguláris kifejezést "/d" jelzővel hajtja végre. const re = /(a)(b)/d; const m = re.exec('ab'); console.log(m.indexes[0]); // 0 — minden egyezési csoport // → [0, 2] console.log(m.indices[1]); // 1 az első találati csoport // → [0, 1] console.log(m.indices[2]); // 2 - a mérkőzések második csoportja // → [1, 2]
  • A „szuper” tulajdonságok (például a super.x) teljesítménye, amelyekhez a beépített gyorsítótár engedélyezve van, optimalizálva lett. A „szuper” használatának teljesítménye közel áll a normál tulajdonságok elérésének teljesítményéhez.
  • A WebAssembly függvények JavaScriptből történő meghívása jelentősen felgyorsult a beépített telepítésnek köszönhetően. Ez az optimalizálás egyelőre kísérleti jellegű, és a „-turbo-inline-js-wasm-calls” jelzővel kell futtatni.
  • Hozzáadtuk a WebXR Depth Sensing API-t, amely lehetővé teszi a felhasználó környezetében lévő objektumok és a felhasználó eszköze közötti távolság meghatározását, például valósághűbb kiterjesztett valóság-alkalmazások létrehozásához. Emlékeztetünk arra, hogy a WebXR API lehetővé teszi, hogy egyesítse a virtuális valóság-eszközök különböző osztályaival végzett munkát, a helyhez kötött 3D-s sisakoktól a mobileszközökön alapuló megoldásokig.
  • A WebXR AR Lighting Estimation funkciót stabilizálták, lehetővé téve a WebXR AR munkamenetek számára a környezeti világítási paraméterek meghatározását, hogy a modellek természetesebb megjelenést kapjanak, és jobban integrálódjanak a felhasználói környezetbe.
  • Az Origin Trials mód (külön aktiválást igénylő kísérleti funkciók) számos új API-t ad hozzá, amelyek jelenleg az Android platformra korlátozódnak. Az Origin Trial magában foglalja a megadott API-val való együttműködés lehetőségét a localhostról vagy a 127.0.0.1-ről letöltött alkalmazásokból, vagy a regisztráció és egy speciális token fogadása után, amely korlátozott ideig érvényes egy adott webhelyen.
    • A getCurrentBrowsingContextMedia() metódus, amely lehetővé teszi az aktuális lap tartalmát tükröző MediaStream videofolyam rögzítését. A hasonló getDisplayMedia() metódussal ellentétben a getCurrentBrowsingContextMedia() meghívásakor egy egyszerű párbeszédpanel jelenik meg a felhasználó számára, amely megerősíti vagy blokkolja a videó lap tartalmával történő átvitelének műveletét.
    • Insertable Streams API, amely lehetővé teszi a MediaStreamTrack API-n keresztül továbbított nyers médiafolyamok, például kamera- és mikrofonadatok, képernyőrögzítési eredmények vagy közbenső kodek dekódolási adatok manipulálását. A WebCodec interfészek a nyers keretek bemutatására szolgálnak, és a WebRTC Insertable Streams API által az RTCPeerConnections alapján generálthoz hasonló adatfolyamot generálnak. Gyakorlati szempontból az új API olyan funkciókat tesz lehetővé, mint például a gépi tanulási technikák alkalmazása az objektumok valós idejű azonosítására vagy megjegyzéseire, vagy olyan effektusok hozzáadására, mint a háttér kivágása a kódolás előtt vagy a kodek általi dekódolás után.
    • Az erőforrások csomagokba való csomagolásának képessége (Web Bundle) a nagyszámú kísérőfájl (CSS-stílusok, JavaScript, képek, iframe-ek) hatékonyabb betöltésének megszervezése érdekében. A JavaScript fájlok csomagjainak (webpack) meglévő támogatásának hiányosságai közül, amelyeket a Web Bundle igyekszik kiküszöbölni: maga a csomag, de az összetevői nem, a HTTP-gyorsítótárba kerülhetnek; a fordítás és a végrehajtás csak a csomag teljes letöltése után kezdődhet meg; A további erőforrásokat, például a CSS-t és a képeket JavaScript-karakterláncok formájában kell kódolni, ami növeli a méretet, és újabb elemzési lépést igényel.
    • A WebAssembly kivételkezelésének támogatása.
  • Stabilizálta a Declarative Shadow DOM API-t, hogy új gyökérágakat hozzon létre a Shadow DOM-ban, például egy importált harmadik féltől származó elemstílus és a hozzá tartozó DOM-alág elválasztásához a fő dokumentumtól. A javasolt deklaratív API lehetővé teszi, hogy csak HTML-t használjon a DOM-ágak rögzítésének feloldásához anélkül, hogy JavaScript-kódot kellene írnia.
  • Az aspect-ratio CSS tulajdonság, amely lehetővé teszi a képarány explicit kötését bármely elemhez (a hiányzó méret automatikus kiszámításához, ha csak a magasságot vagy a szélességet adjuk meg), megvalósítja az értékek interpolálásának lehetőségét az animáció során (sima átmenet egyből képarány a másikhoz).
  • A „:state()” pszeudoosztályon keresztül hozzáadtuk az egyéni HTML-elemek állapotának tükrözését a CSS-ben. A funkcionalitás analóg módon valósul meg a szabványos HTML-elemek azon képességével, hogy módosítsák állapotukat a felhasználói interakciótól függően.
  • A „appearance” CSS-tulajdonság mostantól támogatja az „auto” értéket, amely alapértelmezés szerint az és a , Android platformon pedig ezenkívül az , , , és .
  • A „clip” érték támogatása hozzáadásra került a „túlcsordulás” CSS-tulajdonsághoz, ha be van állítva, a blokkon túlnyúló tartalom a blokk megengedett túlcsordulási határáig le van vágva görgetés lehetősége nélkül. Az az érték, amely meghatározza, hogy a tartalom meddig terjedhet túl a doboz tényleges határán a kivágás megkezdése előtt, az új CSS-tulajdonságon keresztül, az „overflow-clip-margin” beállítással van beállítva. A „túlcsordulás: rejtett”-hez képest a „túlcsordulás: klip” használata jobb teljesítményt tesz lehetővé.
    Chrome 90. kiadásChrome 90. kiadás
  • A Feature-Policy HTTP fejlécet egy új Permissions-Policy fejléc váltotta fel, amely szabályozza az engedélyek delegálását és a speciális funkciók engedélyezését, amely magában foglalja a strukturált mezőértékek támogatását (például most megadhatja a "Permissions-Policy: geolocation" =()" helyett "Feature- Policy: geolocation 'none'").
  • Megerősített védelem a protokollpufferek használata ellen a processzorokban az utasítások spekulatív végrehajtása által okozott támadások esetén. A védelmet úgy valósítják meg, hogy hozzáadják az „application/x-protobuffer” MIME-típust a soha nem szippantott MIME-típusok listájához, amelyet a Cross-Origin-Read-Blocking mechanizmus dolgoz fel. Korábban az „application/x-protobuf” MIME típus már szerepelt egy hasonló listában, de az „application/x-protobuffer” kimaradt.
  • A File System Access API megvalósítja azt a képességet, hogy a fájl aktuális pozícióját a végén túlra tolja, és a keletkező rést nullákkal tölti ki a FileSystemWritableFileStream.write() híváson keresztül történő későbbi írás során. Ez a funkció lehetővé teszi ritka fájlok létrehozását üres szóközökkel, és jelentősen leegyszerűsíti a fájlfolyamokba való írás megszervezését az adatblokkok rendezetlen érkezésével (például a BitTorrentben ezt gyakorolják).
  • Hozzáadott StaticRange konstruktor könnyű tartománytípusok megvalósításával, amelyek nem igénylik az összes társított objektum frissítését minden alkalommal, amikor a DOM fa változik.
  • Megvalósította a szélességi és magassági paraméterek megadását a elemen belül megadott elemekhez. Ez a funkció lehetővé teszi a elemek képarányának kiszámítását, hasonlóan ahhoz, ahogy az az , és esetében történik.
  • Az RTP-adatcsatornák nem szabványos támogatása megszűnt a WebRTC-ből, és helyette SCTP-alapú adatcsatornák használata javasolt.
  • A navigator.plugins és navigator.mimeTypes tulajdonságok mostantól mindig üres értéket adnak vissza (a Flash-támogatás megszűnése után ezekre a tulajdonságokra már nem volt szükség).
  • A webfejlesztőknek szánt eszközök nagy részét apró fejlesztések hajtották végre, és egy új CSS hibakereső eszköz, a flexbox került hozzáadásra.
    Chrome 90. kiadás

Az új verzió az újítások és hibajavítások mellett 37 sebezhetőséget szünteti meg. A sebezhetőségek nagy részét az AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer és AFL eszközökkel végzett automatizált tesztelés eredményeként azonosították. Nem azonosítottak olyan kritikus problémát, amely lehetővé tenné a böngészővédelem minden szintjének megkerülését, és kód futtatását a rendszeren a sandbox környezeten kívül. A jelenlegi kiadás sebezhetőségeinek feltárásáért folyó pénzjutalmazó program részeként a Google 19 díjat fizetett ki 54000 20000 dollár értékben (egy 10000 5000 dolláros, egy 3000 2000 dolláros, két 1000 500 dolláros, három 6 XNUMX dolláros, egy XNUMX XNUMX dolláros és XNUMX négyes, XNUMX dollár XNUMX díjat). ). A XNUMX jutalom nagysága még nincs meghatározva.

Külön megjegyzendő, hogy tegnap, a 89.0.4389.128-as korrekciós kiadás megalkotása után, de a Chrome 90 megjelenése előtt egy újabb exploit került nyilvánosságra, amely egy új, 0 napos sebezhetőséget használt, amelyet a Chrome 89.0.4389.128 nem javítottak ki. . Még nem világos, hogy ez a probléma megoldódott-e a Chrome 90-ben. Az első esethez hasonlóan a kihasználás csak egy sebezhetőséget takar, és nem tartalmaz kódot a sandbox elkülönítésének megkerülésére (ha a Chrome-ot a „--no-sandbox” jelzővel futtatja , a kizsákmányolás akkor történik, amikor egy weboldal megnyitása Windows platformon lehetővé teszi a Jegyzettömb futtatását). Az új kizsákmányoláshoz kapcsolódó sebezhetőség a WebAssembly technológiát érinti.

Forrás: opennet.ru

Hozzászólás