Google ha rilasciato la versione del browser web Chrome 133. È disponibile anche una release stabile del progetto open source Chromium, che forma la base di Chrome. Il browser Chrome si distingue da Chromium per l'uso dei loghi Google, la presenza di un sistema di invio notifiche in caso di crash, moduli per la riproduzione di contenuti video protetti da copyright (DRM), il sistema di aggiornamenti automatici, l'attivazione costante della sandbox, la fornitura delle chiavi per le API di Google e la trasmissione dei parametri RLZ durante la ricerca. Per coloro che necessitano di più tempo per l'aggiornamento, è supportata una versione Extended Stable, che rimane disponibile per 8 settimane. Il prossimo rilascio di Chrome 134 è previsto per il 4 marzo.
Le principali novità di Chrome 133:
- Per l'1% degli utenti è stata introdotta la funzione di sospensione delle schede in modalità risparmio energetico (Energy saver). Vengono sospese automaticamente le schede che consumano molte risorse CPU e che sono nascoste da più di 5 minuti. Le schede che riproducono audio e quelle relative alla gestione di dispositivi esterni o alla conduzione di videoconferenze e conferenze audio sono escluse dalla sospensione (queste schede vengono identificate in base all'accesso all'API per la gestione di USB, Bluetooth, telecamere, dispositivi di input e microfoni, oltre all'organizzazione di un canale di comunicazione utilizzando RTCDataChannel o MediaStreamTrack). Per gestire l'attivazione della sospensione automatica è possibile utilizzare l'impostazione «chrome://flags/#freezing-on-energy-saver».
- Nel servizio Chrome Sync è stato interrotto il supporto per le versioni di Chrome più vecchie di 4 anni. Per memorizzare informazioni collegate all'account Google e sincronizzare i dati del browser tra sistemi, è necessario utilizzare almeno la versione 89 di Chrome.
- Nella versione per Android è stata aggiunta un'impostazione per disabilitare gli ottimizzatori JIT nel motore JavaScript V8. Disabilitare il JIT può essere utile per aumentare la sicurezza durante l'uso di applicazioni web potenzialmente pericolose, riducendo i possibili vettori per attacchi. Nelle versioni di Chrome per sistemi desktop, un'impostazione simile è disponibile nella pagina chrome://settings/security, a partire dalla versione Chrome 122.
- Allineato con lo standard di analisi degli schemi URL non specializzati (non inclusi nell'elenco degli schemi noti). Ad esempio, l'URL «git://example.com/path».
- Le possibilità della funzione CSS attr() sono state ampliate, consentendo di utilizzare nei CSS valori di un determinato attributo HTML. Se in precedenza la funzione attr() funzionava solo con la proprietà "content" dei pseudo-elementi e convertiva i valori nel tipo CSS "<string>", ora può essere applicata a qualsiasi proprietà CSS e convertire i valori in qualsiasi tipo CSS. Nell'esempio qui sotto, il colore nella proprietà CSS "color" viene impostato in base all'analisi dell'attributo personalizzato "data-foo" specificato nell'elemento "div", e se l'attributo non è specificato, viene utilizzato il valore "red". <div data-foo="»blue»">test</div> … div { color: attr(data-foo type(<color>), red); }
- Implementata la query CSS «@container scroll-state()», che consente di determinare lo stato di scorrimento di un'area. Sono supportati i seguenti stati: «stuck» — contenitore ancorato a uno dei lati dell'area di scorrimento; «snapped» — contenitore ancorato allineato orizzontalmente o verticalmente; «scrollable» — contenitore che può essere scorribile nella direzione indicata.
- Sono state aggiunte le proprietà CSS «text-box», «text-box-trim» e «text-box-edge», che consentono di gestire con precisione i margini prima e dopo il testo. La proprietà «text-box-trim» definisce l'area di ritaglio (alto, basso o su entrambi i lati), mentre «text-box-edge» determina il modo in cui vengono ritagliati i bordi. La proprietà «text-box» combina le funzionalità di «text-box-trim» e «text-box-edge».
- In CSS è stato aggiunto il pseudo-classe «:open», che permette di determinare quando le finestre di dialogo per gli elementi
- È stato aggiunto il primitivo DOM moveBefore per spostare un elemento nell'albero DOM senza resettare il suo stato.
- È stata aggiunta l'interfaccia FileSystemObserver, che consente ai siti di monitorare le modifiche nel file system.
- Nell'API PublicKeyCredential è stato aggiunto il metodo getClientCapabilities() per determinare le capacità WebAuthn supportate dal browser.
- Nell'oggetto Atomics è stata aggiunta la proprietà pause() per segnalare che il codice attende il rilascio del blocco.
- Nell'API WebCrypto è stato aggiunto il supporto per lo schema di accordo delle chiavi X25519, che può essere utilizzato tramite l'interfaccia SubtleCrypto (metodi generateKey, importKey, exportKey, deriveKey e deriveBits).
- In WebAssembly, the capability to use 64-bit pointers (Memory64) has been implemented, allowing operations with linear memory areas exceeding 4 GB. This change does not add new WebAssembly instructions but rather enables the use of 64-bit indices in existing instructions for tables and memory areas. Operating in Memory64 mode incurs noticeable overhead — depending on the load type, a slowdown of 10% to two times can be observed.
- The capabilities of web development tools have been expanded. Chat history with the AI assistant is now saved between sessions. A 'What’s new' panel has been added, providing an overview of changes in the new version. Scripts can now be added to an ignore list to prevent their display on the performance profiling chart. In the Performance panel, the Insights tab highlights images that can be optimized for size, while the Summary tab shows the JavaScript call stack trace (including asynchronous calls).


Oltre alle nuove funzionalità e alla correzione di bug, nella nuova versione sono state risolte 12 vulnerabilità. Molte delle vulnerabilità sono emerse grazie ai test automatizzati con gli strumenti AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer e AFL. Due problemi che comportano l'accesso a memoria già liberata nel motore V8 e nella libreria Skia sono stati classificati come ad alto rischio. Non sono state rilevate problematiche critiche che consentano di bypassare tutti i livelli di protezione del browser ed eseguire codice al di fuori dell'ambiente sandbox. Nell'ambito del programma di ricompensa per la scoperta di vulnerabilità, Google ha elargito 2 premi per un totale di 9.000 dollari (uno da 7.000 dollari e uno da 2.000 dollari). L'importo di una delle ricompense non è ancora stato stabilito.
Fonte: opennet.ru


