Chrome 80 version

Google представила webbläsarversion Chrome 80... Samtidigt tillgängliga stabil utgåva av ett gratis projekt krom, som är grunden för Chrome. Chrome webbläsare annorlunda användningen av Googles logotyper, närvaron av ett system för att skicka aviseringar i händelse av en krasch, möjligheten att ladda ner en Flash-modul på begäran, moduler för att spela skyddat videoinnehåll (DRM), ett automatiskt uppdateringssystem och överföring vid sökning RLZ-parametrar. Nästa version av Chrome 81 är planerad till den 17 mars.

Den huvudsakliga förändringar в krom 80:

  • För en liten andel av användarna erbjuds en flikgrupperingsfunktion, som låter dig kombinera flera flikar med liknande syften till visuellt separerade grupper. Varje grupp kan tilldelas sin egen färg och namn. Användare som inte ingick i den första aktiveringsvågen kan aktivera grupperingsstöd genom alternativet "chrome://flags/#tab-groups".

    Chrome 80 version

  • Lade till stöd för denna funktion Scrolla-till-text, som låter dig skapa länkar till enskilda ord eller fraser utan att uttryckligen ange etiketter i dokumentet med taggen "ett namn" eller egenskapen "id". Syntaxen för sådana länkar är planerad att godkännas som en webbstandard, vilket fortfarande är på stadium förslag. Övergångsmasken (i huvudsak en rullande sökning) separeras från det vanliga ankaret av attributet ":~:". Till exempel, när du öppnar länken "https://opennet.ru/52312/#:~:text=Chrome" flyttas sidan till den position där ordet "Chrome" först nämns och detta ord kommer att markeras .
  • Applicerad En strängare begränsning av överföringen av cookies mellan webbplatser, för icke-HTTPS-förfrågningar, som förbjuder bearbetning av tredjepartscookies som ställs in vid åtkomst till andra webbplatser än den aktuella sidans domän. Sådana cookies används för att spåra användarrörelser mellan webbplatser i koden för reklamnätverk, widgets för sociala nätverk och webbanalyssystem. Kom ihåg att för att kontrollera överföringen av cookies används SameSite-attributet som anges i Set-Cookie-huvudet, vilket som standard nu är inställt på värdet "SameSite=Lax", vilket begränsar sändningen av cookies för underförfrågningar över flera webbplatser , till exempel en bildbegäran eller att ladda innehåll via en iframe från en annan webbplats. Webbplatser kan åsidosätta SameSites standardbeteende genom att uttryckligen ställa in Cookie-inställningen till SameSite=Ingen. Värdet SameSite=Ingen för Cookie kan dock endast ställas in i Säkert läge (giltigt för anslutningar via HTTPS). Förändringen kommer att påbörjas i etapper tillämpa 17 februari, till en början för en liten andel av användarna, för att sedan gradvis utöka täckningen.
  • Lagt till skydd mot irriterande meddelanden relaterade till bekräftelse av referenser. Eftersom aktivitet som spamming av push-aviseringsförfrågningar avbryter användarupplevelsen och distraherar uppmärksamheten från bekräftelsedialoger, i Chrome 80, istället för en separat dialogruta, kan nu ett informativt verktygstips visas i adressfältet som varnar om att behörighetsförfrågan har blockerats, vilket sedan den kollapsar till en indikator med bilden av en överstruken klocka. Genom att klicka på indikatorn kan du aktivera eller avvisa det begärda tillståndet när som helst. Automatiskt kommer det nya läget att aktiveras selektivt för användare som tidigare vanligtvis blockerade sådana förfrågningar, såväl som för webbplatser som registrerar en stor andel avvisade förfrågningar. För att aktivera det nya läget för alla förfrågningar har ett speciellt alternativ lagts till i inställningarna (chrome://flags/#quiet-notification-prompts).

    Chrome 80 version

  • Förbjuden visa popup-fönster (anropar metoden window.open() och skicka synkrona XMLHttpRequests i page close eller hide händelsehanterare (unload, beforeunload, pagehide och visibilitychange);
  • Föreslagen initial skydd från att ladda blandat multimediainnehåll (när resurser laddas på en HTTPS-sida via http://-protokollet). På sidor som öppnas via HTTPS kommer "http://"-länkar nu automatiskt att ersättas med "https://" i block som är kopplade till uppspelning av ljud- och videofiler. Om en ljud- eller videoresurs inte är tillgänglig via https, blockeras nedladdningen av den (du kan markera blockeringen manuellt via menyn som är tillgänglig via hänglåssymbolen i adressfältet).

    Bilder kommer att fortsätta att laddas oförändrade (autokorrigering kommer att tillämpas i Chrome 81), men för att ersätta dem med https eller blockera bilder förses webbplatsutvecklare med CSP-egenskaperna upgrade-insecure-requests och block-all-mixed-content. För skript och iframes har blockering av blandat innehåll redan implementerats tidigare.

  • En gradvis frånkoppling FTP-stöd. Som standard är FTP-stöd fortfarande tillgängligt, men kommer att göra det hölls ett experiment där FTP-stöd kommer att inaktiveras för en viss procentandel av användarna (för att återvända måste du starta webbläsaren med alternativet "-enable-ftp"). Låt oss komma ihåg att i tidigare utgåvor var visningen i webbläsarfönstret av innehållet i resurser som laddats ner via "ftp://"-protokollet redan inaktiverat (till exempel stoppades visning av HTML-dokument och README-filer), användningen av FTP var förbjudet vid nedladdning av underresurser från dokument, och proxystöd avbröts för FTP. Det var dock fortfarande möjligt att ladda ner filer via direktlänkar och visa innehållet i kataloger.
  • Lagt till
    möjligheten att använda vektor-SVG-bilder som en webbplatsikon (favicon).

  • Möjligheten att selektivt inaktivera vissa typer av data som överförs under synkronisering mellan webbläsare har lagts till i inställningarna.
  • En regel har lagts till för centralt administrerade företagsanvändare BlockExternalExtensions, som låter dig förhindra installation av externa tillägg på enheten.
  • Genomfört möjlighet en engångskontroll av hela kedjan av egenskaper eller anrop i JavaScript. Till exempel, vid åtkomst till "db.user.name.length" var det tidigare nödvändigt att kontrollera definitionen av alla komponenter steg för steg, till exempel genom "if (db && db.user && db.user.name)". Använder nu operationen "?." du kan komma åt värdet "db?.användare?.namn?.längd" utan förhandskontroller och sådan åtkomst kommer inte att leda till ett fel. I händelse av problem (om något element behandlas som null eller odefinierat)) kommer utdata att vara "odefinierat".
  • JavaScript introducerar en ny logisk sammanlänkningsoperator "??", som returnerar den högra operanden om den vänstra operanden är NULL eller odefinierad, och vice versa. Till exempel, "const foo = bar ?? 'default string'" om bar är null, returnerar värdet på bar annars, inklusive när bar är 0 och ' ', i motsats till operatorn "||".
  • I Origin Trials-läge (experimentella funktioner som kräver separata aktivering) föreslagna API för innehållsindexering. Origin Trial innebär möjligheten att arbeta med det specificerade API:et från applikationer som laddats ner från localhost eller 127.0.0.1, eller efter registrering och mottagande av en speciell token som är giltig under en begränsad tid för en specifik webbplats. API Innehållsindexering, tillhandahåller metadata om innehåll som tidigare cachades av webbapplikationer som körs i PWS-läge (Progressive Web Apps). Applikationen kan spara olika data på webbläsarsidan, inklusive bilder, videor och artiklar, och när nätverksanslutningen tappas, använd den med hjälp av Cache Storage och IndexedDB API:er. Content Indexing API gör det möjligt att lägga till, hitta och ta bort sådana resurser. I webbläsaren används detta API redan för att lista en lista över sidor och multimediadata som är tillgängliga för offlinevisning.

    Chrome 80 version

  • Stabiliserad och nu distribuerad utanför Origin Trials API Kontakta Picker, så att användaren kan välja poster från adressboken och överföra vissa detaljer om dem till webbplatsen. Begäran anger en lista över egenskaper som måste hämtas. Dessa egenskaper visas explicit för användaren, som bestämmer om de ska passera dessa egenskaper eller inte. API:et kan till exempel användas i en webbpostklient för att välja mottagare för ett skickat brev, i en webbapplikation med VoIP-funktionen för att initiera ett samtal till ett specifikt nummer, eller i ett socialt nätverk för att söka efter redan registrerade vänner . Samtidigt, som en del av Origin Trials, erbjuds några nya Contact Picker-egenskaper: förutom det tidigare tillgängliga fullständiga namnet, e-post och telefonnummer, har möjligheten att överföra en e-postadress och bild lagts till.
  • I Web Workers föreslagen ett nytt sätt att ladda ECMAScript-moduler, vilket låter dig undvika att använda importScripts()-funktionen, som blockerar arbetaren under bearbetning av det importerade skriptet och exekverar det i det globala sammanhanget. Den nya metoden går ut på att skapa specialmoduler för webbarbetare som stöder standard JavaScript-importmekanismer och som kan laddas dynamiskt utan att blockera arbetarens exekvering. För att ladda moduler tillhandahåller Worker-konstruktören en ny resurstyp - 'modul':

    const worker = new Worker('worker.js', {
    typ: 'modul'
    });

  • Genomfört JavaScripts inbyggda förmåga att bearbeta komprimerade strömmar utan att behöva använda externa bibliotek. API:er har lagts till för komprimering och dekomprimering CompressionStream och DecompressionStream. Komprimering med gzip och deflate-algoritmer stöds.

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

  • Lade till CSS-egenskap "linjebrytning: var som helst", som tillåter brytningar på nivån för alla typografiska tecken, inklusive brytningar nära skiljetecken fördefinierade av mellanslag ( ) och mitt i orden. Lade även till CSS-egenskap "overflow-wrap: var som helst» låter dig bryta obrutna sekvenser av tecken var som helst om en lämplig position för brytningen inte kunde hittas i raden.
  • För mediakontext som behandlas i krypterad form har stöd för metoden implementerats MediaCapabilities.decodingInfo(), som ger information om webbläsarens möjligheter att avkoda skyddat innehåll (till exempel kan den här metoden användas för att välja högkvalitativa eller energieffektiva avkodningsscenarier baserat på tillgänglig bandbredd och skärmstorlek).
  • Tillagd metod HTMLVideoElement.getVideoPlaybackQuality(), genom vilken du kan få information om videouppspelningsprestanda för att justera bithastighet, upplösning och andra videoparametrar.
  • I API Betalningshanterare, som förenklar integrationen med befintliga betalningssystem, lade till möjligheten delegation behandling av adress- och kontaktuppgifter till en extern processor av betalningssystemet (betalningssystemapplikationen kan ha mer korrekt information än webbläsaren).
  • Stöd för HTTP-header har lagts till Sec-Fetch-Dest, som låter dig skicka ytterligare metadata om vilken typ av innehåll som är kopplat till begäran (till exempel för en begäran via img-taggen är typen "image", för typsnitt - "font", för skript - "script", för stilar - "stil" etc. ). Baserat på den angivna typen kan servern vidta åtgärder för att skydda mot vissa typer av attacker (det är till exempel osannolikt att en länk till en hanterare för en pengaöverföring kommer att specificeras via en img-tagg, så sådana förfrågningar behöver inte bearbetas).
  • I JavaScript-motor V8 optimering genomförd lagra pekare på högen. Istället för att lagra hela 64-bitarsvärdet lagras endast de unika lägre bitarna av pekaren. Denna optimering gjorde det möjligt att minska minnesförbrukningen med 40 %, till priset av en prestationsstraff på 3-8 %.
    Chrome 80 version

    Chrome 80 version

  • Förändringar i verktyg för webbutvecklare:
    • Webbkonsolen har nu möjlighet att omdefiniera let- och klassuttryck.

      Chrome 80 version

    • Förbättrade WebAssembly-felsökningsverktyg. Lagt till stöd DVÄRG för steg-för-steg-felsökning, specificering av brytpunkter och analys av stackspår i källkoden som en WebAssembly-applikation är skriven i.

      Chrome 80 version

    • Förbättrad panel för att analysera nätverksaktivitet. Lade till möjligheten att se kedjan av anrop av skript som är associerade med initiering av begäran.

      Chrome 80 version

      Lade till nya sökvägs- och URL-kolumner som visar den absoluta sökvägen och fullständiga webbadressen för varje nätverksresurs. Säkerställer att den valda frågan är markerad i översiktsdiagrammet.

      Chrome 80 version

    • På fliken Nätverksvillkor har ett alternativ lagts till för att ändra parametern User-Agent.

      Chrome 80 version

    • Ett nytt gränssnitt har föreslagits för att konfigurera granskningspanelen.
      Chrome 80 version

    • I fliken Rapportering förutsatt valet att samla in täckningsdata för varje funktion eller för varje kodblock (mer detaljerad statistik, men kräver mer resurser).

      Chrome 80 version

  • AppCache manifest action (teknik för att organisera driften av en webbapplikation i offlineläge) begränsad den aktuella katalogen för webbplatsen (om manifestet laddades ner från www.example.com/foo/bar/, fungerar möjligheten att åsidosätta webbadressen bara i /foo/bar/). AppCache-stödet är planerat att tas bort helt i Chrome 82. Anledningen som nämns är önskan att bli av med en av vektorerna för cross-site scripting-attacker. Det rekommenderas att använda API istället för AppCache Cache.
  • Avvecklad stöd för det äldre WebVR 1.1 API, som kan ersättas av API WebXR-enhet, som låter dig komma åt komponenter för att skapa virtuell och förstärkt verklighet och förena arbete med olika klasser av enheter, från stationära virtual reality-hjälmar till lösningar baserade på mobila enheter.
  • Protokollhanterare som är anslutna via metoderna registerProtocolHandler() och unregisterProtocolHandler() kan nu bara fungera i ett säkert sammanhang (när de nås via HTTPS).

Förutom innovationer och buggfixar eliminerar den nya versionen 56 sårbarheter. Många av sårbarheterna identifierades som ett resultat av automatiserade testverktyg Address Sanitizer, Memory Sanitizer, Kontrollera flödesintegritet, LibFuzzer и AFL. Inga kritiska problem har identifierats som skulle tillåta en att kringgå alla nivåer av webbläsarskydd och exekvera kod på systemet utanför sandlådemiljön. Som en del av programmet för att betala kontantbelöningar för att upptäcka sårbarheter för den aktuella versionen, betalade Google ut 37 utmärkelser värda $48 10000 (en utmärkelse på $5000 3000, tre utmärkelser på $2000 1000, tre utmärkelser på $500 17, fyra utmärkelser på $XNUMX XNUMX, tre utmärkelser på $XNUMX XNUMX och sex utmärkelser på $XNUMX). Storleken på XNUMX belöningar har ännu inte fastställts.

Källa: opennet.ru

Lägg en kommentar