Google har slÀppt version 93 av webblÀsaren Chrome. Samtidigt finns det en stabil version av det fria projektet Chromium, som utgör grunden för Chrome. WebblÀsaren Chrome kÀnnetecknas av att den anvÀnder Google-logotyper, har en notifieringssystem för krascher, moduler för uppspelning av skyddat videoinnehÄll (DRM), ett system för automatisk installation av uppdateringar och överföring av RLZ-parametrar vid sökning. NÀsta Chrome-version, 94, Àr planerad till den 21 september (utvecklingen har flyttats till en 4-veckors releasecykel).
Huvudsakliga Àndringar i Chrome 93:
- Utseendet pĂ„ informationsblocket om sidan (page info) har uppdaterats och stöder nu inbĂ€ddade block, och rullgardinsmenyer för Ă„tkomstrĂ€ttigheter har ersatts med vĂ€xlingsknappar. De viktigaste uppgifterna visas först. Ăndringen Ă€r inte tillgĂ€nglig för alla anvĂ€ndare; för att aktivera den kan instĂ€llningen "chrome://flags/#page-info-version-2-desktop" anvĂ€ndas.

- För en liten procentandel av anvÀndarna har indikatorn för sÀker anslutning i adressfÀltet experimentellt ersatts med en mer neutral och otvetydig symbol (lÄset har ersatts med tecknet "V"). För anslutningar utan kryptering fortsÀtter indikatorn "inte sÀker" att visas. Anledningen till bytet av indikatorn nÀmns vara att mÄnga anvÀndare associerar lÄsindikatorn med att de kan lita pÄ webbplatsens innehÄll, snarare Àn att de uppfattar den som en indikation pÄ krypterad anslutning. Enligt en undersökning av Google förstÄr endast 11% av anvÀndarna betydelsen av lÄsikonen.

- I listan över nyligen stÀngda flikar visas innehÄllet i de stÀngda flikgrupperna (tidigare visades bara namnet pÄ gruppen utan detaljerad information om innehÄllet) med möjlighet att ÄterstÀlla hela gruppen eller enskilda flikar. Denna möjlighet har inte aktiverats för alla anvÀndare, sÄ det kan krÀvas att instÀllningen "chrome://flags/#tab-restore-sub-menus" Àndras för att aktivera den.

- För företag har nya instÀllningar implementerats: DefaultJavaScriptJitSetting, JavaScriptJitAllowedForSites och JavaScriptJitBlockedForSites. Dessa instÀllningar gör det möjligt att hantera JIT-less-lÀget, som inaktiverar anvÀndningen av JIT-kompilering vid körning av JavaScript (endast Ignition-tolk anvÀnds) och förbjuder tilldelning av körbar minne under kodens körning. Att inaktivera JIT kan vara fördelaktigt för att öka sÀkerheten vid anvÀndning av potentiellt farliga webbapplikationer, med en prestandaförlust av cirka 17% för JavaScript. Noterbart Àr att Microsoft har gÄtt Ànnu lÀngre och implementerat ett experimentellt lÀge i webblÀsaren Edge, kallat "Super Duper Secure", som gör det möjligt för anvÀndaren att inaktivera JIT och aktivera hÄrdvaruskyddsmekanismer som inte Àr kompatibla med JIT, sÄsom CET (Controlflow-Enforcement Technology), ACG (Arbitrary Code Guard) och CFG (Control Flow Guard) för processer som bearbetar webb-innehÄll. Om experimentet visar sig framgÄngsrikt kan man förvÀnta sig att det implementeras i huvudversionen av Chrome.
- PÄ sidan för den nya fliken finns en lista över de mest efterfrÄgade dokumenten som sparats i Google Drive. InnehÄllet i listan motsvarar avsnittet Prioritet i drive.google.com. För att hantera visningen av innehÄllet i Google Drive kan instÀllningarna "chrome://flags/#ntp-modules" och "chrome://flags/#ntp-drive-module" anvÀndas.

