Google har lansert nettleseren Chrome 147. Samtidig er en stabil utgave av gratisprosjektet Chromium, som er grunnlaget for Chrome, tilgjengelig. Chrome-nettleseren skiller seg fra Chromium ved at den bruker Google-logoer, har et system for å sende varsler ved krasj, har moduler for avspilling av kopibeskyttet videoinnhold (DRM), har et automatisk oppdateringsinstallasjonssystem, alltid aktiverer Sandbox-isolering, leverer nøkler til Google API og overfører RLZ-parametere når den søker. For de som trenger mer tid til å oppdatere, finnes det en egen utvidet stabil gren, som støttes i 8 uker. Neste utgivelse, Chrome 148, er planlagt til 5. mai.
Viktige endringer i Chrome 147 (1, 2, 3, 4):
- En visningsmodus for vertikale faner er lagt til, og erstatter den øverste horisontale linjen med faneknapper med en sidefelt med vertikale faner. Vertikale faner kan vises i utvidet (ikon + delvis beskrivelse) eller skjult (kun ikon) modus. Hvis du holder musepekeren over en sidefane, vises et miniatyrbilde av innholdet. Administrering av fanegrupper er forenklet. Alternativet «Vis faner vertikalt» er lagt til i hurtigmenyen som vises når du høyreklikker på faneraden. Hvis dette alternativet ikke vises som standard, kan det aktiveres via innstillingen «chrome://flags/#vertical-tabs».
- Lesemodusen er redesignet slik at den bare viser relevant tekst på en side, og skjuler alle relaterte kontroller, bannere, menyer, navigasjonslinjer og andre deler av siden som ikke er innholdsrelaterte. I den nye versjonen, i likhet med Firefox, vises relevant innhold i hele det synlige området, i stedet for i en smal sidefelt ved siden av den opprinnelige siden. Hvis den nye modusen ikke er aktivert som standard, kan den aktiveres via innstillingen «chrome://flags/#read-anything-immersive-reading-mode».
- En knapp er lagt til i «Hjelp»-menyen for å sende inn en klage for å blokkere nettsider som er opprettet for svindel eller phishing-formål. Denne knappen vises når «Sikker nettlesing»-modus er aktivert.
- Utvidet beskyttelse mot lokal systemtilgang ved samhandling med offentlige nettsteder. Tilgang fra nettsteder til IP-adresser Det lokale nettverket (intranett eller interne adresser) eller loopback-grensesnittet (127.0.0.0/8) krever brukerbekreftelse. Beskyttelsen dekker nå ikke bare forsøk på å laste inn ressurser via HTTP/HTTPS, fetch()-forespørsler og iframe-innsettinger, men også tilkoblinger via WebSockets og WebTransport, samt henteforespørsler initiert via WindowClient.navigate()-metoden. Angripere utnytter intern ressurstilgang for indirekte identifikasjon og for å utføre CSRF-angrep på rutere, tilgangspunkter, skrivere, bedriftens webgrensesnitt og andre enheter og tjenester som bare godtar forespørsler fra det lokale nettverket.
- XML-parsingsfunksjonaliteten er migrert fra libxml2 til et nytt bibliotek skrevet i Rust med tanke på sikkerhet. Denne endringen gjelder kun for XML; som tidligere annonsert vil XSLT-støtte snart bli avviklet.
- Det er nå mulig å bruke startViewTransition()-metoden ikke bare for hele siden, men også for individuelle HTML-elementer.
- CSS-funksjonen contrast-color() er lagt til. Den returnerer det motsatte av den angitte fargen (for hvit returnerer den svart, og for svart returnerer den hvit). Denne funksjonen kan brukes til å matche bakgrunnsfargen til en bestemt tekstfarge, og omvendt.
- CSS-egenskapen «border-shape» er lagt til, slik at du kan lage ikke-rektangulære rammer rundt elementer, for eksempel ved å bruke sirkulære eller polygonale rammer. CSS-egenskapen «border-shape» godtar de samme formtypene som «clip-path»-egenskapen, men i motsetning til sistnevnte oppdager den en kontur, dekoder den og klipper ut alt innhold som går utover konturen.
- La til CSSPseudoElement-grensesnittet, som tillater arbeid med CSS-pseudoelementer fra JavaScript.
- Link-elementet støtter nå bruk av attributtet «rel=modulepreload» for å forhåndslaste ikke bare skript, men også moduler med CSS-stiler ( ) og JSON-data ( ).
- Oppførselen for beregning av bredden på kantlinjer og konturer i CSS-egenskapene border-width, outline-width og column-rule-width er endret, slik at den forenes med Firefox og WebKit-baserte nettlesere. Tidligere ble bredden i disse egenskapene tilbakestilt til null, uavhengig av verdiene deres, hvis egenskapene border-style, outline-style eller column-rule-style var satt til "none" eller "hidden". Nå samsvarer verdiene order-width, outline-width og column-rule-width alltid med de utviklerdefinerte verdiene, uavhengig av innholdet i egenskapene "*-style".
- La til Math.sumPrecise()-metoden for å beregne summen av array-elementer og andre tallrike objekter med presisjon som er større enn normal summering i en sløyfe (eliminerer presisjonstap ved lagring av resultater i mellom).
- La til attributtet Request.isReloadNavigation for å oppdage når en side har blitt lastet inn på nytt, for eksempel etter å ha klikket på «Oppdater»-knappen eller kalt metodene location.reload() og history.go(0).
- For å redusere nøyaktigheten av indirekte identifikasjon er logikken for avrunding av minnestørrelsen som returneres via Device Memory API, som gir informasjon om RAM-størrelsen, endret. Denne informasjonen kan være nyttig for å lage lette versjoner av webapplikasjoner som lastes inn på enheter med begrenset RAM eller for å aktivere avanserte funksjoner når store mengder minne er tilgjengelig. I bygg for plattformen Android Minnestørrelsen er nå avrundet til 1, 2, 4 og 8, og for andre plattformer til 2, 4, 8, 16 og 32.
- For isolerte webapplikasjoner (IWA) er Web Printing API implementert, som tilbyr metoder for å bestemme tilgjengeligheten til skrivere, sende dokumenter til utskrift og administrere utskriftskøen. Attributtnavnene og semantikken som brukes i API-et samsvarer med Internet Printing Protocol (IPP).
- Modusen «Origin trials» implementerer WebNN API, som tillater bruk av maskinlæringstjenester levert av operativsystemet og relaterte maskinvarefunksjoner.
- Det er gjort forbedringer i verktøyene for nettutviklere. Den innebygde AI-assistenten velger nå automatisk kontekster. Panelet «Enhetsmodus», som brukes til å teste nettstedsytelse på forskjellige mobile enheter, har blitt modernisert. Nettverkspanelet dekoder nå automatisk komprimert innhold for forespørsler sendt med Content-Encoding: gzip eller deflate-headeren. Regulære uttrykk kan nå brukes til å filtrere CSS-stiler.
I tillegg til nye funksjoner og feilrettinger, adresserer den nye versjonen 60 sårbarheter. Mange av sårbarhetene ble identifisert gjennom automatisert testing ved hjelp av AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer og AFL. To problemer (bufferoverløp og heltallsoverløp i WebML) ble tildelt et kritisk alvorlighetsnivå, noe som betyr at de kunne omgå alle lag med nettleserbeskyttelse og kjøre kode utenfor sandkassemiljøet. Som en del av sitt sårbarhetspremieprogram for den nåværende utgivelsen har Google etablert 60 belønninger og tildelt 118 000 dollar (to belønninger på 43 000 dollar, to belønninger på 11 000 dollar og én belønning hver på 4000 dollar, 3000 dollar, 2000 dollar og 1000 dollar). Beløpene for 52 belønninger er ennå ikke fastsatt.
Kilde: opennet.ru
