Google je izdao web preglednik Chrome 147. Istovremeno, dostupna je stabilna verzija besplatnog Chromium projekta, koji je osnova Chromea. Chrome preglednik se razlikuje od Chromiuma po tome što koristi Google logotipe, ima sistem za slanje obavještenja u slučaju pada sistema, ima module za reprodukciju video sadržaja zaštićenog od kopiranja (DRM), ima sistem za automatsku instalaciju ažuriranja, uvijek omogućava Sandbox izolaciju, isporučuje ključeve Google API-ju i prenosi RLZ parametre prilikom pretraživanja. Za one kojima je potrebno više vremena za ažuriranje, postoji zasebna proširena stabilna grana, koja je podržana 8 sedmica. Sljedeće izdanje, Chrome 148, zakazano je za 5. maj.
Ključne promjene u Chromeu 147 (1, 2, 3, 4):
- Dodan je način prikaza vertikalnih kartica, pri čemu je gornja horizontalna traka s dugmadima kartica zamijenjena bočnom trakom s vertikalnim karticama. Vertikalne kartice mogu se prikazati u proširenom (ikona + djelomični opis) ili sažetom (samo ikona) načinu rada. Zadržavanjem pokazivača miša iznad bočne kartice prikazuje se sličica njenog sadržaja. Upravljanje grupama kartica je pojednostavljeno. Opcija "Prikaži kartice vertikalno" dodana je u kontekstni meni koji se pojavljuje kada se desnim klikom miša klikne na red kartica. Ako se ova opcija ne prikazuje prema zadanim postavkama, može se omogućiti putem postavke "chrome://flags/#vertical-tabs".
- Režim čitanja je redizajniran tako da prikazuje samo relevantni tekst na stranici, skrivajući sve povezane kontrole, banere, menije, navigacijske trake i druge dijelove stranice koji nisu povezani sa sadržajem. U novoj verziji, slično kao u Firefoxu, relevantni sadržaj se prikazuje u cijelom vidljivom području, a ne u uskoj bočnoj traci pored originalne stranice. Ako novi režim nije omogućen prema zadanim postavkama, može se omogućiti putem postavke "chrome://flags/#read-anything-immersive-reading-mode".
- U meni "Pomoć" dodano je dugme za podnošenje žalbe radi blokiranja web stranica kreiranih u svrhu prevare ili phishinga. Ovo dugme se prikazuje kada je omogućen način rada "Sigurno pregledavanje".
- Proširena zaštita od pristupa lokalnom sistemu prilikom interakcije s javnim web stranicama. Pristup s web stranica do Moja IP adresa Lokalna mreža (intranet ili interne adrese) ili loopback interfejs (127.0.0.0/8) zahtijevat će potvrdu korisnika. Zaštita sada pokriva ne samo pokušaje učitavanja resursa putem HTTP/HTTPS-a, fetch() zahtjeva i umetanja iframe-ova, već i veze putem WebSocketsa i WebTransporta, kao i zahtjeve za dohvaćanje inicirane putem metode WindowClient.navigate(). Napadači iskorištavaju pristup internim resursima za indirektnu identifikaciju i za izvođenje CSRF napada na rutere, pristupne tačke, štampače, korporativne web interfejse i druge uređaje i usluge koji prihvataju samo zahtjeve iz lokalne mreže.
- Funkcionalnost parsiranja XML-a je migrirana iz libxml2 u novu biblioteku napisanu u Rustu, imajući na umu sigurnost. Ova promjena se odnosi samo na XML; kao što je prethodno najavljeno, podrška za XSLT će uskoro biti ukinuta.
- Sada je moguće koristiti metodu startViewTransition() ne samo za cijelu stranicu, već i za pojedinačne HTML elemente.
- Dodana je CSS funkcija contrast-color(). Vraća suprotnu boju od navedene (za bijelu vraća crnu, a za crnu vraća bijelu). Ova funkcija se može koristiti za usklađivanje boje pozadine određene boje teksta i obrnuto.
- Dodano je CSS svojstvo "border-shape", koje vam omogućava kreiranje nepravougaonih okvira oko elemenata, kao što je korištenje kružnih ili poligonalnih okvira. CSS svojstvo "border-shape" prihvata iste tipove oblika kao i svojstvo "clip-path", ali za razliku od potonjeg, ono detektuje konturu, dekodira je i izrezuje bilo koji sadržaj koji se proteže izvan konture.
- Dodat je CSSPseudoElement interfejs, koji omogućava rad sa CSS pseudo-elementima iz JavaScripta.
- Element link sada podržava upotrebu atributa „rel=modulepreload“ za prethodno učitavanje ne samo skripti, već i modula sa CSS stilovima ( ) i JSON podaci ( ).
- Ponašanje izračunavanja širine okvira i kontura u CSS svojstvima border-width, outline-width i column-rule-width je promijenjeno, čime je ujedinjeno s preglednicima baziranim na Firefoxu i WebKitu. Ranije se širina u ovim svojstvima resetirala na nulu, bez obzira na njihove vrijednosti, ako su svojstva border-style, outline-style ili column-rule-style bila postavljena na "none" ili "hidden". Sada vrijednosti order-width, outline-width i column-rule-width uvijek odgovaraju vrijednostima koje je definirao programer, bez obzira na sadržaj svojstava "*-style".
- Dodan metod Math.sumPrecise() za izračunavanje zbira elemenata niza i drugih nabrojivih objekata sa preciznošću većom od one kod normalnog zbrajanja u petlji (eliminisanje gubitaka preciznosti prilikom pohranjivanja rezultata između).
- Dodan je atribut Request.isReloadNavigation za detekciju ponovnog učitavanja stranice, na primjer, nakon klika na dugme "Osvježi" ili pozivanja metoda location.reload() i history.go(0).
- Da bi se smanjila tačnost indirektne identifikacije, promijenjena je logika za zaokruživanje veličine memorije vraćene putem Device Memory API-ja, koji pruža informacije o veličini RAM-a. Ove informacije mogu biti korisne za kreiranje lakih verzija web aplikacija koje se učitavaju na uređajima s ograničenom RAM memorijom ili za aktiviranje naprednih funkcija kada su dostupne velike količine memorije. U verzijama za platformu Android Veličina memorije je sada zaokružena na 1, 2, 4 i 8, a za ostale platforme na 2, 4, 8, 16 i 32.
- Za izolirane web aplikacije (IWA), implementiran je Web Printing API, koji pruža metode za određivanje dostupnosti štampača, slanje dokumenata na štampanje i upravljanje redom čekanja za štampanje. Nazivi atributa i semantika korišteni u API-ju odgovaraju Internet Printing Protocolu (IPP).
- Režim "Origin trials" implementira WebNN API, koji omogućava korištenje usluga mašinskog učenja koje pruža operativni sistem i povezane hardverske mogućnosti.
- Poboljšanja su napravljena u alatima za web developere. Ugrađeni AI asistent sada automatski odabire kontekste. Panel "Način rada uređaja", koji se koristi za testiranje performansi web stranice na različitim mobilnim uređajima, moderniziran je. Panel Mreža sada automatski dekodira komprimirani sadržaj za zahtjeve poslane sa zaglavljem Content-Encoding: gzip ili deflate. Regularni izrazi sada se mogu koristiti za filtriranje CSS stilova.
Pored novih funkcija i ispravki grešaka, nova verzija rješava 60 ranjivosti. Mnoge od ranjivosti su identifikovane putem automatizovanog testiranja korištenjem AddressSanitizer-a, MemorySanitizer-a, Control Flow Integrity-a, LibFuzzer-a i AFL-a. Dva problema (prelijevanje bafera i prekolijevanje cijelog broja u WebML-u) dobila su kritični nivo ozbiljnosti, što znači da bi mogli zaobići sve slojeve zaštite preglednika i izvršiti kod izvan sandbox okruženja. Kao dio svog programa nagrađivanja za ranjivosti za trenutno izdanje, Google je uspostavio 60 nagrada i dodijelio 118 dolara (dvije nagrade od 43000 dolara, dvije nagrade od 11000 dolara i po jednu nagradu od 4000, 3000, 2000 i 1000 dolara). Iznosi 52 nagrade još nisu određeni.
izvor: opennet.ru