- För sidan för den nya fliken har nya informationskort föreslagits, vilket underlÀttar att hitta nyligen visat innehÄll och relaterad information. Kortleken syftar till att förenkla fortsÀttningen av arbetet med information som avbröts, till exempel kan korten hjÀlpa till att hitta ett recept pÄ en matrÀtt som nyligen hittades online men försvann efter att sidan stÀngdes, eller att fortsÀtta med att vÀlja produkter i butiker. Som ett experiment har anvÀndarna erbjudits tvÄ nya kort: "Recept" (chrome://flags/#ntp-recipe-tasks-module) för att söka efter matlagningsrecept och visa nyligen visade recept; "Inköp" (chrome://flags/#ntp-chrome-cart-module) för pÄminnelser om artiklar valda i nÀtbutiker.
- I Android-versionen har valfri stöd för en stÀndig sökpanel lagts till (chrome://flags/#continuous-search), vilket gör att de senaste sökresultaten i Google hÄlls i fokus (panelen fortsÀtter att visa resultat Àven efter navigering till andra sidor).

- I den version för Android-plattformen har en experimentell citatdelningsfunktion lagts till (chrome://flags/#webnotes-stylize), vilket gör det möjligt att spara en markerad del av en sida som ett citat och dela det med andra anvÀndare.
- Vid publicering av nya tillÀgg eller uppdateringar i Chrome Web Store krÀvs nu att utvecklaren anvÀnder tvÄfaktorsautentisering.
- För anvÀndare av Google-konto finns det ett alternativ för att spara betalningsinformation i sitt Google-konto.
- I inkognitolÀget, nÀr alternativet för rensning av navigeringsdata aktiveras, har en ny bekrÀftelsedialog implementerats som förklarar att rensning av data kommer att stÀnga fönstret och avsluta alla sessioner i inkognitolÀget.
- PÄ grund av identifierade inkompatibiliteter med firmware pÄ vissa enheter har stödet för den nya metoden för nyckelutbyte, som introducerades i Chrome 91 och Àr motstÄndskraftig mot kvantdatorattacker, midlertidigt inaktiverats. Metoden Àr baserad pÄ anvÀndning av TLSv1.3-förlÀngningen CECPQ2 (Combined Elliptic-Curve and Post-Quantum 2), som kombinerar den klassiska nyckelutbytesmetoden X25519 med HRSS-schemat, som Àr baserat pÄ algoritmen NTRU Prime, utvecklad för postkvantkryptosystem.
- Portarna 989 (ftps-data) och 990 (ftps) har lagts till i listan över blockerade nÀtverksportar för att förhindra ALPACA-attacker. Tidigare blockerades portarna 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061, 6566 och 10080 för att skydda mot NAT slipstreaming-attacker.
- Stödet för algoritmen 3DES har upphört i TLS. Specifikt har chifferuppsÀttningen TLS_RSA_WITH_3DES_EDE_CBC_SHA tagits bort, som Àr sÄrbar för Sweet32-attacker.
- Stödet för distributionen Ubuntu 16.04 har upphört.
- Det har gjorts möjligt att anvÀnda API:et WebOTP mellan olika enheter som Àr kopplade genom ett gemensamt Google-konto. WebOTP tillÄter webappen att lÀsa engÄngskoder för autentisering som skickas via SMS. Den föreslagna Àndringen gör det möjligt att fÄ en autentiseringskod pÄ en mobil enhet med Chrome för Android och anvÀnda den pÄ en skrivbordssystem.
- API:et User-Agent Client Hints, som utvecklas som ett alternativ till User-Agent-headern, har utvidgats. User-Agent Client Hints gör det möjligt att selektivt tillhandahÄlla data om specifika webblÀsar- och systemparametrar (version, plattform etc.) endast efter begÀran. servern. AnvÀndaren kan Ä sin sida bestÀmma vilken information som kan tillhandahÄllas webbplatsÀgare. Vid anvÀndning av User-Agent Client Hints skickas inte webblÀsarens identifierare utan en uttrycklig begÀran, och som standard anges endast grundlÀggande parametrar, vilket gör det svÄrt att genomföra passiv identifiering.
I den nya versionen har stödet för parametern Sec-CH-UA-Bitness implementerats för att returnera uppgifter om plattformens bitbredd, vilket kan anvÀndas för att leverera optimerade binÀrfiler. Som standard skickas parametern Sec-CH-UA-Platform med allmÀn information om plattformen. I vÀrdet UADataValues, som returneras vid anrop av getHighEntropyValues(), ges som standard allmÀnna parametrar om detaljerad information inte kan levereras. Metoden toJSON har lagts till i objektet NavigatorUAData, vilket möjliggör anvÀndningen av konstruktioner som JSON.stringify(navigator.userAgentData).
- Stabilisering och som standard erbjuds möjligheten att paketera resurser i paket i Web Bundle-format, vilket Àr lÀmpligt för att möjliggöra en mer effektiv nedladdning av ett stort antal relaterade filer (CSS-stilar, JavaScript, bilder, iframe). Bland nackdelarna med det nuvarande stödet för paket för JavaScript-filer (webpack) som man försöker ÄtgÀrda i Web Bundle: i HTTP-cachen kan sjÀlva paketet lagras, men inte dess bestÄndsdelar; kompilering och körning kan börja först efter fullstÀndig nedladdning av paketet; ytterligare resurser, sÄsom CSS och bilder, mÄste kodas i form av JavaScript-strÀngar, vilket leder till att storleken ökar och en ytterligare parseringsfas mÄste genomföras.
- WebXR Plane Detection API har lagts till, vilket tillhandahÄller uppgifter om plana ytor i en virtuell 3D-miljö. Den angivna API:n möjliggör att man kan undvika resurskrÀvande databehandling som erhÄlls genom MediaDevices.getUserMedia()-anrop, genom att anvÀnda egna implementeringar av datorseendealgoritmer. Det Àr vÀrt att pÄminna om att WebXR API möjliggör en enhetlig hantering av olika typer av virtuella verklighetsenheter, frÄn stationÀra 3D-headset till lösningar baserade pÄ mobila enheter.
- I lÀget Origin Trials (experimentella funktioner som krÀver separat aktivering) har flera nya API:er lagts till. Origin Trial innebÀr möjlighet att arbeta med det angivna API:et frÄn applikationer som laddas frÄn localhost eller 127.0.0.1, eller efter registrering och erhÄllande av en speciell token som gÀller under en begrÀnsad tid för en specifik webbplats.
- Multi-Screen Window Placement API har föreslagits, vilket gör det möjligt att placera fönster pÄ vilken skÀrm som helst ansluten till det aktuella systemet, samt att spara fönsterpositionen och vid behov expandera fönstret till helskÀrm. Till exempel kan ett webbprogram för att visa presentationer organisera visning av slides pÄ en skÀrm, medan det visar anteckningar för talaren pÄ en annan.
- I rubriken Cross-Origin-Embedder-Policy, som styr isoleringslÀget för Cross-Origin och definierar regler för sÀker anvÀndning av privilegierade operationer pÄ sidan, har stöd för parametern "credentialless" lagts till för att inaktivera överföringen av information relaterad till autentisering, sÄsom cookies och klientcertifikat.
- För fristĂ„ende webbaserade applikationer (PWA, Progressive Web Apps), som styr rendering av innehĂ„llet i fönstret och hanterar inmatning, har ett överlĂ€gg med fönsterkontrollsobjekt, sĂ„som en rubrikomrĂ„de och knappar för expandering/minimering av fönstret, tillhandahĂ„llits. ĂverlĂ€gget utökar det redigeringsbara omrĂ„det till hela fönstret och möjliggör att egna element kan lĂ€ggas till i rubrikomrĂ„det.

- Möjligheten att skapa PWA-appar som kan anvÀndas som URL-hanterare har lagts till. Till exempel kan appen music.example.com registrera sig som en URL-hanterare för https://*.music.example.com, och alla omdirigeringar frÄn externa applikationer via dessa lÀnkar, som frÄn meddelandeappar och e-postklienter, kommer att öppna den aktuella PWA-appen i stÀllet för en ny flik i webblÀsaren.
- Möjligheten att ladda CSS-filer med uttrycket "import" har införts, liknande laddningen av JavaScript-moduler, vilket Àr praktiskt för att skapa egna element och gör det möjligt att undvika att stila med kod i JavaScript. import sheet from './styles.css' assert { type: 'css' }; document.adoptedStyleSheets = [sheet]; shadowRoot.adoptedStyleSheets = [sheet];
- En ny statisk metod AbortSignal.abort() har lagts till, som returnerar ett AbortSignal-objekt dÀr parameter aborted redan har stÀllts in. IstÀllet för att anvÀnda flera kodrader för att skapa ett AbortSignal-objekt i statusen aborted kan det nu göras med en enda rad "return AbortSignal.abort()".
- Elementet Flexbox har fÄtt stöd för nyckelord som start, end, self-start, self-end, left och right, vilka kompletterar nyckelorden center, flex-start och flex-end med medel för förenklad justering av positionen för flex-element.
- En ny valfri egenskap "cause" har implementerats i konstruktorn Error(), som gör det enkelt att lĂ€nka fel tillsammans. const parentError = new Error('parent'); const error = new Error('parent', { cause: parentError }); console.log(error.cause === parentError); // â true
- Egenskapen HTMLMediaElement.controlsList har fÄtt stöd för lÀget noplaybackrate, vilket gör det möjligt att inaktivera delar av det medföljande anvÀndargrÀnssnittet i webblÀsaren för att Àndra uppspelningshastigheten för multimediainnehÄll.
- En header har lagts till: Sec-CH-Prefers-Color-Scheme, vilket möjliggör att skicka information om anvÀndarens föredragna fÀrgschema vid begÀran, vilket gör det möjligt för webbplatsen att optimera laddningen av CSS relaterade till det valda schemat och undvika synliga vÀxlingar mellan andra scheman.
- Egenskapen Object.hasOwn har lagts till, som Ă€r en förenklad version av Object.prototype.hasOwnProperty, implementerad som en statisk metod. Object.hasOwn({ prop: 42 }, 'prop') // â true
- I JIT-kompilatorn Sparkplug, som Àr avsedd för mycket snabb rÄkompilering, har lÀget för batchbearbetning av operationer lagts till, vilket minskar overheaden av att vÀxla mellan skrivrÀtt och körlÀget. Sparkplug kompilerar nu flera funktioner samtidigt och anropar mprotect en gÄng för att Àndra Ätkomstbehörigheterna för hela gruppen. Det föreslagna lÀget minskar kompileringstiden med (upp till 44%) utan negativ pÄverkan pÄ JavaScripts körprestanda.

- I Android-versionen har de inbyggda skyddsmekanismerna i V8-motorn mot sidokanalattacker, sÄsom Spectre, inaktiverats, eftersom de inte bedöms vara lika effektiva som att isolera webbplatser i separata processer. I desktopversionen inaktiverades dessa mekanismer redan i Chrome 70. Att avaktivera överflödiga kontroller har ökat prestandan med 2-15%.

- FörbÀttringar har gjorts i verktygen för webbutvecklare. I stilinspektörslÀget finns nu möjlighet att redigera förfrÄgningar skapade med uttrycket @container. I nÀtverksinspektörslÀget har en förhandsvisning av resurser i Web bundle-format implementerats. I webbkonsolen har alternativ för att kopiera rader som JavaScript- eller JSON-litteraler lagts till i kontextmenyn. Felsökning av CORS (Cross-Origin Resource Sharing) har gjorts enklare.

Förutom nya funktioner och buggfixar i den nya versionen har 27 sÄrbarheter ÄtgÀrdats. MÄnga av sÄrbarheterna upptÀcktes genom automatiserad testning med verktygen AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer och AFL. Inga kritiska problem som gör det möjligt att kringgÄ alla skyddsnivÄer i webblÀsaren och köra kod utanför sandbox-miljön har upptÀckts. Inom ramen för programmet för belöningsutbetalningar för upptÀckte sÄrbarheter har Google betalat ut 19 priser pÄ totalt 136500 dollar (tre priser pÄ 20000 dollar, ett pris pÄ 15000 dollar, tre priser pÄ 10000 dollar, ett pris pÄ 7500 dollar, tre priser pÄ 5000 dollar och tre priser pÄ 3000 dollar). Storleken pÄ 5 av belöningarna har Ànnu inte faststÀllts.
KĂ€lla: opennet.ru









