Google har slÀppt version 101 av webblÀsaren Chrome. Samtidigt Àr den stabila versionen av det fria projektet Chromium tillgÀnglig, vilket Àr grunden för Chrome. Chrome-webblÀsaren skiljer sig frÄn Chromium genom att anvÀnda Googles logotyper, ha ett system för att skicka meddelanden vid krasch, moduler för att spela upp kopieringsskyddat videoinnehÄll (DRM), ett system för automatisk installation av uppdateringar, konstant aktivering av Sandbox-isolering, leverans av nycklar till Google API och överföring av RLZ-parametrar vid sökningar. För dem som behöver mer tid för uppdatering finns en separat stödlinje för Extended Stable, som kommer att hÄllas under 8 veckor och innehÄlla en uppdatering för den tidigare versionen Chrome 100. NÀsta version av Chrome 102 Àr planerad till den 24 maj.
HuvudÀndringar i Chrome 101:
- Funktionen Side Search har lagts till, vilket ger möjlighet att se sökresultaten i en sidopanel samtidigt som en annan sida visas (i ett fönster kan man se bÄde innehÄllet pÄ sidan och resultatet frÄn sökmotorn). Efter att ha navigerat till en webbplats frÄn en sökresultatsida pÄ Google visas en ikon med bokstaven "G" framför inmatningsfÀltet i adressfÀltet, och nÀr man klickar pÄ den öppnas sidopanelen med resultaten frÄn den tidigare genomförda sökningen. Funktionen Àr som standard inte aktiverad pÄ alla system, för att aktivera den kan instÀllningen "chrome://flags/#side-search" anvÀndas.

