Izdaja Chrome 90

Google je predstavil izdajo spletnega brskalnika Chrome 90. Hkrati je na voljo stabilna izdaja brezplačnega projekta Chromium, ki služi kot osnova Chroma. Brskalnik Chrome se odlikuje po uporabi Googlovih logotipov, prisotnosti sistema za pošiljanje obvestil v primeru zrušitve, modulov za predvajanje zaščitene video vsebine (DRM), sistema za samodejno nameščanje posodobitev in prenosa parametrov RLZ pri iskanju. Naslednja izdaja Chroma 91 je predvidena za 25. maj.

Ključne spremembe v Chromu 90:

  • Vsi uporabniki imajo privzeto omogočeno odpiranje spletnih mest prek HTTPS, ko v naslovno vrstico vnašajo imena gostiteljev. Na primer, ko vnesete gostitelja example.com, se bo privzeto odprlo spletno mesto https://example.com in če se pri odpiranju pojavijo težave, se bo povrnilo na http://example.com. Za nadzor uporabe privzetega »https://« je predlagana nastavitev »chrome://flags#omnibox-default-typed-navigations-to-https«.
  • Zdaj je mogoče oknom dodeliti različne oznake, da jih vizualno ločite na plošči namizja. Podpora za spreminjanje imena okna bo poenostavila organizacijo dela pri uporabi ločenih oken brskalnika za različna opravila, na primer pri odpiranju ločenih oken za delovna opravila, osebne interese, zabavo, odložene materiale itd. Ime se spremeni prek elementa »Dodaj naslov okna« v kontekstnem meniju, ki se prikaže, ko z desno miškino tipko kliknete prazno območje v vrstici z zavihki. Po spremembi imena v aplikacijski plošči se namesto imena mesta iz aktivnega zavihka prikaže izbrano ime, kar je lahko uporabno pri odpiranju istih mest v različnih oknih, povezanih z ločenimi računi. Povezava se ohranja med sejami in po ponovnem zagonu bodo okna obnovljena z izbranimi imeni.
    Izdaja Chrome 90
  • Dodana možnost, da skrijete »Seznam za branje«, ne da bi morali spremeniti nastavitve v »chrome://flags« (»chrome://flags#read-later«). Če želite skriti, lahko zdaj uporabite možnost »Pokaži seznam za branje« na dnu kontekstnega menija, ki se prikaže, ko z desno miškino tipko kliknete vrstico z zaznamki. Naj vas spomnimo, da se v zadnji izdaji, ko nekateri uporabniki kliknejo na zvezdico v naslovni vrstici, poleg gumba »Dodaj zaznamek« prikaže še drugi gumb »Dodaj na bralni seznam« in v desnem kotu plošči z zaznamki se prikaže meni »Seznam za branje«, v katerem so navedene vse strani, ki so bile predhodno dodane na seznam. Ko odprete stran s seznama, je označena kot prebrana. Strani na seznamu lahko tudi ročno označite kot prebrane ali neprebrane ali jih odstranite s seznama.
  • Dodana podpora za segmentacijo omrežja za zaščito pred metodami sledenja premikom uporabnikov med spletnimi mesti na podlagi shranjevanja identifikatorjev na področjih, ki niso namenjena trajnemu shranjevanju informacij (»Superpiškotki«). Ker so predpomnjeni viri shranjeni v skupnem imenskem prostoru, lahko eno mesto ugotovi, da drugo mesto nalaga vire, tako da preveri, ali je ta vir v predpomnilniku, ne glede na izvorno domeno. Zaščita temelji na uporabi segmentacije omrežja (Network Partitioning), katere bistvo je, da v deljene predpomnilnike doda dodatno vezavo zapisov na domeno, s katere se odpre glavna stran, kar omeji pokritost predpomnilnika samo za skripte za sledenje gibanju. na trenutno spletno mesto (skript iz okvirja iframe ne bo mogel preveriti, ali je bil vir prenesen z drugega mesta). Cena segmentacije je zmanjšanje učinkovitosti predpomnjenja, kar vodi do rahlega povečanja časa nalaganja strani (največ za 1.32 %, vendar za 80 % spletnih mest za 0.09-0.75 %).
  • Črni seznam omrežnih vrat, za katere je blokirano pošiljanje zahtev HTTP, HTTPS in FTP, je bil dopolnjen za zaščito pred napadi NAT slipstreaming, ki omogoča, da ob odpiranju spletne strani, ki jo je napadalec posebej pripravil v brskalniku, vzpostavi omrežje povezava iz napadalčevega strežnika na katera koli vrata UDP ali TCP v uporabnikovem sistemu kljub uporabi notranjega obsega naslovov (192.168.xx, 10.xxx). Na seznam prepovedanih vrat dodana 554 (protokol RTSP) in 10080 (uporablja se v Amanda backup in VMWare vCenter). Prej so bila vrata 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 in 6566 že blokirana.
  • Dodana začetna podpora za odpiranje dokumentov PDF z obrazci XFA v brskalniku.
  • Za nekatere uporabnike je bil aktiviran nov razdelek z nastavitvami »Chromove nastavitve > Zasebnost in varnost > Zasebni peskovnik«, ki vam omogoča upravljanje parametrov API-ja FLoC, katerih namen je določiti kategorijo uporabniških interesov brez identifikacije posameznika in brez sklicevanja na zgodovino obiskov določenih spletnih mest.
  • Jasnejše obvestilo s seznamom dovoljenih dejanj se zdaj prikaže, ko se uporabnik poveže s profilom, za katerega je omogočeno centralizirano upravljanje.
  • Vmesnik za zahteve po dovoljenjih je postal manj vsiljiv. Zahteve, ki jih uporabnik verjetno ne bo odobril, so zdaj samodejno blokirane z ustreznim indikatorjem, prikazanim v naslovni vrstici, s katerim lahko uporabnik odpre vmesnik za upravljanje dovoljenj za posamezno mesto.
    Izdaja Chrome 90
  • Podpora za razširitve Intel CET (Intel Control-flow Enforcement Technology) je vključena za zaščito strojne opreme pred izkoriščanji, zgrajeno s tehnikami povratno usmerjenega programiranja (ROP, Return-Oriented Programming).
  • Delo na prehodu brskalnika na uporabo vključujoče terminologije se nadaljuje. Datoteka "master_preferences" je bila preimenovana v "initial_preferences", da ne bi prizadeli čustev uporabnikov, ki besedo "master" razumejo kot namig o nekdanjem suženjstvu njihovih prednikov. Da bi ohranili združljivost, bo podpora za »master_preferences« nekaj časa ostala v brskalniku. Prej se je brskalnik že znebil uporabe besed "bela lista", "črna lista" in "domači".
  • V različici Android, ko je omogočen način varčevanja s prometom “Lite”, se bitna hitrost pri prenosu videa ob povezavi prek omrežij mobilnih operaterjev zmanjša, kar bo znižalo stroške uporabnikom, ki imajo vključene tarife glede na promet. Način »Lite« omogoča tudi stiskanje slik, zahtevanih iz javno dostopnih virov (ki ne zahtevajo preverjanja pristnosti) prek HTTPS.
  • Dodan kodirnik video formata AV1, posebej optimiziran za uporabo v videokonferencah, ki temeljijo na protokolu WebRTC. Uporaba AV1 v videokonferencah omogoča povečanje učinkovitosti stiskanja in omogoča oddajanje na kanalih s pasovno širino 30 kbit/s.
  • V JavaScriptu objekti Array, String in TypedArrays izvajajo metodo at(), ki vam omogoča uporabo relativnega indeksiranja (relativni položaj je določen kot indeks matrike), vključno z določanjem negativnih vrednosti glede na konec (na primer "arr.at(-1)" bo vrnil zadnji element matrike).
  • JavaScript je dodal lastnost ».indices« za regularne izraze, ki vsebuje matriko z začetnimi in končnimi položaji skupin ujemanj. Lastnost se izpolni le pri izvajanju regularnega izraza z zastavico "/d". const re = /(a)(b)/d; const m = re.exec('ab'); console.log(m.indices[0]); // 0 — vse skupine ujemanja // → [0, 2] console.log(m.indices[1]); // 1 je prva skupina ujemanj // → [0, 1] console.log(m.indices[2]); // 2 - druga skupina ujemanj // → [1, 2]
  • Učinkovitost »super« lastnosti (na primer super.x), za katere je omogočen vgrajeni predpomnilnik, je bila optimizirana. Zmogljivost uporabe »super« je zdaj blizu zmogljivosti dostopanja do običajnih lastnosti.
  • Klicanje funkcij WebAssembly iz JavaScripta je bilo znatno pospešeno zaradi uporabe vgrajenega uvajanja. Ta optimizacija za zdaj ostaja poskusna in zahteva izvajanje z zastavico »-turbo-inline-js-wasm-calls«.
  • Dodan API za zaznavanje globine WebXR, ki vam omogoča, da določite razdaljo med objekti v uporabnikovem okolju in uporabnikovo napravo, na primer za ustvarjanje bolj realističnih aplikacij razširjene resničnosti. Naj vas spomnimo, da API WebXR omogoča poenotenje dela z različnimi razredi naprav za navidezno resničnost, od stacionarnih 3D čelad do rešitev, ki temeljijo na mobilnih napravah.
  • Funkcija WebXR AR Lighting Estimation je bila stabilizirana, kar omogoča sejam WebXR AR, da določijo parametre ambientalne osvetlitve, da se modelom zagotovi bolj naraven videz in boljša integracija z uporabnikovim okoljem.
  • Način Origin Trials (eksperimentalne funkcije, ki zahtevajo ločeno aktivacijo) dodaja več novih API-jev, ki so trenutno omejeni na platformo Android. Origin Trial pomeni zmožnost dela z navedenim API-jem iz aplikacij, prenesenih z lokalnega gostitelja ali 127.0.0.1, ali po registraciji in prejemu posebnega žetona, ki je veljaven omejen čas za določeno spletno mesto.
    • Metoda getCurrentBrowsingContextMedia(), ki omogoča zajem video toka MediaStream, ki odraža vsebino trenutnega zavihka. Za razliko od podobne metode getDisplayMedia() se pri klicu getCurrentBrowsingContextMedia() uporabniku prikaže preprosto pogovorno okno za potrditev ali blokiranje operacije prenosa videa z vsebino zavihka.
    • API za vstavljive tokove, ki omogoča manipulacijo neobdelanih medijskih tokov, ki se prenašajo prek API-ja MediaStreamTrack, kot so podatki o kameri in mikrofonu, rezultati zajemov zaslona ali podatki o vmesnem dekodiranju kodekov. Vmesniki WebCodec se uporabljajo za predstavitev neobdelanih okvirjev in tok se generira podobno kot API WebRTC Insertable Streams generira na podlagi RTCPeerConnections. S praktične strani novi API omogoča funkcionalnost, kot je uporaba tehnik strojnega učenja za prepoznavanje ali označevanje predmetov v realnem času ali dodajanje učinkov, kot je izrezovanje ozadja pred kodiranjem ali po dekodiranju s kodekom.
    • Možnost pakiranja virov v pakete (Web Bundle) za organiziranje učinkovitejšega nalaganja velikega števila spremljajočih datotek (slogi CSS, JavaScript, slike, iframes). Med pomanjkljivostmi obstoječe podpore za pakete za datoteke JavaScript (webpack), ki jih skuša odpraviti Web Bundle: v predpomnilniku HTTP lahko konča sam paket, ne pa njegovi sestavni deli; prevajanje in izvajanje se lahko začne šele, ko je paket v celoti prenesen; Dodatni viri, kot so CSS in slike, morajo biti kodirani v obliki nizov JavaScript, kar poveča velikost in zahteva še en korak razčlenjevanja.
    • Podpora za obravnavanje izjem v WebAssembly.
  • Stabiliziran API za deklarativni senčni DOM za ustvarjanje novih korenskih vej v senčnem DOM-u, na primer za ločevanje uvoženega sloga elementa tretje osebe in njegove povezane podveje DOM od glavnega dokumenta. Predlagani deklarativni API vam omogoča uporabo samo HTML za odpenjanje vej DOM, ne da bi morali pisati kodo JavaScript.
  • Lastnost CSS razmerja stranic, ki vam omogoča, da eksplicitno povežete razmerje stranic s katerim koli elementom (da samodejno izračunate manjkajočo velikost, ko podate samo višino ali širino), implementira možnost interpolacije vrednosti med animacijo (gladek prehod iz enega razmerje stranic do drugega).
  • Dodana možnost odražanja stanja elementov HTML po meri v CSS prek psevdorazreda »:state()«. Funkcionalnost je implementirana po analogiji s sposobnostjo standardnih elementov HTML, da spremenijo svoje stanje glede na interakcijo uporabnika.
  • Lastnost CSS »appearance« zdaj podpira vrednost »auto«, ki je privzeto nastavljena za in , na platformi Android pa še dodatno za , , , in .
  • Podpora za vrednost »clip« je bila dodana lastnosti CSS »overflow«, ko je nastavljena, je vsebina, ki sega čez blok, odrezana do meje dovoljenega preliva bloka brez možnosti drsenja. Vrednost, ki določa, kako daleč lahko vsebina sega čez dejansko mejo polja, preden se začne izrezovanje, je nastavljena prek nove lastnosti CSS "overflow-clip-margin". V primerjavi s "overflow: hidden" uporaba "overflow: clip" omogoča boljšo zmogljivost.
    Izdaja Chrome 90Izdaja Chrome 90
  • Glava HTTP Feature-Policy je bila nadomeščena z novo glavo Permissions-Policy za nadzor prenosa dovoljenj in omogočanje naprednih funkcij, ki vključuje podporo za vrednosti strukturiranih polj (na primer, zdaj lahko podate »Permissions-Policy: geolocation =()« namesto »Feature- Policy: geolocation 'none'«).
  • Okrepljena zaščita pred uporabo medpomnilnikov protokola za napade, ki jih povzroči špekulativno izvajanje navodil v procesorjih. Zaščita se izvede z dodajanjem vrste MIME »application/x-protobuffer« na seznam nikoli prevohanih vrst MIME, ki se obdeluje prek mehanizma Cross-Origin-Read-Blocking. Prej je bil tip MIME »application/x-protobuf« že vključen na podoben seznam, vendar je bil »application/x-protobuffer« izpuščen.
  • API za dostop do datotečnega sistema implementira zmožnost premikanja trenutnega položaja v datoteki čez njen konec, tako da nastalo vrzel zapolni z ničlami ​​med poznejšim pisanjem prek klica FileSystemWritableFileStream.write(). Ta funkcija vam omogoča ustvarjanje redkih datotek s praznimi prostori in bistveno poenostavlja organizacijo pisanja v datotečne tokove z neurejenim prihodom podatkovnih blokov (to se na primer izvaja v BitTorrentu).
  • Dodan konstruktor StaticRange z implementacijo lahkih tipov Range, ki ne zahtevajo posodabljanja vseh povezanih objektov vsakič, ko se spremeni drevo DOM.
  • Implementirana možnost določanja parametrov širine in višine za elemente določen znotraj elementa . Ta funkcija vam omogoča izračun razmerja stranic za elemente , po analogiji s tem, kako se to dela za , in .
  • Nestandardizirana podpora za podatkovne kanale RTP je bila odstranjena iz WebRTC, zato je priporočljiva uporaba podatkovnih kanalov, ki temeljijo na SCTP.
  • Lastnosti navigator.plugins in navigator.mimeTypes zdaj vedno vrneta prazno vrednost (po prenehanju podpore za Flash te lastnosti niso bile več potrebne).
  • Velik del majhnih izboljšav je bil narejen na orodjih za spletne razvijalce in dodano je bilo novo orodje za odpravljanje napak CSS, flexbox.
    Izdaja Chrome 90

