Chrome izdanje 90

Google je predstavio izdanje web preglednika Chrome 90. U isto vrijeme dostupno je stabilno izdanje besplatnog projekta Chromium koji služi kao osnova Chromea. Preglednik Chrome odlikuje se korištenjem Googleovih logotipa, prisutnošću sustava za slanje obavijesti u slučaju pada, modula za reprodukciju zaštićenog video sadržaja (DRM), sustava za automatsko instaliranje ažuriranja i prijenosa RLZ parametara prilikom pretraživanja. Sljedeće izdanje Chromea 91 zakazano je za 25. svibnja.

Ključne promjene u Chromeu 90:

  • Svim korisnicima je prema zadanim postavkama omogućeno otvaranje stranica putem HTTPS-a kada upisuju nazive hostova u adresnu traku. Na primjer, kada unesete host example.com, stranica https://example.com otvorit će se prema zadanim postavkama, a ako dođe do problema prilikom otvaranja, vratit će se na http://example.com. Za kontrolu upotrebe zadanog "https://", predlaže se postavka "chrome://flags#omnibox-default-typed-navigations-to-https".
  • Sada je moguće dodijeliti različite oznake prozorima kako bi ih vizualno odvojili na ploči radne površine. Podrška za promjenu naziva prozora pojednostavit će organizaciju rada kada koristite zasebne prozore preglednika za različite zadatke, na primjer, kada otvarate zasebne prozore za radne zadatke, osobne interese, zabavu, odgođene materijale itd. Naziv se mijenja kroz stavku "Dodaj naslov prozora" u kontekstnom izborniku koji se pojavljuje kada desnom tipkom miša kliknete prazno područje na traci kartica. Nakon promjene naziva u aplikacijskoj ploči, umjesto naziva stranice iz aktivne kartice, prikazuje se odabrani naziv, što može biti korisno prilikom otvaranja istih stranica u različitim prozorima povezanim s različitim računima. Veza se održava između sesija i nakon ponovnog pokretanja prozori će se vratiti s odabranim nazivima.
    Chrome izdanje 90
  • Dodana je mogućnost skrivanja “Popisa za čitanje” bez potrebe za mijenjanjem postavki u “chrome://flags” (“chrome://flags#read-later”). Za skrivanje sada možete koristiti opciju "Prikaži popis za čitanje" na dnu kontekstnog izbornika koji se prikazuje kada desnom tipkom miša kliknete traku oznaka. Podsjetimo, u prošlom izdanju, kada neki korisnici kliknu na zvjezdicu u adresnoj traci, osim gumba “Dodaj oznaku” pojavljuje se i drugi gumb “Dodaj na popis za čitanje”, au desnom kutu na ploči s oznakama pojavljuje se izbornik "Popis za čitanje", koji navodi sve prethodno dodane stranice na popis. Kada otvorite stranicu s popisa, ona se označava kao pročitana. Stranice na popisu također se mogu ručno označiti kao pročitane ili nepročitane ili ukloniti s popisa.
  • Dodana je podrška za segmentaciju mreže radi zaštite od metoda praćenja kretanja korisnika između stranica na temelju pohranjivanja identifikatora u područjima koja nisu namijenjena za trajno pohranjivanje informacija ("Superkolačići"). Budući da su predmemorirani resursi pohranjeni u zajedničkom imenskom prostoru, bez obzira na izvornu domenu, jedno mjesto može utvrditi da drugo mjesto učitava resurse provjerom nalazi li se taj resurs u predmemoriji. Zaštita se temelji na korištenju mrežne segmentacije (Network Partitioning), čija je suština dijeljenim predmemorijama dodati dodatno vezanje zapisa na domenu s koje se otvara glavna stranica, što ograničava pokrivenost predmemorije samo za skripte za praćenje kretanja na trenutno mjesto (skripta iz iframea neće moći provjeriti je li resurs preuzet s drugog mjesta). Cijena segmentacije je smanjenje učinkovitosti predmemoriranja, što dovodi do blagog povećanja vremena učitavanja stranice (maksimalno za 1.32%, ali za 80% stranica za 0.09-0.75%).
  • Crna lista mrežnih priključaka za koje je blokirano slanje HTTP, HTTPS i FTP zahtjeva dopunjena je radi zaštite od NAT slipstreaming napada, što omogućuje, prilikom otvaranja web stranice koju je napadač posebno pripremio u pregledniku, uspostavljanje mreže veza s napadačevog poslužitelja na bilo koji UDP ili TCP priključak na korisničkom sustavu, unatoč korištenju internog raspona adresa (192.168.x.x, 10.x.x.x). Dodan 554 (RTSP protokol) i 10080 (koristi se u Amanda backupu i VMWare vCenter) na popis zabranjenih priključaka. Ranije su portovi 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 i 6566 već bili blokirani.
  • Dodana početna podrška za otvaranje PDF dokumenata s XFA obrascima u pregledniku.
  • Za neke korisnike aktiviran je novi odjeljak postavki "Chrome Settings > Privacy and security > Privacy sandbox", koji vam omogućuje upravljanje parametrima FLoC API-ja, usmjerenih na određivanje kategorije korisničkih interesa bez pojedinačne identifikacije i bez upućivanja na povijest posjećivanja određenih stranica.
  • Jasnija obavijest s popisom dopuštenih radnji sada se prikazuje kada se korisnik spoji na profil za koji je omogućeno centralizirano upravljanje.
  • Učinio je sučelje zahtjeva za dozvolama manje nametljivim. Zahtjevi koje korisnik vjerojatno neće odobriti sada se automatski blokiraju s odgovarajućim indikatorom prikazanim u adresnoj traci, s kojim korisnik može ići na sučelje za upravljanje dopuštenjima na bazi svake stranice.
    Chrome izdanje 90
  • Podrška za Intel CET (Intel Control-flow Enforcement Technology) proširenja uključena je za zaštitu hardvera od eksploatacija izgrađenih korištenjem tehnika povratno orijentiranog programiranja (ROP, Return-Oriented Programming).
  • Nastavlja se rad na prijelazu preglednika na korištenje uključive terminologije. Datoteka "master_preferences" preimenovana je u "initial_preferences" kako bi se izbjeglo povrijeđivanje osjećaja korisnika koji riječ "master" doživljavaju kao nagovještaj o bivšem ropstvu njihovih predaka. Kako bi se održala kompatibilnost, podrška za “master_preferences” ostat će u pregledniku neko vrijeme. Prethodno se preglednik već riješio upotrebe riječi "bijela lista", "crna lista" i "nativni".
  • U verziji za Android, kada je uključen “Lite” način rada za uštedu prometa, bitrate se smanjuje prilikom preuzimanja videa pri povezivanju putem mreža mobilnih operatera, što će smanjiti troškove korisnika koji imaju uključene tarife prema prometu. "Lite" način također omogućuje kompresiju slika traženih iz javno dostupnih izvora (ne zahtijevaju provjeru autentičnosti) putem HTTPS-a.
  • Dodan AV1 koder video formata, posebno optimiziran za korištenje u videokonferencijama temeljenim na WebRTC protokolu. Korištenje AV1 u video konferencijama omogućuje povećanje učinkovitosti kompresije i pruža mogućnost emitiranja na kanalima s propusnošću od 30 kbit/s.
  • U JavaScriptu objekti Array, String i TypedArrays implementiraju metodu at(), koja vam omogućuje korištenje relativnog indeksiranja (relativna pozicija navedena je kao indeks niza), uključujući određivanje negativnih vrijednosti u odnosu na kraj (na primjer , "arr.at(-1)" će vratiti posljednji element niza).
  • JavaScript je dodao svojstvo ".indices" za regularne izraze, koji sadrži niz s početnim i završnim položajima grupa podudaranja. Svojstvo se popunjava samo prilikom izvršavanja regularnog izraza s oznakom "/d". const re = /(a)(b)/d; const m = re.exec('ab'); console.log(m.indices[0]); // 0 — sve grupe podudaranja // → [0, 2] console.log(m.indices[1]); // 1 je prva grupa podudaranja // → [0, 1] console.log(m.indices[2]); // 2 - druga grupa podudaranja // → [1, 2]
  • Izvedba "super" svojstava (na primjer, super.x) za koje je omogućena ugrađena predmemorija je optimizirana. Učinkovitost korištenja "super" sada je približna učinku pristupa uobičajenim svojstvima.
  • Pozivanje WebAssembly funkcija iz JavaScripta znatno je ubrzano zbog upotrebe ugrađene implementacije. Ova optimizacija za sada ostaje eksperimentalna i zahtijeva pokretanje s oznakom "-turbo-inline-js-wasm-calls".
  • Dodan WebXR Depth Sensing API, koji vam omogućuje određivanje udaljenosti između objekata u okruženju korisnika i uređaja korisnika, na primjer, za stvaranje realističnijih aplikacija proširene stvarnosti. Podsjetimo, WebXR API omogućuje objedinjavanje rada s različitim klasama uređaja virtualne stvarnosti, od stacionarnih 3D kaciga do rješenja temeljenih na mobilnim uređajima.
  • Značajka WebXR AR Lighting Estimation je stabilizirana, omogućujući WebXR AR sesijama određivanje parametara ambijentalnog osvjetljenja kako bi modeli dobili prirodniji izgled i bolju integraciju s okolinom korisnika.
  • Način Origin Trials (eksperimentalne značajke koje zahtijevaju zasebnu aktivaciju) dodaje nekoliko novih API-ja koji su trenutno ograničeni na platformu Android. Origin Trial podrazumijeva mogućnost rada s navedenim API-jem iz aplikacija preuzetih s localhosta ili 127.0.0.1, ili nakon registracije i primanja posebnog tokena koji vrijedi ograničeno vrijeme za određenu stranicu.
    • Metoda getCurrentBrowsingContextMedia(), koja omogućuje snimanje MediaStream video streama koji odražava sadržaj trenutne kartice. Za razliku od slične metode getDisplayMedia(), prilikom poziva getCurrentBrowsingContextMedia(), korisniku se prikazuje jednostavan dijaloški okvir za potvrdu ili blokiranje operacije prijenosa videa sa sadržajem kartice.
    • Insertable Streams API, koji vam omogućuje manipuliranje sirovim medijskim tokovima koji se prenose putem API-ja MediaStreamTrack, kao što su podaci kamere i mikrofona, rezultati snimanja zaslona ili podaci o dekodiranju međukodeka. WebCodec sučelja koriste se za predstavljanje sirovih okvira i stream se generira slično onome što WebRTC Insertable Streams API generira na temelju RTCPeerConnections. S praktične strane, novi API omogućuje funkcionalnost kao što je primjena tehnika strojnog učenja za identifikaciju ili označavanje objekata u stvarnom vremenu ili dodavanje efekata kao što je izrezivanje pozadine prije kodiranja ili nakon dekodiranja pomoću kodeka.
    • Mogućnost pakiranja resursa u pakete (Web Bundle) za organiziranje učinkovitijeg učitavanja velikog broja popratnih datoteka (CSS stilovi, JavaScript, slike, iframes). Među nedostacima postojeće podrške za pakete za JavaScript datoteke (webpack), koje Web Bundle pokušava otkloniti: sam paket, ali ne i njegovi sastavni dijelovi, mogu završiti u HTTP cacheu; kompilacija i izvođenje mogu započeti tek nakon što je paket u potpunosti preuzet; Dodatni resursi kao što su CSS i slike moraju biti kodirani u obliku JavaScript nizova, što povećava veličinu i zahtijeva još jedan korak analize.
    • Podrška za rukovanje iznimkama u WebAssemblyju.
  • Stabiliziran je Declarative Shadow DOM API za stvaranje novih korijenskih grana u Shadow DOM-u, na primjer za odvajanje uvezenog stila elementa treće strane i njegove pridružene DOM podgrane od glavnog dokumenta. Predloženi deklarativni API omogućuje vam korištenje samo HTML-a za otkvačivanje DOM grana bez potrebe za pisanjem JavaScript koda.
  • CSS svojstvo omjera širine i visine, koje vam omogućuje eksplicitno vezanje omjera slike na bilo koji element (za automatski izračun veličine koja nedostaje kada navedete samo visinu ili širinu), implementira mogućnost interpolacije vrijednosti tijekom animacije (glatki prijelaz s jedne omjer slike u odnosu na drugu).
  • Dodana je mogućnost odražavanja stanja prilagođenih HTML elemenata u CSS-u putem pseudo-klase “:state()”. Funkcionalnost je implementirana po analogiji sa sposobnošću standardnih HTML elemenata da mijenjaju svoje stanje ovisno o interakciji korisnika.
  • CSS svojstvo “appearance” sada podržava vrijednost 'auto', koja je prema zadanim postavkama postavljena za i , a na platformi Android dodatno za , , , i .
  • Podrška za vrijednost "clip" dodana je CSS svojstvu "overflow", kada je postavljeno, sadržaj koji se proteže izvan bloka ošišan je do granice dopuštenog preljeva bloka bez mogućnosti pomicanja. Vrijednost koja određuje koliko se daleko sadržaj može proširiti izvan stvarne granice okvira prije početka izrezivanja postavljena je putem novog CSS svojstva "overflow-clip-margin". U usporedbi s "overflow: hidden", korištenje "overflow: clip" omogućuje bolju izvedbu.
    Chrome izdanje 90Chrome izdanje 90
  • HTTP zaglavlje Feature-Policy zamijenjeno je novim zaglavljem Permissions-Policy za kontrolu delegiranja dopuštenja i omogućavanje naprednih značajki, što uključuje podršku za strukturirane vrijednosti polja (na primjer, sada možete navesti "Permissions-Policy: geolocation =()" umjesto "Feature- Policy: geolocation 'none'").
  • Pojačana zaštita od korištenja međuspremnika protokola za napade uzrokovane spekulativnim izvršavanjem instrukcija u procesorima. Zaštita se provodi dodavanjem vrste MIME “application/x-protobuffer” na popis tipova MIME koji se nikad ne njuškaju, što se obrađuje putem mehanizma Cross-Origin-Read-Blocking. Prethodno je MIME tip “application/x-protobuf” već bio uključen u sličan popis, ali je “application/x-protobuffer” izostavljen.
  • File System Access API implementira mogućnost pomicanja trenutne pozicije u datoteci iza njenog kraja, ispunjavajući rezultirajuću prazninu nulama tijekom naknadnog pisanja putem FileSystemWritableFileStream.write() poziva. Ova značajka omogućuje stvaranje rijetkih datoteka s praznim prostorima i značajno pojednostavljuje organizaciju pisanja u tokove datoteka s neuređenim dolaskom blokova podataka (na primjer, to se prakticira u BitTorrentu).
  • Dodan konstruktor StaticRange s implementacijom laganih tipova Range koji ne zahtijevaju ažuriranje svih pridruženih objekata svaki put kad se DOM stablo promijeni.
  • Implementirana je mogućnost određivanja parametara širine i visine za elemente navedene unutar elementa . Ova vam značajka omogućuje izračunavanje omjera slike za elemente , slično kao što se to radi za , i .
  • Nestandardizirana podrška za RTP podatkovne kanale uklonjena je iz WebRTC-a te se umjesto toga preporučuje korištenje podatkovnih kanala temeljenih na SCTP-u.
  • Svojstva navigator.plugins i navigator.mimeTypes sada uvijek vraćaju praznu vrijednost (nakon prestanka podrške za Flash, ta svojstva više nisu bila potrebna).
  • Velik dio malih poboljšanja napravljen je u alatima za web programere i dodan je novi CSS alat za ispravljanje pogrešaka, flexbox.
    Chrome izdanje 90

