Chrome 90 version

Google har avslöjat lanseringen av webbläsaren Chrome 90. Samtidigt finns en stabil version av det kostnadsfria Chromium-projektet, som fungerar som grunden för Chrome, tillgänglig. Chrome-webbläsaren kännetecknas av användningen av Googles logotyper, närvaron av ett system för att skicka aviseringar vid en krasch, moduler för att spela skyddat videoinnehåll (DRM), ett system för automatisk installation av uppdateringar och överföring av RLZ-parametrar vid sökning. Nästa version av Chrome 91 är planerad till den 25 maj.

Viktiga ändringar i Chrome 90:

  • Alla användare har som standard möjlighet att öppna webbplatser via HTTPS när de skriver värdnamn i adressfältet. Till exempel, när du anger värden example.com, kommer webbplatsen https://example.com att öppnas som standard, och om problem uppstår vid öppningen kommer den att återställas till http://example.com. För att styra användningen av standard "https://", föreslås inställningen "chrome://flags#omnibox-default-typed-navigations-to-https".
  • Det är nu möjligt att tilldela olika etiketter till fönster för att visuellt separera dem i skrivbordspanelen. Stöd för att ändra fönsternamnet kommer att förenkla organisationen av arbetet när man använder separata webbläsarfönster för olika uppgifter, till exempel när man öppnar separata fönster för arbetsuppgifter, personliga intressen, underhållning, uppskjutet material etc. Namnet ändras genom "Lägg till fönstertitel" i snabbmenyn som visas när du högerklickar på ett tomt område i flikraden. Efter att ha ändrat namnet i applikationspanelen, istället för webbplatsens namn från den aktiva fliken, visas det valda namnet, vilket kan vara användbart när du öppnar samma webbplatser i olika fönster kopplade till separata konton. Bindningen bibehålls mellan sessionerna och efter en omstart kommer fönstren att återställas med de valda namnen.
    Chrome 90 version
  • Lade till möjligheten att dölja "Läslistan" utan att behöva ändra inställningar i "chrome://flags" ("chrome://flags#read-later"). För att gömma dig kan du nu använda alternativet "Visa läslista" längst ned i den snabbmeny som visas när du högerklickar på bokmärkesfältet. Låt oss påminna dig om att i den senaste versionen, när vissa användare klickar på asterisken i adressfältet, förutom knappen "Lägg till bokmärke", visas en andra knapp "Lägg till i läslista" och i det högra hörnet av bokmärkespanelen "Läslista"-menyn visas, som listar alla tidigare sidor som lagts till i listan. När du öppnar en sida från listan markeras den som läst. Sidor i listan kan också markeras manuellt som lästa eller olästa, eller tas bort från listan.
  • Tillagt stöd för nätverkssegmentering för att skydda mot metoder för att spåra användarrörelser mellan webbplatser baserat på lagring av identifierare i områden som inte är avsedda för permanent lagring av information ("supercookies"). Eftersom cachade resurser lagras i ett gemensamt namnutrymme, oavsett ursprungsdomänen, kan en webbplats fastställa att en annan webbplats laddar resurser genom att kontrollera om den resursen finns i cachen. Skyddet är baserat på användningen av nätverkssegmentering (nätverkspartitionering), vars essens är att lägga till ytterligare bindning av poster i delade cachar till domänen från vilken huvudsidan öppnas, vilket begränsar cacheminnet endast för skript för rörelsespårning till den aktuella webbplatsen (ett skript från en iframe kommer inte att kunna kontrollera om resursen har laddats ner från en annan webbplats). Priset för segmentering är en minskning av cachningseffektiviteten, vilket leder till en liten ökning av sidladdningstid (maximalt med 1.32 %, men för 80 % av webbplatserna med 0.09–0.75 %).
  • Den svarta listan över nätverksportar för vilka sändning av HTTP-, HTTPS- och FTP-förfrågningar blockeras har fyllts på för att skydda mot NAT-slipstreaming-attacker, vilket gör att man, när man öppnar en webbsida speciellt förberedd av angriparen i en webbläsare, kan etablera ett nätverk anslutning från angriparens server till valfri UDP- eller TCP-port på användarens system, trots användningen av det interna adressintervallet (192.168.xx, 10.xxx). Lade till 554 (RTSP-protokoll) och 10080 (används i Amanda backup och VMWare vCenter) till listan över förbjudna portar. Tidigare var portarna 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 och 6566 redan blockerade.
  • Lade till initialt stöd för att öppna PDF-dokument med XFA-formulär i webbläsaren.
  • För vissa användare har en ny inställningssektion "Chrome-inställningar > Sekretess och säkerhet > Sekretesssandlåda" aktiverats, som låter dig hantera parametrarna för FLoC API, som syftar till att bestämma kategorin för användarintressen utan individuell identifiering och utan hänvisning till historiken för att besöka specifika platser.
  • En tydligare avisering med en lista över tillåtna åtgärder visas nu när en användare ansluter till en profil för vilken centraliserad hantering är aktiverad.
  • Gjorde gränssnittet för begäran om tillstånd mindre påträngande. Förfrågningar som användaren sannolikt inte kommer att godkänna blockeras nu automatiskt med en motsvarande indikator som visas i adressfältet, med vilken användaren kan gå till gränssnittet för att hantera behörigheter per plats.
    Chrome 90 version
  • Stöd för Intel CET-tillägg (Intel Control-flow Enforcement Technology) ingår för hårdvaruskydd mot utnyttjande som byggts med returorienterad programmering (ROP, Return-Oriented Programming)-tekniker.
  • Arbetet fortsätter med att ändra webbläsaren till att använda inkluderande terminologi. Filen "master_preferences" har bytt namn till "initial_preferences" för att undvika att såra känslorna hos användare som uppfattar ordet "master" som en antydan om deras förfäders tidigare slaveri. För att upprätthålla kompatibiliteten kommer stödet för "master_preferences" att finnas kvar i webbläsaren under en tid. Tidigare hade webbläsaren redan blivit av med användningen av orden "vitlista", "svartlista" och "native".
  • I Android-versionen, när "Lite" trafiksparläget är aktiverat, reduceras bithastigheten vid nedladdning av video när den är ansluten via mobiloperatörernas nätverk, vilket kommer att minska kostnaderna för användare som har trafikbaserade tariffer aktiverade. "Lite"-läget ger också komprimering av bilder som begärts från allmänt tillgängliga resurser (som inte kräver autentisering) via HTTPS.
  • Tillagd AV1-videoformatkodare, speciellt optimerad för användning i videokonferenser baserat på WebRTC-protokollet. Användningen av AV1 i videokonferenser gör det möjligt att öka komprimeringseffektiviteten och ge möjligheten att sända på kanaler med en bandbredd på 30 kbit/sek.
  • I JavaScript implementerar objekten Array, String och TypedArrays metoden at(), som låter dig använda relativ indexering (relativ position anges som arrayindex), inklusive angivande av negativa värden i förhållande till slutet (till exempel, "arr.at(-1)" returnerar det sista elementet i arrayen).
  • JavaScript har lagt till egenskapen ".indies" för reguljära uttryck, som innehåller en array med start- och slutpositioner för grupper av matchningar. Egenskapen fylls endast i när det reguljära uttrycket körs med flaggan "/d". const re = /(a)(b)/d; const m = re.exec('ab'); console.log(m.index[0]); // 0 — alla matchgrupper // → [0, 2] console.log(m.index[1]); // 1 är den första gruppen av matchningar // → [0, 1] console.log(m.index[2]); // 2 - andra gruppen av matcher // → [1, 2]
  • Prestandan för "super"-egenskaper (till exempel super.x) för vilka inline-cachen är aktiverad har optimerats. Prestandan för att använda "super" är nu nära prestandan för att komma åt vanliga egenskaper.
  • Anrop av WebAssembly-funktioner från JavaScript har påskyndats avsevärt på grund av användningen av inline-distribution. Denna optimering förblir experimentell än så länge och kräver att den körs med flaggan "-turbo-inline-js-wasm-calls".
  • Lade till WebXR Depth Sensing API, som låter dig bestämma avståndet mellan objekt i användarens miljö och användarens enhet, till exempel för att skapa mer realistiska augmented reality-applikationer. Låt oss påminna dig om att WebXR API låter dig förena arbete med olika klasser av virtuell verklighetsenheter, från stationära 3D-hjälmar till lösningar baserade på mobila enheter.
  • Funktionen WebXR AR Lighting Estimation har stabiliserats, vilket gör det möjligt för WebXR AR-sessioner att bestämma parametrar för omgivande ljus för att ge modellerna ett mer naturligt utseende och bättre integration med användarens miljö.
  • Origin Trials-läge (experimentella funktioner som kräver separat aktivering) lägger till flera nya API:er som för närvarande är begränsade till Android-plattformen. 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.
    • Metoden getCurrentBrowsingContextMedia(), som gör det möjligt att fånga en MediaStream-videoström som återspeglar innehållet på den aktuella fliken. Till skillnad från den liknande getDisplayMedia()-metoden, när getCurrentBrowsingContextMedia() anropas, visas en enkel dialogruta för användaren för att bekräfta eller blockera överföringen av video med innehållet på fliken.
    • Insertable Streams API, som låter dig manipulera råa mediaströmmar som överförs via MediaStreamTrack API, såsom kamera- och mikrofondata, skärmdumpsresultat eller mellanliggande codec-avkodningsdata. WebCodec-gränssnitt används för att presentera råa ramar och en ström genereras liknande vad WebRTC Insertable Streams API genererar baserat på RTCPeerConnections. På den praktiska sidan tillåter det nya API:et funktionalitet som att tillämpa maskininlärningstekniker för att identifiera eller kommentera objekt i realtid, eller lägga till effekter som bakgrundsklippning före kodning eller efter avkodning med en codec.
    • Möjligheten att paketera resurser i paket (Web Bundle) för att organisera mer effektiv laddning av ett stort antal medföljande filer (CSS-stilar, JavaScript, bilder, iframes). Bland bristerna i det befintliga stödet för paket för JavaScript-filer (webpack), som webbpaketet försöker eliminera: paketet i sig, men inte dess beståndsdelar, kan hamna i HTTP-cachen; kompilering och exekvering kan börja först efter att paketet har laddats ner helt; Ytterligare resurser som CSS och bilder måste kodas i form av JavaScript-strängar, vilket ökar storleken och kräver ytterligare ett parsningssteg.
    • Stöd för undantagshantering i WebAssembly.
  • Stabiliserade Declarative Shadow DOM API för att skapa nya rotgrenar i Shadow DOM, till exempel för att separera en importerad tredjepartselementstil och dess associerade DOM-undergren från huvuddokumentet. Det föreslagna deklarativa API:et låter dig endast använda HTML för att lossa DOM-grenar utan att behöva skriva JavaScript-kod.
  • CSS-egenskapen bildförhållande, som låter dig uttryckligen binda bildförhållandet till vilket element som helst (för att automatiskt beräkna den saknade storleken när du endast anger höjd eller bredd), implementerar möjligheten att interpolera värden under animering (smidig övergång från ett bildförhållande till en annan).
  • Lade till möjligheten att återspegla tillståndet för anpassade HTML-element i CSS genom pseudoklassen ":state()". Funktionaliteten implementeras i analogi med förmågan hos vanliga HTML-element att ändra tillstånd beroende på användarinteraktion.
  • CSS-egenskapen "appearance" stöder nu värdet "auto", som är inställt som standard för Och , och på Android-plattformen dessutom för , , , Och .
  • Stöd för "clip"-värdet har lagts till i "overflow" CSS-egenskapen, när den är inställd, klipps innehåll som sträcker sig bortom blocket till gränsen för blockets tillåtna overflow utan möjlighet att rulla. Värdet som bestämmer hur långt innehåll kan sträcka sig utanför den faktiska gränsen för rutan innan klippningen börjar ställs in via den nya CSS-egenskapen "overflow-clip-margin". Jämfört med "overflow: hidden" möjliggör användning av "overflow: clip" bättre prestanda.
    Chrome 90 versionChrome 90 version
  • Feature-Policy HTTP-rubriken har ersatts av en ny Permissions-Policy-rubrik för att styra delegering av behörigheter och aktivering av avancerade funktioner, som inkluderar stöd för strukturerade fältvärden (du kan till exempel nu ange "Permissions-Policy: geolocation" =()" istället för "Funktionspolicy: geolokalisering 'ingen'").
  • Förstärkt skydd mot användning av Protocol Buffers för attacker orsakade av spekulativ exekvering av instruktioner i processorer. Skydd implementeras genom att lägga till MIME-typen "application/x-protobuffer" till listan över aldrig sniffade MIME-typer, som bearbetas genom Cross-Origin-Read-Blocking-mekanismen. Tidigare var MIME-typen "application/x-protobuf" redan inkluderad i en liknande lista, men "application/x-protobuffer" utelämnades.
  • File System Access API implementerar möjligheten att flytta den aktuella positionen i en fil bortom dess slut, och fyller den resulterande luckan med nollor under efterföljande skrivning genom anropet FileSystemWritableFileStream.write(). Denna funktion låter dig skapa glesa filer med tomma utrymmen och avsevärt förenklar organisationen av att skriva till en fil strömmar med oordnad ankomst av datablock (exempelvis praktiseras detta i BitTorrent).
  • Lade till StaticRange-konstruktor med implementering av lätta Range-typer som inte kräver uppdatering av alla associerade objekt varje gång DOM-trädet ändras.
  • Implementerat möjligheten att specificera bredd- och höjdparametrar för element specificeras inuti elementet . Denna funktion låter dig beräkna bildförhållandet för element , i analogi med hur det görs för , Och .
  • Icke-standardiserat stöd för RTP-datakanaler har tagits bort från WebRTC, och det rekommenderas att använda SCTP-baserade datakanaler istället.
  • Egenskaperna navigator.plugins och navigator.mimeTypes returnerar nu alltid ett tomt värde (efter att Flash-stödet upphörde behövdes dessa egenskaper inte längre).
  • En stor del av små förbättringar har gjorts av verktygen för webbutvecklare och ett nytt CSS-felsökningsverktyg, flexbox, har lagts till.
    Chrome 90 version

Förutom innovationer och buggfixar eliminerar den nya versionen 37 sårbarheter. Många av sårbarheterna identifierades som ett resultat av automatiserade tester med hjälp av verktygen AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer och 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 kontantbelöningsprogrammet för att upptäcka sårbarheter för den aktuella versionen, betalade Google ut 19 utmärkelser värda $54000 20000 (en utmärkelse på $10000 5000, en utmärkelse på $3000 2000, två utmärkelser på $1000 500, tre utmärkelser på $6 XNUMX, en utmärkelse på $XNUMX XNUMX, en utmärkelse på $XNUMX XNUMX och fyra utmärkelser på $XNUMX XNUMX ). ). Storleken på de XNUMX belöningarna har ännu inte fastställts.

Separat kan det noteras att igår, efter bildandet av den korrigerande utgåvan 89.0.4389.128, men före lanseringen av Chrome 90, publicerades en annan exploatering, som använde en ny 0-dagars sårbarhet som inte fixades i Chrome 89.0.4389.128 . Det är ännu inte klart om detta problem har åtgärdats i Chrome 90. Som i det första fallet täcker utnyttjandet endast en sårbarhet och innehåller inte kod för att kringgå sandlådeisolering (när Chrome körs med flaggan "--no-sandbox" , utnyttjas när du öppnar en webbsida på Windows-plattformen som låter dig köra Anteckningar). Sårbarheten i samband med den nya exploateringen påverkar WebAssembly-tekniken.

Källa: opennet.ru

Lägg en kommentar