Izdanje Chrome 90

Tvrtka Google predstavila je izdanja web preglednika Chrome 90. U isto vrijeme dostupan je stabilni pregled slobodnog projekta Chromium, koji je temelj Chromea. Preglednik Chrome se razlikuje po korištenju Googleovih logotipa, sustava slanja obavijesti u slučaju kvara, modulima za reprodukciju zaštićenog video sadržaja (DRM), automatskom sustavu instalacije ažuriranja i prijenosu RLZ parametara prilikom pretraživanja. Sljedeće izdanje Chrome 91 zakazano je za 25. svibnja.

Glavne promjene u Chrome 90:

  • Za sve korisnike omogućeno je otvaranje web stranica prema zadanim postavkama putem HTTPS-a prilikom unosa imena hostova u adresnu traku. Na primjer, pri unosu hosta example.com prema zadanim postavkama otvorit će se web stranica https://example.com, a ako nastanu problemi pri otvaranju, prebacit će se na http://example.com. Za upravljanje korištenjem prema zadanim postavkama 'https://' predložena je postavka 'chrome://flags#omnibox-default-typed-navigations-to-https'.
  • Implementirana je mogućnost dodjeljivanja različitih oznaka prozorima za njihovo jasnije razdvajanje na radnoj površini. Podrška za promjenu imena prozora olakšat će organizaciju rada prilikom korištenja zasebnih pregledničkih prozora za različite zadatke, na primjer, prilikom otvaranja različitih prozora za radne zadatke, osobne interese, zabavu, odgodene materijale itd. Ime se mijenja putem opcije 'Dodaj naziv prozora' u kontekstnom izborniku koji se pojavljuje desnim klikom na prazno područje u traci kartica. Nakon promjene imena, na traci aplikacija umjesto naziva web stranice aktivne kartice prikazivat će se odabrano ime, što može biti korisno prilikom otvaranja identičnih web stranica u različitim prozorima vezanim uz odvojene račune. Ova povezanost se čuva između sesija, a nakon ponovnog pokretanja prozora, prozori će se obnoviti s odabranim imenima.
    Izdanje Chrome 90
  • Dodana je mogućnost skrivanja 'Popisa za čitanje' bez potrebe za promjenom postavki u 'chrome://flags' ('chrome://flags#read-later'). Sada se za skrivanje može koristiti opcija 'Prikaži popis za čitanje' na dnu kontekstnog izbornika koji se prikazuje desnim klikom na traci oznaka. Podsjećamo, u prošlom izdanju kod nekih korisnika, pritiskom na zvjezdicu u adresnoj traci osim gumba 'Dodaj oznaku' pojavljuje se drugi gumb 'Dodaj u popis za čitanje', a u desnom kutu trake oznaka pojavljuje se izbornik 'Popis za čitanje' u kojem su navedene sve prethodno dodane stranice. Kada se stranica otvori iz popisa, označava se kao pročitana. Stranice u popisu također se mogu ručno označiti kao pročitane ili nepročitane ili ukloniti iz popisa.
  • Dodana je podrška za segmentaciju mreže kako bi se zaštitili od metoda praćenja kretanja korisnika između web stranica koje se temelje na pohranjivanju identifikatora u područjima koja nisu predviđena za trajno pohranjivanje informacija ('Supercookies'). Kako se resursi u predmemoriji pohranjuju u zajedničkom prostoru imena, neovisno o izvornoj domeni, jedna web stranica može odrediti učitavanje resursa s druge web stranice provjerom postojanja tog resursa u predmemoriji. Zaštita se temelji na primjeni segmentacije mreže (Network Partitioning), čija je suština dodavanje dodatne povezanosti zapisa u zajedničke predmemorije. domen, iz kojeg je otvorena glavna stranica, što ograničava područje obuhvata predmemorije za skripte praćenja kretanja isključivo na trenutnu web stranicu (skripta iz iframe-a ne može provjeriti je li resurs učitan s druge web stranice). Cijena segmentacije je smanjenje učinkovitosti predmemoriranja, što dovodi do neznatnog povećanja vremena učitavanja stranice (najviše 1,32%, ali za 80% web stranica na 0,09-0,75%).
  • Proširen je crni popis mrežnih portova za koje se blokira slanje HTTP, HTTPS i FTP zahtjeva u svrhu zaštite od napada NAT slipstreaming, koji omogućuje uspostavljanje mrežne veze s poslužitelja napad na bilo koji UDP ili TCP port na korisničkom sustavu, bez obzira na korištenje unutarnjeg raspona adresa (192.168.x.x, 10.x.x.x). Na popis zabranjenih portova dodani su 554 (RTSP protokol) i 10080 (koristi se u Amanda backup i VMWare vCenter). Prije su već bili blokirani portovi 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 i 6566.
  • Dodana je osnovna podrška za otvaranje PDF dokumenata s XFA oblicima u pregledniku.
  • Za dio korisnika aktivirana je nova sekcija postavki «Chrome Settings > Privacy and security > Privacy sandbox», koja omogućuje upravljanje API FLoC postavkama, usmjerenim na određivanje kategorije interesa korisnika bez provođenja individualne identifikacije i bez povezivanja s poviješću pregledavanja određenih web stranica.
  • Osigurano je prikazivanje jasnije obavijesti s popisom dopuštenih radnji, koja se prikazuje kada se korisnik spoji na profil za koji je omogućeno centralizirano upravljanje.
  • Smanjen je nametljivost sučelja za zahtjev ovlasti. Zahtjevi koje korisnik vjerojatno neće odobriti sada se automatski blokiraju uz prikaz odgovarajuće oznake u adresnoj traci, putem koje korisnik može pristupiti sučelju za upravljanje ovlastima vezanim uz svaku web stranicu.
    Izdanje Chrome 90
  • Uključena je podrška za Intel CET (Intel Control-flow Enforcement Technology) za hardversku zaštitu od izvršavanja eksploita temeljenih na tehnikama povratno-orijentiranog programiranja (ROP, Return-Oriented Programming).
  • Nastavljena je suradnja na prevođenju pregledača na korištenje inkluzivne terminologije. Datoteka «master_preferences» preimenovana je u «initial_preferences», kako ne bi povrijedila osjećaje korisnika koji doživljavaju riječ master kao aluziju na nekadašnje ropstvo njihovih predaka. Za očuvanje kompatibilnosti, podrška za «master_preferences» još će neko vrijeme ostati u pregledaču. Preglednik se ranije već oslobodio korištenja riječi «whitelist», «blacklist» i «native».
  • U Android verziji, kada je uključeno Lite način rada za štednju podataka, implementirano je smanjenje bitratea prilikom učitavanja videa na mobilnim mrežama, što će smanjiti troškove korisnika koji koriste tarife koje računaju podatke. U Lite načinu rada također je osigurano kompresiranje slika dobivenih iz javno dostupnih izvora (koji ne zahtijevaju autentifikaciju) putem HTTPS-a.
  • Dodana je AV1 video format kodera posebno optimizirana za korištenje u video konferencijama temeljenim na WebRTC protokolu. Korištenje AV1 u video konferencijama povećava efikasnost kompresije i omogućuje prijenos na kanalima s propusnošću od 30 kbit/s.
  • U JavaScript-u, u objektima Array, String i TypedArrays, implementirana je metoda at(), koja omogućuje korištenje relativne indeksacije (relativna pozicija se koristi kao indeks niza), uključujući negativne vrijednosti u odnosu na kraj (na primjer, «arr.at(-1)» će vratiti posljednji element niza).
  • U JavaScript-u za regularne izraze dodana je svojstvo «.indices», koje sadrži niz s početnim i završnim pozicijama grupa podudaranja. Svojstvo se popunjava samo kada se regularni izraz koristi 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 — prva grupa podudaranja // → [0, 1] console.log(m.indices[2]); // 2 — druga grupa podudaranja // → [1, 2]
  • Optimizirana je učinkovitost svojstava «super» (na primjer, super.x), za koje je aktiviran inline cache. Učinkovitost korištenja «super» sada je bliska učinkovitosti pristupa običnim svojstvima.
  • U调用 WebAssembly funkcija iz JavaScript-a znatno je ubrzana zahvaljujući primjeni inline ekspanzije. Ova optimizacija ostaje eksperimentalna i zahtijeva pokretanje s oznakom «—turbo-inline-js-wasm-calls».
  • Dodana je API WebXR Depth Sensing koja omogućuje određivanje udaljenosti između objekata u korisnikovom okruženju i uređajem, primjerice, za izradu realističnijih aplikacija za proširenu stvarnost. Podsjećamo da API WebXR omogućuje unifikaciju rada s različitim klasama uređaja virtualne stvarnosti, od stacionarnih 3D naočala do rješenja temeljenih na mobilnim uređajima.
  • Stabilizirana je mogućnost WebXR AR Lighting Estimation koja omogućuje određivanje parametara okolnog osvjetljenja tijekom WebXR sesija za proširenu stvarnost, kako bi modelima dala prirodniji izgled i omogućila skladniju integraciju s korisnikovim okruženjem.
  • U modu Origin Trials (eksperimentalne mogućnosti koje zahtijevaju zasebnu aktivaciju) dodano je nekoliko novih API-ja koji su za sada ograničeni na Android platformu. Origin Trial podrazumijeva mogućnost rada s specificiranim API-jem iz aplikacija učitanih s localhost ili 127.0.0.1, ili nakon registracije i dobivanja posebnog tokena koji vrijedi ograničeno vrijeme za određenu web stranicu.
    • Metoda getCurrentBrowsingContextMedia() omogućava organizaciju snimanja video streama MediaStream koji prikazuje sadržaj trenutne kartice. Za razliku od slične metode getDisplayMedia(), pri pozivu getCurrentBrowsingContextMedia() korisniku se prikazuje jednostavan dijalog za potvrdu ili blokiranje operacije prijenosa videa s sadržajem kartice.
    • API Insertable Streams omogućuje manipulaciju neobrađenim (raw) multimedijskim streamovima koji se prenose putem API MediaStreamTrack, kao što su podaci s kamere i mikrofona, rezultat snimanja ekrana ili međupodaci dekodiranja od strane kodeka. Za prikaz neobrađenih okvira koriste se WebCodec sučelja, nakon čega se formira stream sličan onome što API WebRTC Insertable Streams generira na temelju RTCPeerConnections. S praktične strane, novi API omogućuje implementaciju funkcionalnosti, kao što su primjena metoda strojnog učenja za identifikaciju ili anotaciju objekata u stvarnom vremenu ili za dodavanje efekata, poput uklanjanja pozadine, prije kodiranja ili nakon dekodiranja od strane kodeka.
    • Mogućnost pakiranja resursa u pakete (Web Bundle) za organizaciju učinkovitijeg učitavanja velikog broja povezanih datoteka (CSS stilovi, JavaScript, slike, iframe). Među nedostacima postojeće podrške paketa za JavaScript datoteke (webpack), koje se nastoji riješiti u Web Bundle: u HTTP predmemoriji može se zadržati sam paket, ali ne i njegove sastavne dijelove; kompilacija i izvršenje mogu započeti tek nakon potpunog učitavanja paketa; dodatni resursi, kao što su CSS i slike, moraju se kodirati u obliku JavaScript nizova, što dovodi do povećanja veličine i izvršavanja druge faze razmatranja.
    • Podrška za obradu izuzetaka u WebAssembly.
  • Stabiliziran API Declarative Shadow DOM za stvaranje novih korijenskih grana u Shadow DOM, na primjer, kako bi se odvojili uvezeni stil elementa i povezana podgrana DOM-a od glavnog dokumenta. Predloženi deklarativni API omogućava odvojenje grana DOM-a samo uz HTML bez potrebe za pisanjem JavaScript koda.
  • U CSS svojstvu aspect-ratio, koje omogućava izričito povezivanje omjera širine i visine s bilo kojim elementom (za automatsko izračunavanje nedostajuće veličine kada je navedena samo visina ili širina), implementirana je mogućnost interpolacije vrijednosti prilikom animacije (glatkog prijelaza s jednog omjera širine i visine na drugi).
  • Dodana je mogućnost odražavanja stanja vlastitih HTML elemenata (custom element) u CSS-u putem pseudos klase ‘:state()’. Funkcionalnost je realizirana po uzoru na mogućnost standardnih HTML elemenata da mijenjaju svoje stanje u zavisnosti od interakcije s korisnikom.
  • U CSS svojstvu „appearance“ uvedena je podrška za vrijednost ‘auto’, koja se prema zadanim postavkama postavlja za i , a na Android platformi dodatno za , , , i .
  • U CSS svojstvu „overflow“ dodana je podrška za vrijednost „clip“, pri čemu se, kada je postavljena, sadržaj koji izlazi izvan granica bloka isječe na granici dopuštenog preljeva bloka bez mogućnosti pomicanja. Vrijednost koja određuje koliko daleko sadržaj može izlaziti izvan stvarnih granica bloka prije nego što dođe do isječenja, postavlja se putem novog CSS svojstva „overflow-clip-margin“. U usporedbi s „overflow: hidden“, korištenje „overflow: clip“ omogućava postizanje bolje izvedbe.
    Izdanje Chrome 90Izdanje Chrome 90
  • Novi HTTP header Permissions-Policy zamijenio je stari Feature-Policy za upravljanje delegacijom ovlasti i uključivanjem naprednih funkcionalnosti, uz podršku za strukturirane vrijednosti polja (na primjer, sada se može navesti „Permissions-Policy: geolocation=()“ umjesto „Feature-Policy: geolocation 'none'“).
  • Ojačana je zaštita od korištenja Protocol Buffers za napade uzrokovane spekulativnim izvršavanjem instrukcija u procesorima. Zaštita je ostvarena dodatkom MIME tipa „application/x-protobuffer“ na listu MIME tipova koji nikada ne bi trebali biti prisluškivani (sniffed), čija obrada se odvija kroz mehanizam Cross-Origin-Read-Blocking. Ranije je MIME tip „application/x-protobuf“ već bio uključen u sličan popis, ali je MIME tip „application/x-protobuffer“ bio propušten.
  • API File System Access omogućuje pomicanje trenutne pozicije u datoteci izvan njezina kraja, popunjavajući nastalu prazninu nulama pri sljedećem upisu kroz poziv FileSystemWritableFileStream.write(). Ova mogućnost omogućuje kreiranje razrijeđenih datoteka s prazninama i značajno olakšava organizaciju upisa u datoteku pri neurednom dolasku blokova podataka (na primjer, tako se prakticira u BitTorrentu).
  • Dodana je klasa StaticRange s implementacijom laganih tipova Range koje ne zahtijevaju ažuriranje svih povezanih objekata pri svakoj promjeni DOM stabla.
  • Omogućeno je postavljanje parametara width i height za elemente <source>, navedene unutar elementa <picture>. Ova mogućnost omogućuje izračunavanje omjera širine i visine za elemente <picture>, slično onome kako je to učinjeno za <img>, <canvas> i <video>.
  • Iz WebRTC-a je uklonjena nestandardizirana podrška za RTP podatkovne kanale (RTP Data Channels), umjesto kojih se preporučuje korištenje podatkovnih kanala temeljenih na SCTP.
  • Svojstva navigator.plugins i navigator.mimeTypes sada uvijek vraćaju praznu vrijednost (nakon prestanka podrške za Flash, potreba za tim svojstvima je nestala).
  • Uvedena su brojna manja poboljšanja u alatima za web razvoj i dodat je novi alat za ispravljanje grešaka u CSS flexboxu.
    Izdanje Chrome 90

