Izšla je nova različica Chrome 86 in stabilna izdaja Chromium.
Glavne spremembe v Chrome 86:
- zaščita pred nevarnim pošiljanjem vnosnih obrazcev na straneh, naloženih prek HTTPS, vendar pošiljajočih podatke prek HTTP.
- Blokiranje nevarnega nalaganja (http) izvršnih datotek je bilo dopolnjeno z blokiranjem nevarnega nalaganja arhivov (zip, iso itd.) in opozorili pri nevarnem nalaganju dokumentov (docx, pdf itd.). V naslednji izdaji pričakujemo blokiranje dokumentov in prikaz opozorila za slike, besedilne in multimedijske datoteke. Blokada je bila implementirana, ker lahko nalaganje datotek brez šifriranja služi za zlonamerne dejavnosti z zamenjavo vsebine v procesu MITM napadov.
- V privzetem kontekstnem meniju je prikazana možnost "Vedno prikazuj URL v celoti", za katero je bilo prej potrebno spremeniti nastavitve na strani about:flags. Celoten URL si je mogoče ogledati tudi z dvojnim klikom na naslovno vrstico. Spomnimo, da od različice Chrome 76 privzeto naslov ne prikazuje protokola in poddomene www. V različici Chrome 79 je bila odstranjena nastavitev za vrnitev k staremu obnašanju, vendar je bilo po nezadovoljstvu uporabnikov v različici Chrome 83 dodana nova eksperimentalna zastavica, ki je dodala točko v kontekstni meni za izklop skrivanje in prikazovanje celotnega URL-ja v vseh pogojih.
- Povrnitev pobude za ukinitev podpore za FTP. V Chromu 86 je FTP privzeto onemogočen za približno 1 % uporabnikov, v Chromu 87 pa se bo obseg onemogočanja povečal na 50 %, vendar bo podporo mogoče vrniti s pomočjo zastavice "—enable-ftp" ali "—enable-features=FtpProtocol". V Chromu 88 bo podpora za FTP popolnoma onemogočena.
- V različici za Android je bila v upravljalniku gesel uvedena preverjanja shranjenih prijav in gesel v bazi kompromitiranih računov ter izpis opozorila v primeru ugotovitve težav ali poskusa uporabe trivialnih gesel, podobno kot v različici za namizne sisteme. Preverjanje poteka po bazi, ki zajema več kot 4 milijarde kompromitiranih računov, ki so se pojavili v uhajanju uporabniških podatkov. Za ohranjanje zasebnosti se uporablja preverjanje haš-prefiksa na strani uporabnika, pri čemer se sama gesla in njihovi puni haši ne prenašajo zunaj.
- V različico za Android so prav tako preneseni gumb „Preverjanje varnosti“ (Safety check) in razširjen način zaščite pred nevarnimi spletnimi stranmi (Enhanced Safe Browsing). Gumb „Safety check“ prikazuje povzetek morebitnih težav z varnostjo, kot je uporaba kompromitiranih gesel, stanje preverjanja zlonamernih spletnih strani (Safe Browsing), prisotnost ne nameščenih posodobitev in ugotavljanje zlonamernih razširitev. Razširjen način zaščite aktivira dodatne preglede za zaščito pred ribarjenjem, zlonamerno dejavnostjo in drugimi grožnjami na spletu ter vključuje dodatno zaščito za Google račun in Google storitve (Gmail, Drive itd.). Medtem ko se v običajnem načinu Safe Browsing pregledi izvajajo lokalno na osnovi občasno naložene baze podatkov na uporabniški sistem, v Enhanced Safe Browsing informacije o straneh in prenosih v realnem času pošiljajo za preverjanje na strani Google, kar omogoča takojšnje odzivanje na grožnje takoj po njihovi ugotovitvi, brez čakanja, da se posodobi lokalna črna lista.
- Dodana je podpora za datoteko-indikator ".well-known/change-password", s pomočjo katere lahko lastniki spletnih strani določijo naslov spletnega obrazca za spremembo gesla. V primeru ugotovitve kompromitacije uporabniških podatkov Chrome zdaj takoj ponudi uporabniku obrazec za spremembo gesla, določen na podlagi informacij iz te datoteke.
- Implementirano je novo opozorilo 'Safety Tip', ki se prikaže ob odpiranju spletnih strani, katerih domene so zelo podobne drugi spletni strani in heuristika kaže, da obstaja velika verjetnost zavajanja (na primer, odprta je goog0le.com namesto google.com).
* Implementirana je podrška za predmemoriju prelaska (Back-forward cache), koja omogućava trenutni prelazak pri korišćenju dugmadi „Nazad“ i „Napred“ ili pri navigaciji kroz prethodno pregledane stranice trenutne veb stranice. Keš se aktivira putem podešavanja chrome://flags/#back-forward-cache.
- Optimizacija potrošnje resursa CPU za prozore van vidnog polja. Chrome proverava da li su prozori pregledača pokriveni drugim prozorima i isključuje renderovanje piksela u preklapajućim oblastima. Ova optimizacija je bila uključena za mali procenat korisnika u Chrome 84 i 85, a sada je aktivirana svuda. U poređenju sa prethodnim izdanjima, eliminisana je i nekompatibilnost sa virtuelizacionim sistemima, zbog koje su se prikazivale prazne bele stranice.
- Okrepljeno je zmanjšanje virov za ozadje zavihkov. Takšni zavihki zdaj ne morejo porabiti več kot 1% virov CPU in se lahko aktivirajo največ enkrat na minuto. Po petih minutah bivanja v ozadju se zavihki zamrznejo, razen zavihkov, v katerih se predvaja multimedična vsebina ali vodi snemanje.
- Obnovljen je rad na unifikaciji HTTP zaglavlja User-Agent. U novoj verziji, podrška za mehanizam User-Agent Client Hints je aktivirana za sve korisnike, razvijena kao zamena za User-Agent. Novi mehanizam podrazumeva selektivno slanje podataka o specifičnim parametrima pregledača i sistema (verzija, platforma itd.) samo nakon zahteva serverske strane, dajući korisnicima mogućnost da selektivno obezbede takve informacije vlasnicima veb stranica. Kada se koristi User-Agent Client Hints, identifikator se po defaultu ne šalje bez eksplicitnog zahteva, što otežava pasivnu identifikaciju (po defaultu se navodi samo naziv pregledača).
Spremenjena je indikacija razpoložljivosti posodobitve in potrebe po ponovnem zagonu brskalnika za njeno namestitev. Namesto barvne puščice na polju avatarja računa se zdaj prikaže napis „Posodobitev“. - Obavljena je revizija pregledača u primeni inkluzivne terminologije. U nazivima politika, reči „whitelist“ i „blacklist“ zamenjene su sa „allowlist“ i „blocklist“ (već dodate politike će nastaviti da funkcionišu, ali će im se prikazivati upozorenje o prelasku u status zastare). U kodu i nazivima datoteka, pominjanja „blacklist“ su zamenjena sa „blocklist“. Vidljiva pominjanja „blacklist“ i „whitelist“ su zamenjena još početkom 2019. godine.
Dodana je eksperimentalna možnost urejanja shranjenih gesel, ki se aktivira s pomočjo zastavice «chrome://flags/#edit-passwords-in-settings». - Prevedeno v razred stabilnih in javno dostopnih API Native File System, ki omogoča ustvarjanje spletnih aplikacij, ki komunicirajo s datotekami v lokalnem FS. Na primer, nov API bi lahko bil uporabljen v integriranih programskih okoljih, urejevalnikih besedil, slik in videoposnetkov, ki se izvajajo v brskalniku. Za omogočanje neposrednega branja in zapisovanja datotek ali uporabe dialogov za odpiranje in shranjevanje datotek ter za navigacijo po vsebini map, aplikacija zahteva posebno potrditev uporabnika.
- Dodana je bila CSS-selektorska izbira ":focus-visible", ki uporablja isto heuristiko, kot jo uporablja brskalnik pri odločanju o prikazu indikatorja spremembe fokusa (ko se fokus premakne na gumb z kombinacijami tipk, se indikator prikaže, pri kliku z miško pa ne). Prej razpoložljivi CSS-selektor ":focus" vedno osvetli fokus. Poleg tega je bila v nastavitve dodana možnost „Quick Focus Highlight“, ki ob aktivaciji prikazuje dodaten indikator fokusa poleg aktivnih elementov, ki ostane viden tudi, če so elementi stila za vizualno označevanje fokusa na strani prek CSS-ja onemogočeni.
- V načinu Origin Trials (eksperimentalne možnosti, ki zahtevajo ločeno aktivacijo) so dodani nekateri novi API-ji. Origin Trial pomeni možnost dela z določenim API-jem iz aplikacij, naloženih z localhost ali 127.0.0.1, ali po registraciji in pridobitvi posebnega žetona, ki deluje omejen čas za določeno spletno mesto.
- API WebHID za nizko nivojski dostop do HID naprav (Human interface device, tipkovnice, miške, igralne konzole, sledilne plošče), ki omogoča izvajanje logike delovanja z HID napravo v JavaScript za organizacijo dela z redkimi HID napravami brez potrebe po specifičnih gonilnikih v sistemu. Predvsem je nov API usmerjen v zagotavljanje podpore za igralne konzole.
- API Screen Information razširja možnosti API Window Placement s podporo za več ekranov. Za razliko od window.screen nov API omogoča manipulacijo s postavitvijo okna v skupnem ekranovnem prostoru večmonitornih sistemov, ne omejujoč se na trenutni zaslon.
- Meta oznaka battery-savings, s katero lahko spletna stran obvesti brskalnik o potrebi po aktiviranju načinov za zmanjšanje porabe energije in optimizacijo obremenitve CPU.
- API COOP Reporting za obveščanje o potencialnih kršitvah načinov izolacije Cross-Origin-Embedder-Policy (COEP) in Cross-Origin-Opener-Policy (COOP), brez uporabe dejanskih omejitev.
- V API Credential Management je predstavljen nov tip poverljivih podataka PaymentCredential, koji obezbeđuje dodatnu potvrdu izvršene platne transakcije. Proveravajuća strana, na primer, banka, ima mogućnost da generiše javni ključ PublicKeyCredential, koji prodavac može zatražiti za dodatno sigurno potvrđivanje plaćanja.
- U API PointerEvents dodata je podrška za uglove visine (ugao između stilusa i ekrana) i azimuta (ugao između X ose i projekcije stilusa na ekranu), umesto uglova TiltX i TiltY (uglovima između ravni stilusa i jedne od osa i ravni Y i Z). Takođe su dodate funkcije za konverziju između visine/azimuta i TiltX/TiltY.
- Promenjena je kodiranje razmaka u URL-u, prilikom njegovog izračunavanja u handler-ima protokola — metoda navigator.registerProtocolHandler() sada zamenjuje razmake sa „“ umesto „+“, što ujednačava ponašanje sa drugim pretraživačima kao što je Firefox.
- U CSS je dodat pseudo-element "::marker", koji omogućava podešavanje boje, veličine, oblika i tipa brojeva i tačaka za nabrajanja u blokovima
- i
- .
- Dodata je podrška za HTTP header Document-Policy, koji omogućava postavljanje pravila pristupa dokumentima, slična mehanizmu sandbox izolacije za iframe, ali univerzalnija. Na primer, putem Document-Policy može se ograničiti korišćenje loših slika, onemogućiti spori JavaScript API, postaviti pravila učitavanja iframe-a, slika i skripti, ograničiti ukupnu veličinu dokumenta i saobraćaj, zabraniti metode koje izazivaju ponovni prikaz stranice, onemogućiti funkciju Scroll-To-Text.
- U element
- Dodata je metoda ParentNode.replaceChildren() za zamenu svih podređenih elemenata roditeljskog čvora sa drugim DOM čvorom. Pre toga, za zamenu čvorova mogla se koristiti kombinacija metoda node.removeChild() i node.append() ili node.innerHTML i node.append().
- Proširen je spektar URL šema koje se mogu preopteretiti putem registerProtocolHandler(). U listu šema uključeni su decentralizovani protokoli cabal, dat, did, dweb, ethereum, hyper, ipfs, ipns i ssb, što omogućava definisanje linkova na elemente nezavisno od sajta ili gejtveja koji obezbeđuje pristup resursu.
- V API Asynchronous Clipboard je bila dodana podpora za format text/html za kopiranje in lepljenje HTML prek odložišča (pri zapisovanju in branju v odložišču se očistijo nevarne HTML strukture). Ta sprememba omogoča, na primer, organizacijo vstavljanja in kopiranja formatiranega besedila s slikami in povezavami v spletnimi urejevalniki.
- V WebRTC je bila dodana možnost povezovanja lastnih obdelovalnikov podatkov, ki se kličejo med kodiranjem ali dekodiranjem WebRTC MediaStreamTrack. To možnost lahko uporabite za dodajanje podpore za končno šifriranje podatkov, ki se prenašajo prek posredniških strežnikov.
V JavaScript motorju V8 je bila implementacija Number.prototype.toString pospešena za 75 %. V asinhrone razrede je bilo dodano lastnost .name z prazno vrednostjo. Metoda Atomics.wake je bila odstranjenja, ker je bila nekoč preimenovana v Atomics.notify, da bi se uskladila s specifikacijo ECMA-262. Odkrit je bil koda orodja za fuzzing testiranje JS-Fuzzer. - V prejšnji različici implementirane osnovne (baseline) prevajalnik Liftoff za WebAssembly je bila vključena možnost uporabe vektorskih ukazov SIMD za pospeševanje izračunov. Sodeč po testih, je optimizacija omogočila pospešitev nekaterih testov za 2,8-krat. Druga optimizacija je znatno pospešila klic funkcij JavaScript, uvoženih iz WebAssembly.
- Orodja za spletne razvijalce so bila razširjena: V ploščo Media so dodane informacije o predvajalnikih, ki se uporabljajo za predvajanje videoposnetkov na strani, vključno s podatki o dogodkih, dnevniki, vrednostmi lastnosti in parametri dekodiranja slik (na primer, lahko določite vzroke za izgubo slik in težave pri interakciji iz JavaScript).
- V kontekstnem meniju plošče Elements je bila dodana možnost ustvarjanja posnetkov izbranega elementa (na primer, lahko ustvarite posnetek kazala ali tabele).
- V spletni konzoli je bila plošča s opozorili o težavah zamenjana z navadnim sporočilom, medtem ko so težave s tretjimi piškotki privzeto prikrite na zavihku Issues in vključujejo posebne kljukice.
- Na zavihku Rendering je dodan gumb 'Onemogoči lokalne pisave', ki omogoča simulacijo odsotnosti lokalnih pisav, na zavihku Sensors pa je dodana možnost simulacije neaktivnosti uporabnika (za aplikacije, ki uporabljajo API Idle Detection).
- V plošči Application so na voljo podrobne informacije o vsakem iframe, odprtem oknu in pop-upih, vključno s podatki o izolaciji Cross-Origin s pomočjo COEP in COOP.
Začela se je zamenjava implementacije protokola QUIC z različico, razvitim v specifikaciji IETF, namesto Google-ove različice QUIC.
Poleg novosti in odprave napak nova različica odpravi 35 ranljivosti. Mnoge od ranljivosti so bile odkrite z avtomatiziranim testiranjem orodij AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer in AFL. Ena ranljivost (CVE-2020-15967, dostop do osvobojene spomina v kodi za interakcijo z Google Payments) je označena kot kritična, kar pomeni, da omogočaobhod vseh nivojev zaščite brskalnika in izvajanje kode v sistemu zunaj peskovnika. V okviru programa za nagrajevanje za odkrivanje ranljivosti je podjetje Google za trenutni izdelek izplačalo 27 nagrad v skupni vrednosti 71500 dolarjev ZDA (ena nagrada 15000 dolarjev, tri nagrade po 7500 dolarjev, pet nagrad po 5000 dolarjev, dve po 3000 dolarjev, ena po 200 dolarjev in dve nagradi po 500 dolarjev). Velikost 13 nagrad zaenkrat še ni določena.
Povzeto iz Opennet.ru
Izvor: linux.org.ru