Uz inovacije i ispravke pogrešaka, nova verzija uklanja 37 ranjivosti. Mnoge od ranjivosti identificirane su kao rezultat automatiziranog testiranja pomoću alata AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. Nisu identificirani kritični problemi koji bi omogućili zaobilaženje svih razina zaštite preglednika i izvršavanje koda na sustavu izvan okruženja sandboxa. Kao dio programa novčane nagrade za otkrivanje ranjivosti za trenutno izdanje, Google je isplatio 19 nagrada u vrijednosti od 54000 USD (jednu nagradu od 20000 USD, jednu nagradu od 10000 USD, dvije nagrade od 5000 USD, tri nagrade od 3000 USD, jednu nagradu od 2000 USD, jednu nagradu od 1000 USD i četiri nagrade od 500 USD ).). Veličina 6 nagrada još nije određena.

Zasebno se može primijetiti da je jučer, nakon formiranja popravnog izdanja 89.0.4389.128, ali prije izdanja Chromea 90, objavljen još jedan exploit koji je koristio novu 0-dnevnu ranjivost koja nije popravljena u Chromeu 89.0.4389.128 . Još nije jasno je li ovaj problem riješen u Chromeu 90. Kao iu prvom slučaju, eksploatacija pokriva samo jednu ranjivost i ne sadrži kod za zaobilaženje izolacije sandboxa (kada se pokreće Chrome s oznakom "--no-sandbox" , iskorištavanje se događa kada vam otvaranje web stranice na Windows platformi omogućuje pokretanje Notepada). Ranjivost povezana s novim exploitom utječe na tehnologiju WebAssembly.

Izvor: opennet.ru

Dodajte komentar