Chrome udgivelse 105

Google har løftet sløret for udgivelsen af ​​webbrowseren Chrome 105. Samtidig er en stabil udgivelse af det gratis Chromium-projekt, der fungerer som grundlaget for Chrome, tilgængelig. Chrome-browseren adskiller sig fra Chromium i brugen af ​​Google-logoer, tilstedeværelsen af ​​et system til afsendelse af meddelelser i tilfælde af et nedbrud, moduler til afspilning af kopibeskyttet videoindhold (DRM), et system til automatisk installation af opdateringer, der permanent muliggør Sandbox-isolering , leverer nøgler til Google API og sender RLZ-, når der søges i. parametre. For dem, der har brug for mere tid til at opdatere, understøttes Extended Stable-grenen separat, efterfulgt af 8 uger. Den næste udgivelse af Chrome 106 er planlagt til den 27. september.

Vigtigste ændringer i Chrome 105:

  • Support til specialiserede webapplikationer Chrome Apps er udgået, erstattet af selvstændige webapplikationer baseret på Progressive Web Apps (PWA)-teknologi og standard web-API'er. Google annoncerede oprindeligt sin hensigt om at opgive Chrome Apps tilbage i 2016 og planlagde at stoppe med at støtte dem indtil 2018, men udsatte derefter denne plan. I Chrome 105, når du forsøger at installere Chrome Apps, vil du modtage en advarsel om, at de ikke længere vil blive understøttet, men apps vil fortsætte med at køre. I Chrome 109 vil muligheden for at køre Chrome Apps være deaktiveret.
  • Tilvejebragt yderligere isolation til rendererprocessen, som er ansvarlig for renderingen. Denne proces udføres nu i en ekstra container (App Container), implementeret oven på det eksisterende sandbox isolationssystem. Hvis en sårbarhed i gengivelseskoden udnyttes, vil de tilføjede begrænsninger forhindre angriberen i at få adgang til netværket ved at forhindre adgang til systemopkald relateret til netværksfunktioner.
  • Implementeret sin egen forenede lagring af rodcertifikater fra certificeringsmyndigheder (Chrome Root Store). Den nye butik er endnu ikke aktiveret som standard, og indtil implementeringen er fuldført, vil certifikater fortsat blive verificeret ved hjælp af en butik, der er specifik for hvert operativsystem. Løsningen, der testes, minder om Mozillas tilgang, som opretholder et separat uafhængigt rodcertifikatlager til Firefox, der bruges som det første link til at tjekke certifikattillidskæden, når man åbner websteder over HTTPS.
  • Forberedelserne er begyndt til udfasningen af ​​Web SQL API, som er ustandardiseret, stort set ubrugt og kræver redesign for at opfylde moderne sikkerhedskrav. Chrome 105 forhindrer adgang til Web SQL fra kode, der er indlæst uden brug af HTTPS, og tilføjer også en advarsel om udfasning til DevTools. Web SQL API er planlagt til at blive fjernet i 2023. For udviklere, der har brug for en sådan funktionalitet, vil der blive udarbejdet en erstatning baseret på WebAssembly.
  • Chrome-synkronisering understøtter ikke længere synkronisering med Chrome 73 og tidligere udgivelser.
  • For macOS- og Windows-platformene er den indbyggede certifikatfremviser aktiveret, som erstatter opkald til grænsefladen fra operativsystemet. Tidligere blev den indbyggede fremviser kun brugt i builds til Linux og ChromeOS.
  • Android-versionen tilføjer indstillinger til at administrere Emner & Interessegruppe API, fremmet som en del af Privacy Sandbox-initiativet, som giver dig mulighed for at definere kategorier af brugerinteresser og bruge dem i stedet for at spore cookies til at identificere grupper af brugere med lignende interesser uden at identificere individuelle brugere. I den sidste udgivelse blev lignende indstillinger tilføjet til versioner til Linux, ChromeOS, macOS og Windows.
  • Når du aktiverer avanceret browserbeskyttelse (Sikker browsing > Forbedret beskyttelse), indsamles telemetri om installerede tilføjelser, adgang til API'et og forbindelser til eksterne websteder. Disse data bruges på Googles servere til at opdage ondsindet aktivitet og overtrædelse af regler fra browsertilføjelser.
  • Forældet og vil blokere brugen af ​​ikke-ASCII-tegn i domæner, der er angivet i cookie-headeren i Chrome 106 (for IDN-domæner skal domæner være i punycode-format). Ændringen vil bringe browseren i overensstemmelse med RFC 6265bis og den adfærd, der er implementeret i Firefox.
  • En Custom Highlight API er blevet foreslået, designet til vilkårligt at ændre stilen af ​​udvalgte tekstområder og tillader dig ikke at være begrænset af den faste stil, der leveres af browseren til fremhævede områder (::selection, ::inactive-selection) og fremhævning af syntaksfejl (::stavefejl, ::grammatikfejl). Den første version af API'en gav support til at ændre tekst- og baggrundsfarver ved hjælp af farve- og baggrundsfarve-pseudo-elementerne, men andre stylingmuligheder vil blive tilføjet i fremtiden.

    Som et eksempel på de opgaver, der kan løses ved hjælp af det nye API, nævnes tilføjelse til web-frameworks, der giver værktøjer til tekstredigering, deres egne tekstvalgsmekanismer, forskellig fremhævning for samtidig fælles redigering af flere brugere, søgning i virtualiserede dokumenter og markering af fejl ved stavekontrol. Hvis det tidligere krævede komplekse manipulationer med DOM-træet at oprette en ikke-standardfremhævelse, giver Custom Highlight API'en færdige operationer til tilføjelse og fjernelse af fremhævning, som ikke påvirker DOM-strukturen og anvender typografier i forhold til Range-objekter.

  • Tilføjet "@container"-forespørgsel til CSS, så elementer kan styles baseret på størrelsen af ​​det overordnede element. "@container" ligner "@media"-forespørgsler, men anvendes ikke på størrelsen af ​​hele det synlige område, men på størrelsen af ​​den blok (container), som elementet er placeret i, hvilket giver dig mulighed for at indstille din egen stilvalgslogik for underordnede elementer, uanset hvor præcist på siden elementet er placeret.
    Chrome udgivelse 105
  • Tilføjet CSS-pseudo-klasse ":has()" for at kontrollere tilstedeværelsen af ​​et underordnet element i det overordnede element. For eksempel spænder "p:has(span)" over elementerne , inden i hvilket der er et element .
  • Tilføjet HTML Sanitizer API, som giver dig mulighed for at skære elementer ud fra indholdet, der påvirker visning og udførelse under output via setHTML() metoden. API'et kan være nyttigt til at rense eksterne data for at fjerne HTML-tags, der kan bruges til at udføre XSS-angreb.
  • Det er muligt at bruge Streams API (ReadableStream) til at sende hentningsanmodninger, før svarlegemet indlæses, dvs. du kan begynde at sende data uden at vente på, at sidegenereringen er fuldført.
  • For installerede stand-alone webapplikationer (PWA, Progressive Web App) er det muligt at ændre designet af vinduets titelområde ved hjælp af Window Controls Overlay-komponenterne, som udvider webapplikationens skærmområde til hele vinduet og gøre det muligt at give webapplikationen udseendet af en almindelig desktopapplikation. En webapplikation kan styre gengivelsen og behandlingen af ​​input i hele vinduet, med undtagelse af overlejringsblokken med standard vindueskontrolknapper (luk, minimer, maksimer).
    Chrome udgivelse 105
  • Muligheden for at få adgang til Media Source Extensions fra dedikerede arbejdere (i DedicatedWorker-konteksten) er blevet stabiliseret, hvilket f.eks. kan bruges til at forbedre ydeevnen af ​​bufferafspilning af multimediedata ved at oprette et MediaSource-objekt i en separat arbejder og udsende resultater af sit arbejde til HTMLMediaElement i hovedtråden.
  • I Client Hints API, som er ved at blive udviklet til at erstatte User-Agent-headeren og giver dig mulighed for selektivt at levere data om specifikke browser- og systemparametre (version, platform osv.) efter en anmodning fra serveren, understøttelse af Sec. -CH-Viewport-Heigh egenskaben er blevet tilføjet, så du kan få information om højden af ​​det synlige område. Markup-formatet til indstilling af Client Hints-parametre for eksterne ressourcer i "meta"-tagget er blevet ændret: Tidligere: Blev til:
  • Tilføjet muligheden for at oprette globale onbeforeinput hændelseshandlere (document.documentElement.onbeforeinput), med hvilke webapplikationer kan tilsidesætte adfærden ved redigering af tekst i blokke , og andre elementer med attributten "contenteditable", før browseren ændrer elementets indhold og DOM-træ.
  • Funktionerne i Navigation API er blevet udvidet, hvilket gør det muligt for webapplikationer at opsnappe navigationsoperationer i et vindue, starte en overgang og analysere historien om handlinger med applikationen. Tilføjet nye metoder intercept() for at opsnappe en overgang og scroll() for at rulle til en given position.
  • Tilføjet den statiske metode Response.json(), som giver dig mulighed for at generere en svartekst baseret på data af typen JSON.
  • Der er foretaget forbedringer af værktøjer til webudviklere. I debuggeren, når et breakpoint udløses, er redigering af de øverste funktioner i stakken tilladt uden at afbryde fejlfindingssessionen. Optagerpanelet, som giver dig mulighed for at optage, afspille og analysere brugerhandlinger på en side, understøtter pausepunkter, trin-for-trin afspilning og optagelse af mouseover-begivenheder.

    LCP-målinger (Largest Contentful Paint) er blevet tilføjet til præstationsdashboardet for at identificere forsinkelser ved gengivelse af store (brugersynlige) elementer i det synlige område, såsom billeder, videoer og blokelementer. I panelet Elementer er de øverste lag, der vises oven på andet indhold, markeret med et særligt ikon. WebAssembly har nu mulighed for at indlæse fejlretningsdata i DWARF-format.

Ud over innovationer og fejlrettelser eliminerer den nye version 24 sårbarheder. Mange af sårbarhederne blev identificeret som et resultat af automatiseret test ved hjælp af AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer og AFL værktøjerne. Der er ikke identificeret nogen kritiske problemer, der ville tillade en at omgå alle niveauer af browserbeskyttelse og eksekvere kode på systemet uden for sandkassemiljøet. Som en del af programmet til at betale kontante belønninger for at opdage sårbarheder for den aktuelle udgivelse, udbetalte Google 21 priser til en værdi af $60500 (en pris på $10000, en pris på $9000, en pris på $7500, en pris på $7000, to priser på $5000, fire priser på $3000, to priser på $2000 $1000 og en $XNUMX bonus). Størrelsen af ​​de syv belønninger er endnu ikke fastlagt.

Kilde: opennet.ru

Tilføj en kommentar