Osim novih značajki i ispravaka grešaka, nova verzija uklonila je 37 ranjivosti. Mnoge od ranjivosti otkrivene su automatiziranim testiranjem uz pomoć alata AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. Nisu otkrivene kritične probleme koji bi omogućile zaobilaženje svih razina zaštite preglednika i izvršavanje koda izvan sandbox okruženja. U okviru programa isplate novčanih nagrada za otkrivanje ranjivosti, tvrtka Google isplatila je 19 nagrada u ukupnom iznosu od 54.000 dolara (jedna nagrada od 20.000 dolara, jedna nagrada od 10.000 dolara, dvije nagrade od 5.000 dolara, tri nagrade od 3.000 dolara, jedna nagrada od 2.000 dolara, jedna od 1.000 dolara i četiri nagrade od 500 dolara). Iznos 6 nagrada još uvijek nije određen.

Osobito treba napomenuti da je jučer, nakon što je formirano korektivno izdanje 89.0.4389.128, ali prije izlaska Chromea 90, objavljen još jedan exploit koji je koristio novu 0-day ranjivost, koja nije ispravljena u Chromeu 89.0.4389.128. Još uvijek nije jasno je li ovaj problem ispravljen u Chromeu 90. Kao i u prvom slučaju, exploit pokriva samo jednu ranjivost i ne sadrži kod za zaobilaženje sandbox izolacije (pokretanjem chromea s oznakom „--no-sandbox“ exploit pri otvaranju web stranice na platformi Windows omogućava pokretanje notepada). Ranjivost povezana s novim exploitom tiče se tehnologije WebAssembly.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster