Chrome'i väljalase 80

Google esitatakse veebibrauseri väljalase Chrome 80... Samaaegselt saadaval tasuta projekti stabiilne väljalase kroom, mis on Chrome'i aluseks. Chrome'i brauser erinev Google'i logode kasutamine, teadete saatmise süsteemi olemasolu krahhi korral, võimalus nõudmisel alla laadida Flash-moodul, moodulid kaitstud videosisu (DRM) esitamiseks, süsteem värskenduste automaatseks installimiseks ja edastamiseks otsingu ajal RLZ parameetrid. Chrome 81 järgmine väljalase on kavandatud 17. märtsile.

Kõik muutused в Kroom 80:

  • Väikese protsendi kasutajate jaoks pakutakse vahekaartide rühmitamise funktsiooni, mis võimaldab kombineerida mitut sarnase eesmärgiga vahekaarti visuaalselt eraldatud rühmadesse. Igale rühmale saab määrata oma värvi ja nime. Kasutajad, kes ei osalenud esimeses aktiveerimislaines, saavad lubada rühmitamise toe valiku „chrome://flags/#tab-groups” kaudu.

    Chrome'i väljalase 80

  • Selle funktsiooni tugi on lisatud Kerimine tekstini, mis võimaldab teil luua linke üksikutele sõnadele või fraasidele ilma dokumendis silte selgesõnaliselt määramata, kasutades märgendit "a name" või atribuuti "id". Selliste linkide süntaks on plaanis kinnitada veebistandardina, mis on veel staadiumis mustand. Üleminekumask (sisuliselt keritav otsing) eraldatakse tavalisest ankrust atribuudiga ":~:". Näiteks kui avate lingi "https://opennet.ru/52312/#:~:text=Chrome", liigub leht sõna "Chrome" esmamainimise positsioonile ja see sõna tõstetakse esile .
  • Rakendatud Rangem piirang küpsiste ülekandmisel saitide vahel mitte-HTTPS-i päringute puhul, mis keelab kolmandate osapoolte küpsiste töötlemise, mis on seatud juurdepääsul muudele saitidele peale praeguse lehe domeeni. Selliseid küpsiseid kasutatakse kasutajate liikumiste jälgimiseks saitide vahel reklaamivõrkude koodis, sotsiaalvõrgustike vidinates ja veebianalüütikasüsteemides. Tuletage meelde, et küpsiste edastamise juhtimiseks kasutatakse Set-Cookie päises määratud atribuuti SameSite, mis vaikimisi on nüüd seatud väärtusele "SameSite=Lax", mis piirab küpsiste saatmist saidiüleste alampäringute jaoks. , näiteks pildipäring või sisu laadimine iframe'i kaudu teiselt saidilt. Saidid võivad SameSite'i vaikekäitumise alistada, määrates küpsise sätte väärtuseks SameSite=None. Väärtust SameSite=None for Cookie saab aga määrata ainult turvarežiimis (kehtib HTTPS-i kaudu ühenduste jaoks). Muutus algab etappide kaupa kohaldada 17. veebruar, esialgu väikesele protsendile kasutajatest ja seejärel järk-järgult leviala laienemine.
  • Lisatud kaitse tüütute teadete eest, mis on seotud volituste kinnitamisega. Kuna sellised tegevused nagu tõukemärguannete rämpsposti saatmine katkestavad kasutajakogemuse ja juhivad tähelepanu kinnitusdialoogidelt, saab Chrome 80-s nüüd eraldi dialoogi asemel kuvada aadressiribal informatiivse tööriistaspikri, mis hoiatab, et loataotlus on blokeeritud. see variseb kokku läbikriipsutatud kella kujutisega indikaatoriks. Indikaatoril klõpsates saate soovitud loa igal sobival ajal aktiveerida või tagasi lükata. Uus režiim lubatakse automaatselt kasutajatele, kes varem sellised päringud tavaliselt blokeerisid, samuti saitidele, mis salvestavad suure protsendi tagasilükatud taotlustest. Uue režiimi lubamiseks kõigi päringute jaoks on seadetesse lisatud spetsiaalne valik (chrome://flags/#quiet-notification-prompts).

    Chrome'i väljalase 80

  • Keelatud hüpikakende kuvamine (meetodi window.open() kutsumine) ja sünkroonsete XMLHttpRequest'ide saatmine lehe sulgemise või peitmise sündmuste töötlejates (unload, beforeunload, pagehide ja visibilitychange);
  • Pakutud initsiaal kaitse segamultimeediumisisu laadimisest (kui ressursid laaditakse HTTPS-i lehele http:// protokolli kaudu). HTTPS-i kaudu avatud lehtedel asendatakse heli- ja videofailide esitamisega seotud plokkides lingid „http://” automaatselt „https://”-ga. Kui heli- või videoressurss pole https kaudu saadaval, on selle allalaadimine blokeeritud (blokeeringu saate käsitsi märkida aadressiriba tabaluku sümboli kaudu juurdepääsetava menüü kaudu).

    Piltide laadimine jätkub muutumatul kujul (Chrome 81-s rakendatakse automaatset parandamist), kuid nende asendamiseks https-i või piltidega blokeerimiseks antakse saidi arendajatele CSP atribuutide uuendamise-ebaturvalised-taotlused ja blokeeri-kõik-mix-content. Skriptide ja iframe'ide puhul on segasisu blokeerimine juba varem rakendatud.

  • Järkjärguline Lülita välja FTP tugi. Vaikimisi on FTP tugi endiselt saadaval, kuid seda saab teha läbi viidud eksperiment, mille käigus FTP tugi keelatakse teatud protsendil kasutajatest (naasmiseks peate käivitama brauseri valikuga "-enable-ftp"). Tuletame meelde, et eelmistes väljaannetes oli “ftp://” protokolli kaudu alla laaditud ressursside sisu kuvamine brauseriaknas juba keelatud (näiteks HTML-dokumentide ja README-failide kuvamine peatati), FTP kasutamine oli dokumentidest alamressursside allalaadimisel keelatud ja puhverserveri tugi FTP jaoks lõpetati. Siiski oli endiselt võimalik otselinkide kaudu faile alla laadida ja kataloogide sisu kuvada.
  • Lisatud
    võimalus kasutada vektor-SVG-pilte saidi ikoonina (favicon).

  • Seadetesse on lisatud võimalus valikuliselt keelata teatud tüüpi andmeid, mis edastatakse brauseritevahelise sünkroonimise ajal.
  • Lisatud on reegel tsentraalselt hallatavate ettevõtete kasutajate jaoks Väliste laienduste blokeerimine, mis võimaldab vältida väliste lisandmoodulite installimist seadmesse.
  • Rakendatud võimalus kogu atribuutide või kõnede ahela ühekordne kontroll JavaScriptis. Näiteks “db.user.name.length” juurde pääsedes oli eelnevalt vaja samm-sammult kontrollida kõikide komponentide definitsiooni, näiteks läbi “if (db && db.user && db.kasutaja.nimi)”. Nüüd kasutatakse toimingut "?." väärtusele “db?.user?.name?.length” pääsete juurde ilma eelneva kontrollita ja selline ligipääs ei too kaasa viga. Probleemide korral (kui mõnda elementi töödeldakse null või määratlemata)) on väljund "määratlemata".
  • JavaScript tutvustab uut loogilist konkatenatsioonioperaatorit "??", mis tagastab parempoolse operandi, kui vasak operandi väärtus on NULL või määramata, ja vastupidi. Näiteks "const foo = baar ?? 'vaikestring'", kui riba on null, tagastab muul juhul riba väärtuse, sealhulgas siis, kui riba on 0 ja " ", erinevalt operaatorist "||".
  • Origin Trials režiimis (eksperimentaalsed funktsioonid, mis nõuavad eraldi aktiveerimine) pakutud sisu indekseerimise API. Origin Trial tähendab võimalust töötada määratud API-ga kohalikest hostidest või versioonist 127.0.0.1 alla laaditud rakendustes või pärast registreerimist ja spetsiaalse loa saamist, mis kehtib konkreetse saidi jaoks piiratud aja. API Sisu indekseerimine, pakub metaandmeid sisu kohta, mille olid varem vahemällu salvestanud režiimis Progressive Web Apps (PWS) töötavad veebirakendused. Rakendus suudab salvestada brauseri poolel erinevaid andmeid, sh pilte, videoid ja artikleid ning võrguühenduse katkemisel kasutada seda Cache Storage ja IndexedDB API-de abil. Sisu indekseerimise API võimaldab selliseid ressursse lisada, leida ja kustutada. Brauseris kasutatakse seda API-d juba võrguühenduseta vaatamiseks saadaolevate lehtede ja multimeediumiandmete loendi kuvamiseks.

    Chrome'i väljalase 80

  • Stabiliseeritud ja nüüd levitatud väljaspool Origin Trials API-t Võtke ühendust valijaga, mis võimaldab kasutajal valida aadressiraamatust kirjeid ja edastada saidile nende kohta teatud üksikasjad. Taotlus täpsustab atribuutide loendit, mis tuleb alla laadida. Need atribuudid kuvatakse selgesõnaliselt kasutajale, kes otsustab, kas need omadused edastada või mitte. API-t saab kasutada näiteks veebimeilikliendis saadetud kirja adressaatide valimiseks, VoIP-funktsiooniga veebirakenduses kindlale numbrile helistamiseks või sotsiaalvõrgustikus juba registreeritud sõprade otsimiseks. . Samal ajal pakutakse Origin Trialsi raames mõningaid uusi Contact Pickeri omadusi: lisaks varem saadaolevale täisnimele, e-posti aadressile ja telefoninumbrile on lisatud e-posti aadressi ja pildi edastamise võimalus.
  • Veebitöötajates pakutud uus viis ECMAScripti moodulite laadimiseks, mis võimaldab vältida funktsiooni importScripts() kasutamist, mis blokeerib töötaja imporditud skripti töötlemise ajal ja käivitab selle globaalses kontekstis. Uus meetod hõlmab veebitöötajate jaoks spetsiaalsete moodulite loomist, mis toetavad standardseid JavaScripti impordimehhanisme ja mida saab dünaamiliselt laadida ilma töötaja täitmist blokeerimata. Moodulite laadimiseks pakub Worker konstruktor uut ressursitüüpi - 'moodul':

    const töötaja = new Töötaja('tööline.js', {
    tüüp: 'moodul'
    });

  • Rakendatud JavaScripti sisseehitatud võime töödelda tihendatud vooge ilma väliseid teeke kasutamata. API-d on lisatud tihendamiseks ja lahtipakkimiseks CompressionStream ja DecompressionStream. Toetatakse pakkimist gzip- ja deflate-algoritmidega.

    const compressionReadableStream
    = inputReadableStream.pipeThrough(new CompressionStream('gzip'));

  • Lisatud CSS-i atribuut "reavahetus: kõikjal", mis võimaldab katkestusi mis tahes tüpograafilise märgi tasemel, sealhulgas vahemärke tühikutega eelnevalt määratletud kirjavahemärkide läheduses ( ) ja sõnade keskel. Lisatud on ka CSS-i atribuut "overflow-wrap: kõikjal» võimaldab katkestada katkematuid märgijadasid kõikjal, kui reas ei leitud katkestuse jaoks sobivat asukohta.
  • Krüpteeritud kujul töödeldud meediumikonteksti jaoks on meetodi tugi rakendatud MediaCapabilities.decodingInfo(), mis annab teavet brauseri võimaluste kohta kaitstud sisu dekodeerimiseks (näiteks saab seda meetodit kasutada kvaliteetsete või energiasäästlike dekodeerimisstsenaariumide valimiseks saadaoleva ribalaiuse ja ekraani suuruse põhjal).
  • Lisatud meetod HTMLVideoElement.getVideoPlaybackQuality(), mille kaudu saate teavet video taasesituse jõudluse kohta, et reguleerida bitikiirust, eraldusvõimet ja muid video parameetreid.
  • API-s Maksehaldur, mis lihtsustab integreerimist olemasolevate maksesüsteemidega, lisas võimaluse delegatsioon aadressi ja kontaktandmete töötlemine maksesüsteemi välisele töötlejale (maksesüsteemi rakendusel võib olla täpsem teave kui brauseris).
  • Lisatud HTTP päise tugi Sec-Fetch-Siht, mis võimaldab saata täiendavaid metaandmeid päringuga seotud sisu tüübi kohta (näiteks päringu puhul img-märgendi kaudu on tüüp “image”, fontide puhul “font”, skriptide puhul “skript”, stiilide jaoks - "stiil" jne). Sõltuvalt määratud tüübist saab server võtta meetmeid, et kaitsta teatud tüüpi rünnakute eest (näiteks on ebatõenäoline, et rahaülekande käitleja link määratakse img-sildi kaudu, nii et sellised päringud ei pea töödelda).
  • JavaScripti mootoris V8 optimeerimine läbi viidud vihjete salvestamine hunnikusse. Täieliku 64-bitise väärtuse salvestamise asemel salvestatakse ainult kursori ainulaadsed madalamad bitid. See optimeerimine võimaldas vähendada kuhjamälu tarbimist 40% 3–8% jõudlustrahvi arvelt.
    Chrome'i väljalase 80

    Chrome'i väljalase 80

  • Muutused veebiarendajatele mõeldud tööriistades:
    • Veebikonsoolil on nüüd võimalus let- ja klassiavaldisi ümber defineerida.

      Chrome'i väljalase 80

    • Täiustatud WebAssembly silumistööriistad. Lisatud tugi päkapikk samm-sammult silumiseks, katkestuspunktide määramiseks ja virnajälgede analüüsimiseks lähtekoodis, milles WebAssembly rakendus on kirjutatud.

      Chrome'i väljalase 80

    • Täiustatud paneel võrgutegevuse analüüsimiseks. Lisatud on võimalus vaadata päringu algatamisega seotud skriptide kõnede ahelat.

      Chrome'i väljalase 80

      Lisati uued tee ja URL-i veerud, mis näitavad iga võrguressursi absoluutset teed ja täielikku URL-i. Tagab, et valitud päring on ülevaatediagrammil esile tõstetud.

      Chrome'i väljalase 80

    • Vahekaardile Võrgutingimused on lisatud valik kasutajaagendi parameetri muutmiseks.

      Chrome'i väljalase 80

    • Auditipaneeli konfigureerimiseks on pakutud välja uus liides.
      Chrome'i väljalase 80

    • Vahekaardil Katmine andis võimaluse koguda katvusandmeid iga funktsiooni või koodiploki kohta (täpsem statistika, kuid nõuab rohkem ressursse).

      Chrome'i väljalase 80

  • AppCache'i manifesti toiming (tehnoloogia veebirakenduse töö korraldamiseks võrguühenduseta režiimis) piiratud saidi praegune kataloog (kui manifest laaditi alla saidilt www.example.com/foo/bar/, siis URL-i alistamise võimalus töötab ainult /foo/bar/ sees). AppCache'i tugi on plaanis Chrome 82-s täielikult eemaldada. Põhjuseks on toodud soov vabaneda ühest saidiüleste skriptirünnakute vektorist. AppCache'i asemel on soovitatav kasutada API-d Cache.
  • Lõpetatud toetus pärand WebVR 1.1 API-le, mille saab asendada API-ga WebXR-seade, mis võimaldab juurdepääsu komponentidele virtuaalse ja liitreaalsuse loomiseks ning ühtlustada tööd erinevate seadmeklassidega alates statsionaarsetest virtuaalreaalsuse kiivritest kuni mobiilseadmetel põhinevate lahendusteni.
  • Meetodite registerProtocolHandler() ja unregisterProtocolHandler() kaudu ühendatud protokollitöötlejad saavad nüüd töötada ainult turvalises kontekstis (kui juurdepääs on HTTPS-i kaudu).

Lisaks uuendustele ja veaparandustele kaotab uus versioon 56 haavatavust. Paljud haavatavused tuvastati tööriistadega automatiseeritud testimise tulemusena Aadress Sanitaar, MemorySanitizer, Voo terviklikkuse juhtimine, LibFuzzer и AFL. Pole tuvastatud ühtegi kriitilist probleemi, mis võimaldaks mööda minna brauseri kõigist kaitsetasemetest ja käivitada süsteemis koodi väljaspool liivakastikeskkonda. Osana programmist, mille eesmärk on maksta rahalisi preemiaid praeguse versiooni haavatavuste avastamise eest, maksis Google 37 auhinda 48 tuhande dollari väärtuses (üks 10000 5000 dollari suurune auhind, kolm 3000 dollarit, kolm 2000 dollarit, neli 1000 dollarit, kolm 500 dollarit ja kuus 17 dollarit). XNUMX preemia suurust pole veel kindlaks määratud.

Allikas: opennet.ru

Lisa kommentaar