L'azienda Google ha pubblicato la versione del browser web Chrome 154. È disponibile anche la versione stabile del progetto open source Chromium, su cui si basa Chrome. Il browser Chrome si distingue da Chromium per l'utilizzo dei loghi Google, la presenza di un sistema di invio di notifiche in caso di arresto anomalo, i moduli per la riproduzione di contenuti video protetti da copyright (DRM), un sistema di aggiornamenti automatici, l'attivazione continua della Sandbox-isolamento, la fornitura di chiavi per le API di Google e la trasmissione dei parametri RLZ durante la ricerca. Per coloro che necessitano di più tempo per aggiornare, è supportata separatamente una versione Extended Stable, accompagnata da 8 settimane. Il rilascio successivo di Chrome 155 nell'ambito del nuovo ciclo di sviluppo di due settimane è programmato per il 6 ottobre.
Principali modifiche in Chrome 154 (1, 2, 3, 4):
- Continuato lo sviluppo della modalità IA, che consente di interagire con un agente IA dalla barra degli indirizzi o dalla pagina visualizzata all'apertura di una nuova scheda. Nella nuova versione, agli utenti negli Stati Uniti è offerta la possibilità di utilizzare l'assistente IA Gemini per provare virtualmente abbigliamento durante gli acquisti in alcuni negozi online. In Chrome per iOS è stata implementata la funzionalità di comunicazione vocale con Gemini in tempo reale, ad esempio, per discutere il contenuto della pagina web aperta.
- Rimossi le interfacce e le tecnologie sviluppate nell'ambito dell'iniziativa Privacy Sandbox per l'uso al posto dei cookie di terze parti. Il significato della fornitura di tali dati API è stato perso dopo la decisione di non interrompere il supporto ai cookie di terze parti in Chrome. Sono stati rimossi i seguenti API: Topics (che ha sostituito l'API FLoC), API Protected Audience, API Shared Storage, API Attribution Reporting, Private Aggregation, API Related Website Sets e requestStorageAccessFor.
- Nella versione per la piattaforma Android è stato attivato il modo LNP (Local Network Protection), che richiede un'approvazione separata per consentire all'app di accedere alle sottoreti intranet interne (192.168.x.x, 10.x.x.x, ecc.). Questa modalità consente di bloccare attacchi alle risorse nella rete locale e prevenire la scansione della rete per l'identificazione nascosta dell'utente e la raccolta di informazioni sul contesto dell'utente.
- Per effettuare richieste tramite API, ora è necessario ottenere le autorizzazioni LNA (Accesso alla Rete Locale) quando si inviano dati ai server nella rete locale (192.168.0.0/16, 10.0.0.0/8, ecc.) o quando si accede all'interfaccia loopback (127.0.0.0/8). Inoltre, per l'API Background Fetch sono state applicate le verifiche CORS (Cross-Origin Resource Sharing) per unificare le restrizioni applicate all'API Background Fetch e a Fetch. Le modifiche bloccano l'uso di Background Fetch per bypassare le restrizioni Cross-Origin e per effettuare attacchi CSRF a router, punti di accesso, stampanti, interfacce web aziendali e altri dispositivi e servizi che accettano richieste solo dalla rete locale.
- È stata aggiunta una modalità di ottimizzazione opzionale "ServiceWorkerAutoPreload", che invia una richiesta di rete in parallelo con l'inizializzazione del Service Worker.
- È stato aggiunto l'elemento HTML e l'API JavaScript Web Install (metodo navigator.install()), destinato a mostrare una richiesta di installazione dell'app web da parte del sito. L'installazione avviene dopo la conferma esplicita dell'operazione da parte dell'utente. Questa funzionalità può essere utilizzata nella creazione di cataloghi web di app o per semplificare l'installazione di app web per lavorare con il sito corrente.
- È stata aggiunta l'API Window Shape (metodo window.setShape), che consente alle app web isolate di modificare la forma della finestra, ad esempio, creando finestre non rettangolari, pannelli galleggianti ed elementi sovrapposti. L'API è attualmente disponibile solo su ChromeOS.
- Sono state aggiunte impostazioni per gestire i tipi di contenuto a cui viene applicato il completamento automatico nei moduli web. Ad esempio, è possibile disattivare il salvataggio e il completamento automatico dei dati di contatto e delle informazioni per i pagamenti. È anche possibile configurare modelli di URL per disattivare il completamento automatico in relazione a siti specifici.
- Per impostazione predefinita è abilitata la visualizzazione della richiesta di conferma dell'operazione quando si accede a siti tramite HTTP.
- È stata aggiunta la supporto per la selezione adattiva delle dimensioni dei blocchi iframe, che si adattano automaticamente al contenuto per escludere la comparsa di barre di scorrimento interne. Questa funzionalità viene attivata specificando la proprietà CSS "frame-sizing" (ad esempio, "frame-sizing: content-height") nella pagina genitore e aggiungendo all'intestazione del contenuto dell'elemento iframe ''.
- Nella proprietà CSS scroll-marker-group sono implementati i modi «links» e «tabs» per gestire l'ordine di cambio del focus. In modalità «links», il gruppo di marcatori («::scroll-marker-group») funziona come un normale menu di navigazione (i marcatori di scorrimento vengono trattati come link, attraversabili con il tasto Tab). In modalità «tabs», il gruppo di marcatori funziona come un insieme di schede, la navigazione tra le quali avviene tramite i tasti di controllo del cursore. Sono inoltre disponibili due parametri «before» e «after», che controllano il trattamento del gruppo di marcatori rispetto al contenuto (specificando «before», i marcatori verranno trattati per primi, mentre «after» solo dopo aver completato la navigazione nel contenuto).
- È stata implementata la proprietà CSS text-decoration-inset, che consente di impostare l'inizio e la fine del rendering degli elementi decorativi (sottolineatura, barratura, ecc.) rispetto ai margini del testo. Ad esempio, per ridurre il decoratore di 10 pixel si può specificare «text-decoration-inset: 10px;», mentre per allungarlo si utilizza «text-decoration-inset: -10px;».
- Nell'interfaccia JavaScript Iterator è stato aggiunto il metodo Iterator.prototype.includes per verificare la presenza di un determinato elemento nell'iteratore.
- In modalità «Origin trials» è stato implementato il meccanismo Private Verification Tokens (PVT), che consente di separare gli utenti reali dai bot attraverso la trasmissione di token anonimi durante l'apertura dei siti in modalità di navigazione privata, permettendo di evitare la richiesta di captcha, autenticazione obbligatoria e tracciamento tramite Cookies. I token riflettono il superamento di un'autenticazione o di un controllo anti-bot riuscito (i controlli già superati su un sito possono essere utilizzati per collegarsi ad altri siti senza ulteriori verifiche).
Oltre alle novità e correzioni di bug, nella nuova versione sono state risolte 108 vulnerabilità. 11 problemi sono stati classificati come critici, il che implica che le vulnerabilità possono aggirare tutti i livelli di protezione del browser ed eseguire codice nel sistema al di fuori dell'ambiente sandbox. 4 problemi critici sono stati causati dall'accesso a memoria già liberata (use-after-free) in AdFilter, WindowDialog, ServiceWorker e nell'API Fullscreen, mentre 7 derivano da overflow del buffer in WebGL, ANGLE e nel codice per gestire il GPU.
Fonte: opennet.ru