- I adressfÀltet Omnibox har förhandsrendering (prerendering) av rekommendationernas innehÄll implementerats, vilket föreslÄs nÀr man skriver in. Tidigare, för att pÄskynda navigering frÄn adressfÀltet, laddades de mest sannolika för övergÄng rekommendationerna in utan att vÀnta pÄ anvÀndarens klick, med hjÀlp av Prefetch-anrop. Nu, förutom att de laddas, renderas de ocksÄ i bufferten (inklusive att skripten körs och DOM-trÀdet skapas), vilket gör att rekommendationerna omedelbart kan visas efter klick. För att hantera förhandsrenderingen föreslÄs instÀllningar "chrome://flags/#enable-prerender2", "chrome://flags/#omnibox-trigger-for-prerender2" och "chrome://flags/#search-suggestion-for-prerender2".
- Den beskurna informationen i HTTP-huvudet User-Agent och JavaScript-parametrarna navigator.userAgent, navigator.appVersion och navigator.platform. Endast uppgifter om webblÀsarens namn, en betydande version av webblÀsaren (versionens MINOR.BUILD.PATCH-komponenter har ersatts med 0.0.0), plattform och enhetstyp (mobiltelefon, PC, surfplatta) har lÀmnats kvar i huvudet. För att fÄ ytterligare data, sÄsom exakt version och utökade plattformsuppgifter, Àr det nödvÀndigt att anvÀnda API:et User Agent Client Hints. För webbplatser som inte har tillrÀckligt med ny information och som fortfarande inte Àr redo att gÄ över till User Agent Client Hints, finns det möjlighet att ÄterlÀmna fullstÀndig User-Agent fram till maj 2023.
- Beteendet för funktionen setTimeout har Ă€ndrats nĂ€r ett nollargument anges för att definiera fördröjningen av anropet. FrĂ„n och med Chrome 101 kommer koden som anges som «setTimeout(âŠ, 0)» att köras omedelbart, utan en fördröjning pĂ„ 1 ms, som specifikationen krĂ€ver. För upprepade inbĂ€ddade anrop av setTimeout tillĂ€mpas en fördröjning pĂ„ 4 ms.
- I versionen för Android-plattformen har stöd för begÀran om behörighet för att visa meddelanden införts (i Android 13, för att visa meddelanden mÄste appen ha behörigheten «POST_NOTIFICATIONS», utan vilken meddelanden kommer att blockeras). NÀr Chrome körs i Android 13-miljön kommer webblÀsaren nu att visa en begÀran om att fÄ behörighet att visa meddelanden.
- Möjligheten att anvÀnda API:et WebSQL i tredjepartsskript har avlÀgsnats. Som standard blockerades WebSQL i skript som laddades frÄn andra webbplatser i Chrome 97, men det lÀmnades en möjlighet att avaktivera detta beteende. I Chrome 101 har detta alternativ avlÀgsnats. I framtiden planeras det att gradvis helt avbryta stödet för WebSQL, oavsett anvÀndningskontext. IstÀllet för WebSQL rekommenderas det att anvÀnda API:et Web Storage och Indexed Database. WebSQL-hanteraren Àr baserad pÄ SQLite-kod och kan ha utnyttjats av illvilliga aktörer för att exploatera sÄrbarheter i SQLite.
- Namn pÄ företagsriktlinjer (chrome://policy) som innehÄller icke-inkluderande termer har tagits bort. FrÄn och med Chrome 86 har det föreslagits ersÀttningar för dessa riktlinjer som anvÀnder inkluderande terminologi. En rensning av termer som «whitelist», «blacklist», «native» och «master» har genomförts. Till exempel har riktlinjen URLBlacklist döpts om till URLBlocklist, AutoplayWhitelist till AutoplayAllowlist och NativePrinters till Printers.
- I lÀget Origin Trials (experimentella funktioner som krÀver separat aktivering) har testningen av API:et Federated Credential Management (FedCM) pÄbörjats, vilket gör det möjligt att skapa sammanslagna identifieringstjÀnster som sÀkerstÀller integritet och fungerar utan mekanismer för spÄrning mellan webbplatser, sÄsom behandling av tredjepartscookies. Origin Trial innebÀr möjligheten att arbetas med det angivna API:et frÄn applikationer laddade frÄn localhost eller 127.0.0.1, eller efter registrering och erhÄllande av en speciell token som Àr giltig under en begrÀnsad tid för en specifik webbplats.
- Mekanismen Priority Hints har stabiliserats och erbjuds nu alla intresserade, vilket gör det möjligt att ange betydelsen av vissa laddade resurser genom att ange den extra attributen "importance" i taggar sÄsom iframe, img och link. Attributet kan anta vÀrdena "auto" och "low", samt "high", som pÄverkar ordningen för hur externa resurser laddas av webblÀsaren.
- Egenskapen AudioContext.outputLatency har lagts till, genom vilken man kan fÄ information om den förvÀntade fördröjningen innan ljudet spelas upp (fördröjning mellan begÀran om ljud och början av bearbetningen av de mottagna uppgifterna av ljudutgÄngen).
- CSS-egenskapen font-palette och regeln @font-palette-values har lagts till, vilket möjliggör att vÀlja en palett frÄn en fÀrgad font eller definiera sin egen palett. Till exempel kan denna funktion anvÀndas för att matcha fÀrgade symbolsprÄk eller emoji med fÀrgen pÄ innehÄllets design eller för att aktivera mörkt eller ljust lÀge för fonten.
- CSS-funktionen hwb() har lagts till, vilket ger ett alternativt sÀtt att ange fÀrger i sRGB-format i HWB (Hue, Whiteness, Blackness), vilket liknar HSL-formatet (Hue, Saturation, Lightness), men Àr enklare för mÀnsklig perception.
- I metoden window.open() behandlas angivandet av egenskapen popup i strÀngen windowFeatures, utan att tilldela ett vÀrde (dvs. nÀr popup bara anges, inte popup=true) nu som att öppna ett miniatyrpopupfönster (analogt med "popup=true") istÀllet för att som standard tilldela vÀrdet "false", vilket var ologiskt och ledde utvecklare vilse.
- I API MediaCapabilities, som tillhandahÄller information om enhets- och webblÀsarkapabiliteter för avkodning av multimedia, har stöd för WebRTC-strömmar lagts till.
- Den tredje versionen av API Secure Payment Confirmation har föreslagits, vilket tillhandahÄller verktyg för ytterligare bekrÀftelse av genomförda betalningsoperationer. Den nya versionen har lagt till stöd för identifierare som krÀver inmatning av data, definiering av en ikon för indikation av bekrÀftelsefel samt ett valfritt egenskap för payeeName.
- API USBDevice har fÄtt metoden forget() för att Äterkalla tidigare givna anvÀndartillstÄnd för Ätkomst till USB-enheten. Dessutom Àr instanser av USBConfiguration, USBInterface, USBAlternateInterface och USBEndpoint nu lika vid strikt jÀmförelse ("===", pekar pÄ samma objekt) om de returneras för samma USBDevice-objekt.
- FörbÀttringar har gjorts i verktygen för webbutvecklare. Möjlighet att importera och exportera anvÀndarregistrerade ÄtgÀrder i JSON-format har tillhandahÄllits (exempel). I webbkonsolen och kodvisningsgrÀnssnittet har berÀkning och visning av privata egenskaper förbÀttrats. Stöd för att arbeta med fÀrgmodellen HWB har lagts till. CSS-panelen har fÄtt möjlighet att visa kaskadlager definierade med regeln @layer.

Förutom nyheter och buggfixar har den nya versionen ÄtgÀrdat 30 sÄrbarheter. MÄnga av sÄrbarheterna upptÀcktes genom automatiserad testning med verktyg som AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer och AFL. Inga kritiska problem som skulle kunna kringgÄ alla sÀkerhetsnivÄer i webblÀsaren och kör kod utanför sandlÄdemiljön har upptÀckts. Inom ramen för programmet för belöning av sÄrbarhet har Google för den aktuella versionen utbetalat 25 belöningar till ett belopp av 81 000 USD (en belöning pÄ 10 000 USD, tre belöningar pÄ 7 500 USD, tre belöningar pÄ 7 000 USD, en belöning pÄ 6 000 USD, tvÄ belöningar pÄ 5 000 USD, fyra belöningar pÄ 2 000 USD, tre belöningar pÄ 1 000 USD och en belöning pÄ 500 USD). Störrelsen pÄ 6 av belöningarna Àr Ànnu inte faststÀlld.
KĂ€lla: opennet.ru


