Google heeft de release van webbrowser Chrome 142 gepubliceerd. Tegelijkertijd is er een stabiele versie van het open-source project Chromium beschikbaar, dat de basis vormt voor Chrome. De browser Chrome verschilt van Chromium door het gebruik van Google-logo's, het hebben van een systeem voor het versturen van meldingen bij crashes, modules voor het afspelen van kopieerbeschermde videoinhoud (DRM), een automatisch updatesysteem, constante inschakeling van Sandbox-isolatie, de levering van sleutels voor de Google API en het doorgeven van RLZ-parameters tijdens het zoeken. Voor degenen die meer tijd nodig hebben voor updates, wordt er een aparte Extended Stable tak ondersteund, die tot 8 weken wordt vergezeld. De volgende release van Chrome 143 is gepland op 2 december.
Belangrijkste veranderingen in Chrome 142:
- Er is bescherming ingeschakeld tegen toegang tot het lokale systeem bij interactie met openbare websites. Bij verzoeken vanaf een site in een openbaar of intern netwerk (intranet) naar IP-adressen het lokale systeem of de loopback-interface (127.0.0.0/8) zal de browser een dialoogvenster aan de gebruiker tonen met de bevestigingsvraag voor de actie. Onder de beschermingsmaatregelen vallen pogingen om bronnen te laden, fetch()-verzoeken en iframe-invoegingen. De bescherming geldt voorlopig niet voor verbindingen via WebSockets, WebTransport en WebRTC, maar zal later voor deze technologieën worden toegevoegd.
Toegang tot interne bronnen wordt door aanvallers gebruikt om CSRF-aanvallen uit te voeren op routers, toegangspunten, printers, bedrijfswebinterfaces en andere apparaten en diensten die verzoeken alleen vanuit het lokale netwerk accepteren. Bovendien kan het scannen van interne bronnen worden gebruikt voor indirecte identificatie of het verzamelen van informatie over het lokale netwerk.
- Er is een enkele vereenvoudigde interface voorgesteld voor koppeling aan een Google-account en synchronisatie van gegevens, zoals opgeslagen wachtwoorden en bladwijzers. Synchronisatie is geïntegreerd met de aanmelding bij het account en wordt niet gepresenteerd als een aparte functie in de instellingen. Gebruikers kunnen Chrome verbinden met hun Google-account en deze gebruiken voor het opslaan van wachtwoorden, bladwijzers, browsegeschiedenis en tabs. Deze mogelijkheid is voorlopig geactiveerd voor een deel van de gebruikers; het bereik zal geleidelijk worden vergroot.
- Een nieuw procesisolatiemodel is geïmplementeerd - 'Origin Isolation', waarbij elke inhoudsbron (origin - combinatie van protocol, domein en poort, bijvoorbeeld, «https://foo.example.com»), wordt geïsoleerd in een afzonderlijk renderproces. Aangezien het vergroten van de isolatiefragmentatie kan leiden tot een hogere geheugengebruik en een verhoogde belasting van de CPU, wordt de nieuwe isolatiemodus alleen ingeschakeld op systemen met meer dan 4 GB RAM. Op minder krachtige hardware wordt de oude isolatiemethode gebruikt, waarbij verschillende contentbronnen die bij één website horen (bijvoorbeeld foo.example.com en bar.example.com) in een afzonderlijk proces worden geïsoleerd.
- Op systemen met Windows en macOS, waar geen gecentraliseerd beheer van Chrome wordt toegepast, is er een automatische uitschakeling van geforceerd geïnstalleerde browserextensies waarin onbelangrijke schendingen van de regels van de Chrome Web Store zijn vastgesteld. Onbelangrijke schendingen omvatten het hebben van mogelijke kwetsbaarheden, het opleggen van een extensie zonder medeweten van de gebruiker, manipulaties met metadata, schendingen van de regels voor het omgaan met gebruikersgegevens en misleidende informatie over functionaliteit. Gebruikers kunnen indien gewenst de uitgeschakelde extensie opnieuw inschakelen.
- In de Android-versie, net als in de desktopversies, is er een waarschuwing toegevoegd voor frauduleuze pagina's die zijn vastgesteld door een grote taalmachine op basis van inhoudsanalyse. Het gebruik van AI wordt toegepast in de modus voor uitgebreide browserbescherming (Enhanced Safe Browsing). Het AI-model wordt aan de clientzijde uitgevoerd, maar bij verdenking van twijfelachtige inhoud wordt er een extra controle op de servers van Google uitgevoerd.
- In de implementatie van het DTLS-protocol (Datagram Transport Layer Security, de analogie van TLS voor UDP), dat wordt toegepast voor WebRTC-verbindingen, is het gebruik van post-kwantum encryptie-algoritmen opgenomen.
- De status van de activatie, die wordt ingesteld tijdens de activiteit van de gebruiker op de pagina, wordt behouden na de overgang naar een andere pagina met hetzelfde domein. Het behoud van de activatie zal de ontwikkeling van veelzijdige webapplicaties vergemakkelijken en problemen zoals het instellen van de invoerfocus wanneer de site zijn virtuele toetsenbord weergeeft, oplossen.
- In CSS zijn de pseudo-klassen «:target-before» en «:target-after» toegevoegd voor het definiëren van de vorige en volgende markers met betrekking tot de huidige scrollpositie («:target-current»).
- In stijlcontainers (‘@container’) en de functie ‘if()’ is het nu toegestaan om het bereiksyntax (Range Syntax) te gebruiken, zoals gedefinieerd in de Media Queries Level 4-specificatie. Dit stelt gebruikers in staat om gebruik te maken van gewone wiskundige vergelijkingsoperatoren en logische operatoren om waardebereiken te definiëren. Zo kan men nu bijvoorbeeld ‘@container style(—inner-padding > 1em)’ en ‘background-color: if(style(attr(data-columns, type) > 2): lightblue; else: white);’ opgeven.
- In de elementen «<button>» en «<a>» is ondersteuning voor het attribuut «interestfor» toegevoegd, waarmee acties kunnen worden georganiseerd, bijvoorbeeld het tonen van een pop-up wanneer een gebruiker interesse toont in het element. De browser beschouwt situaties zoals het aanwijzen en vasthouden van de cursor op het element, het indrukken van sneltoetsen of het vasthouden van een aanraking op het touchscreen als tekenen van interesse. Wanneer interesse wordt vastgesteld op een element met het attribuut «interestfor», genereert de browser een InterestEvent.
- Er zijn verbeteringen aangebracht in de tools voor webontwikkelaars. Rechtsboven is een knop toegevoegd voor snelle toegang tot de AI-assistent. Het contextmenu-item ‘Ask AI’ is hernoemd naar ‘Debug with AI’ en is uitgebreid met de mogelijkheid om directe acties uit te voeren op basis van de context. In de webconsole en de codepanelen kan AI-assistent Gemini nu aanbevelingen met code genereren.

In de tools voor webontwikkelaars is integratie met de GDP (Google Developer Program) service mogelijk gemaakt. Ontwikkelaars kunnen nu rechtstreeks vanuit Chrome DevTools verbinding maken met hun GDP-profiel en bonussen ontvangen voor het uitvoeren van bepaalde taken binnen deze interface.

Naast nieuwe functies en bugfixes zijn in de nieuwe versie 20 kwetsbaarheden verholpen. Veel van deze kwetsbaarheden zijn ontdekt dankzij geautomatiseerd testen met tools zoals AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer en AFL. Er zijn geen kritieke problemen gevonden die alle beveiligingslagen van de browser kunnen omzeilen en code buiten de sandbox-omgeving kunnen uitvoeren. In het kader van het beloningsprogramma voor het ontdekken van kwetsbaarheden heeft Google voor deze release 20 prijzen ter waarde van 130.000 dollar aangekondigd (twee prijzen van 50.000 dollar, één prijs van 10.000 dollar en drie prijzen van 3.000 dollar, twee prijzen van 2.000 dollar en drie prijzen van 1.000 dollar). De hoogte van 8 beloningen is nog niet vastgesteld.
Daarnaast kan worden opgemerkt dat er een nog niet verholpen kwetsbaarheid is in de Blink-engine, die leidt tot een crash en vastlopen van de browser bij het uitvoeren van bepaalde JavaScript-code. De kwetsbaarheid wordt veroorzaakt door architectonische problemen in de render-engine, die verband houden met het ontbreken van een beperking op de intensiteit van updates van de eigenschap 'document.title'. Het ontbreken van beperkingen stelt gebruikers in staat om 'document.title' te gebruiken voor tientallen miljoenen wijzigingen per seconde in de DOM, wat na enkele seconden leidt tot een vastlopen van de interface door blokkering van de hoofdthread en aanzienlijke geheugengebruik, en na 15-60 seconden komt de browser onverwacht tot stilstand.
Bron: opennet.ru