Poleg novosti in popravkov napak nova različica odpravlja 37 ranljivosti. Številne ranljivosti so bile ugotovljene kot rezultat avtomatiziranega testiranja z orodji AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer in AFL. Ugotovljene niso bile nobene kritične težave, ki bi omogočale obhod vseh ravni zaščite brskalnika in izvajanje kode v sistemu zunaj okolja peskovnika. V okviru programa denarnega nagrajevanja za odkrivanje ranljivosti za trenutno izdajo je Google izplačal 19 nagrad v vrednosti 54000 $ (eno nagrado 20000 $, eno nagrado 10000 $, dve nagradi 5000 $, tri nagrade 3000 $, eno nagrado 2000 $, eno nagrado 1000 $ in štiri nagrade 500 $ ).). Velikost 6 nagrad še ni določena.

Ločeno je mogoče opozoriti, da je bil včeraj, po oblikovanju popravne izdaje 89.0.4389.128, vendar pred izdajo Chroma 90, objavljen še en izkoriščanje, ki je uporabil novo 0-dnevno ranljivost, ki ni bila odpravljena v Chromu 89.0.4389.128 . Ni še jasno, ali je bila ta težava odpravljena v Chromu 90. Kot v prvem primeru, izkoriščanje pokriva samo eno ranljivost in ne vsebuje kode za obhod izolacije peskovnika (pri izvajanju Chroma z zastavico »--no-sandbox« , do izkoriščanja pride, ko odpiranje spletne strani na platformi Windows omogoča zagon Beležnice). Ranljivost, povezana z novim izkoriščanjem, vpliva na tehnologijo WebAssembly.

Vir: opennet.ru

Dodaj komentar