Chrome versione 94

Google ha annunciato l'uscita del browser web Chrome 94. Allo stesso tempo è disponibile una versione stabile del progetto gratuito Chromium, che funge da base per Chrome. Il browser Chrome si distingue per l'utilizzo dei loghi di Google, la presenza di un sistema per l'invio di notifiche in caso di crash, moduli per la riproduzione di contenuti video protetti (DRM), un sistema per l'installazione automatica degli aggiornamenti e la trasmissione dei parametri RLZ durante la ricerca. La prossima versione di Chrome 95 è prevista per il 19 ottobre.

A partire dal rilascio di Chrome 94, lo sviluppo è passato a un nuovo ciclo di rilascio. Le nuove versioni significative verranno ora pubblicate ogni 4 settimane, anziché ogni 6 settimane, consentendo una distribuzione più rapida delle nuove funzionalità agli utenti. Si segnala che l'ottimizzazione del processo di preparazione dei rilasci e il miglioramento del sistema di test consentono di generare rilasci con maggiore frequenza senza comprometterne la qualità. Per le aziende e coloro che necessitano di più tempo per l'aggiornamento, ogni 8 settimane verrà rilasciata separatamente un'edizione Extended Stable, che consentirà di passare alle nuove versioni di funzionalità non una volta ogni 4 settimane, ma una volta ogni 8 settimane.

Principali modifiche in Chrome 94:

  • Aggiunta la modalità HTTPS-First, che ricorda la modalità Solo HTTPS precedentemente apparsa in Firefox. Se la modalità è attivata nelle impostazioni, quando si tenta di aprire una risorsa senza crittografia tramite HTTP, il browser tenterà prima di accedere al sito tramite HTTPS e, se il tentativo non ha successo, all'utente verrà mostrato un avviso sulla mancanza di Supporto HTTPS e ho chiesto di aprire il sito senza crittografia. In futuro, Google sta valutando la possibilità di abilitare HTTPS-First per impostazione predefinita per tutti gli utenti, limitando l'accesso ad alcune funzionalità della piattaforma web per le pagine aperte tramite HTTP e aggiungendo ulteriori avvisi per informare gli utenti sui rischi che si presentano quando si accede a siti senza crittografia. La modalità è abilitata nella sezione Impostazioni “Privacy e sicurezza” > “Sicurezza” > “Avanzate”.
    Chrome versione 94
  • Per le pagine aperte senza HTTPS, invio di richieste (download di risorse) a URL locali (ad esempio, "http://router.local" e localhost) e intervalli di indirizzi interni (127.0.0.0/8, 192.168.0.0/16, 10.0.0.0) è vietato .8/1.2.3.4, ecc.). Viene fatta eccezione solo per le pagine scaricate da server con IP interni. Ad esempio, una pagina caricata dal server 192.168.0.1 non sarà in grado di accedere a una risorsa situata sull'IP 127.0.0.1 o IP 192.168.1.1, ma caricata dal server XNUMX potrà farlo. La modifica introduce un ulteriore livello di protezione contro lo sfruttamento delle vulnerabilità nei gestori che accettano richieste su IP locali e proteggerà anche dagli attacchi di rebinding DNS.
  • Aggiunta la funzione “Sharing Hub”, che consente di condividere rapidamente un collegamento alla pagina corrente con altri utenti. È possibile generare un codice QR da un URL, salvare una pagina, inviare un collegamento a un altro dispositivo collegato a un account utente e trasferire un collegamento a siti di terze parti come Facebook, WhatsUp, Twitter e VK. Questa funzionalità non è stata ancora resa disponibile a tutti gli utenti. Per forzare il pulsante “Condividi” nel menu e nella barra degli indirizzi, puoi utilizzare le impostazioni “chrome://flags/#sharing-hub-desktop-app-menu” e “chrome://flags/#sharing-hub- omnibox desktop” .
    Chrome versione 94
  • L'interfaccia delle impostazioni del browser è stata ristrutturata. Ogni sezione delle impostazioni viene ora visualizzata su una pagina separata, anziché su una pagina comune.
    Chrome versione 94
  • È stato implementato il supporto all'aggiornamento dinamico dello storico dei certificati emessi e revocati (Certificate Transparency), che ora verrà aggiornato senza riferimento agli aggiornamenti del browser.
  • Aggiunta una pagina di servizio "chrome://whats-new" con una panoramica delle modifiche visibili all'utente nella nuova versione. La pagina viene visualizzata automaticamente subito dopo l'aggiornamento oppure è accessibile tramite il pulsante Novità nel menu Guida. La pagina attualmente menziona la ricerca per schede, la possibilità di dividere i profili e una funzionalità di modifica del colore dello sfondo, che non sono specifiche di Chrome 94 e sono state introdotte nelle versioni precedenti. La visualizzazione della pagina non è ancora abilitata per tutti gli utenti: per controllare l'attivazione è possibile utilizzare le impostazioni “chrome://flags#chrome-whats-new-ui” e “chrome://flags#chrome-whats-new-in -menu-principale- nuovo-badge".
    Chrome versione 94
  • La chiamata all'API WebSQL dal contenuto caricato da siti di terze parti (come un iframe) è stata deprecata. In Chrome 94, quando si tenta di accedere a WebSQL da script di terze parti, viene visualizzato un avviso, ma a partire da Chrome 97 tali chiamate verranno bloccate. In futuro prevediamo di eliminare completamente il supporto per WebSQL, indipendentemente dal contesto di utilizzo. Il motore WebSQL si basa sul codice SQLite e potrebbe essere utilizzato dagli aggressori per sfruttare le vulnerabilità di SQLite.
  • Per motivi di sicurezza e per prevenire attività dannose, l'uso del protocollo legacy MK (URL:MK), un tempo utilizzato in Internet Explorer e che consentiva alle applicazioni web di estrarre informazioni da file compressi, ha iniziato a essere bloccato.
  • Il supporto per la sincronizzazione con le versioni precedenti di Chrome (Chrome 48 e precedenti) è stato interrotto.
  • L'intestazione HTTP Permissions-Policy, progettata per abilitare determinate funzionalità e controllare l'accesso all'API, ha aggiunto il supporto per il flag "display-capture", che consente di controllare l'uso dell'API Screen Capture sulla pagina (per impostazione predefinita, la possibilità di acquisire il contenuto dello schermo da iframe esterni è bloccata).
  • Diverse nuove API sono state aggiunte alla modalità Origin Trials (funzionalità sperimentali che richiedono un'attivazione separata). Origin Trial implica la possibilità di lavorare con l'API specificata dalle applicazioni scaricate da localhost o 127.0.0.1, o dopo la registrazione e la ricezione di un token speciale valido per un periodo di tempo limitato per un sito specifico.
    • Aggiunta l'API WebGPU, che sostituisce l'API WebGL e fornisce strumenti per eseguire operazioni GPU come rendering ed elaborazione. Concettualmente, WebGPU è vicina alle API Vulkan, Metal e Direct3D 12. Concettualmente, WebGPU differisce da WebGL più o meno allo stesso modo in cui l'API grafica Vulkan differisce da OpenGL, ma non è basata su un'API grafica specifica, ma è un'API universale layer che utilizza le stesse primitive di basso livello, disponibili in Vulkan, Metal e Direct3D 12.

      WebGPU fornisce alle applicazioni JavaScript un controllo di basso livello sull'organizzazione, l'elaborazione e la trasmissione dei comandi alla GPU, nonché la capacità di gestire risorse, memoria, buffer, oggetti texture e shader grafici compilati associati. Questo approccio consente di ottenere prestazioni più elevate per le applicazioni grafiche riducendo i costi generali e aumentando l'efficienza del lavoro con la GPU. L'API consente inoltre di creare progetti 3D complessi per il Web che funzionano altrettanto bene di programmi autonomi, ma non sono legati a piattaforme specifiche.

    • Le applicazioni PWA autonome ora hanno la possibilità di registrarsi come gestori URL. Ad esempio, l'applicazione music.example.com può registrarsi come gestore URL https://*.music.example.com e tutte le transizioni da applicazioni esterne che utilizzano questi collegamenti, ad esempio, da programmi di messaggistica istantanea e client di posta elettronica, porteranno all'apertura di queste applicazioni PWA, non a una nuova scheda del browser.
    • È stato implementato il supporto per il nuovo codice di risposta HTTP - 103, che può essere utilizzato per visualizzare in anticipo le intestazioni. Il codice 103 consente di informare il client sul contenuto di determinate intestazioni HTTP immediatamente dopo la richiesta, senza attendere che il server completi tutte le operazioni relative alla richiesta e inizi a servire il contenuto. In modo simile, è possibile fornire suggerimenti sugli elementi relativi alla pagina servita che possono essere precaricati (ad esempio, possono essere forniti collegamenti al css e al javascript utilizzati nella pagina). Dopo aver ricevuto informazioni su tali risorse, il browser inizierà a scaricarle senza attendere il completamento del rendering della pagina principale, il che consente di ridurre il tempo complessivo di elaborazione della richiesta.
  • Aggiunta l'API WebCodecs per la manipolazione di basso livello dei flussi multimediali, a complemento delle API HTMLMediaElement, Media Source Extensions, WebAudio, MediaRecorder e WebRTC di alto livello. La nuova API potrebbe essere richiesta in aree quali lo streaming di giochi, gli effetti lato client, la transcodifica dei flussi e il supporto per contenitori multimediali non standard. Invece di implementare codec individuali in JavaScript o WebAssembly, l'API WebCodecs fornisce l'accesso a componenti predefiniti e ad alte prestazioni integrati nel browser. In particolare, l'API WebCodecs fornisce decodificatori e codificatori audio e video, decodificatori di immagini e funzioni per lavorare con singoli fotogrammi video a basso livello.
  • L'API Insertable Streams è stata stabilizzata, consentendo di manipolare i flussi multimediali non elaborati trasmessi tramite l'API MediaStreamTrack, come dati della fotocamera e del microfono, risultati di acquisizione dello schermo o dati di decodifica del codec intermedio. Le interfacce WebCodec vengono utilizzate per presentare frame non elaborati e viene generato un flusso simile a quello generato dall'API WebRTC Insertable Streams in base a RTCPeerConnections. Dal punto di vista pratico, la nuova API consente funzionalità come l'applicazione di tecniche di apprendimento automatico per identificare o annotare oggetti in tempo reale o l'aggiunta di effetti come il ritaglio dello sfondo prima della codifica o dopo la decodifica tramite un codec.
  • Il metodo scheduler.postTask() è stato stabilizzato, consentendo di controllare la pianificazione delle attività (chiamate di callback JavaScript) con diversi livelli di priorità. Sono previsti tre livelli di priorità: 1- prima l'esecuzione, anche se le operazioni dell'utente potrebbero essere bloccate; 2—sono consentite modifiche visibili all'utente; 3 - esecuzione in background). È possibile utilizzare l'oggetto TaskController per modificare la priorità e annullare le attività.
  • Stabilizzato e ora distribuito al di fuori del rilevamento inattività dell'API Origin Trials per rilevare l'inattività dell'utente. L'API consente di rilevare i momenti in cui l'utente non interagisce con la tastiera/mouse, lo screen saver è in esecuzione, lo schermo è bloccato o il lavoro viene eseguito su un altro monitor. L'informazione dell'applicazione sull'inattività viene effettuata inviando una notifica dopo aver raggiunto una soglia di inattività specificata.
  • Il processo di gestione del colore negli oggetti CanvasRenderingContext2D e ImageData e l'uso dello spazio colore sRGB in essi è stato formalizzato. Fornisce la possibilità di creare oggetti CanvasRenderingContext2D e ImageData in spazi colore diversi da sRGB, come Display P3, per sfruttare le funzionalità avanzate dei monitor moderni.
  • Aggiunti metodi e proprietà all'API VirtualKeyboard per controllare se la tastiera virtuale viene mostrata o nascosta e per ottenere informazioni sulla dimensione della tastiera virtuale visualizzata.
  • JavaScript consente alle classi di utilizzare blocchi di inizializzazione statici per raggruppare il codice che viene eseguito una volta durante l'elaborazione della classe: class C { // Il blocco verrà eseguito durante l'elaborazione della classe stessa static { console.log("blocco statico di C"); } }
  • Le proprietà flex-basis e flex CSS implementano le parole chiave content, min-content, max-content e fit-content per fornire un controllo più flessibile sulla dimensione dell'area Flexbox principale.
  • Aggiunta la proprietà CSS scrollbar-gutter per controllare il modo in cui lo spazio sullo schermo viene riservato alla barra di scorrimento. Ad esempio, se non vuoi che il contenuto scorra, puoi espandere l'output per occupare l'area della barra di scorrimento.
  • È stata aggiunta la Self Profiling API con l'implementazione di un sistema di profilazione che consente di misurare il tempo di esecuzione di JavaScript lato utente per eseguire il debug di problemi di performance nel codice JavaScript, senza ricorrere a manipolazioni manuali nell'interfaccia per gli sviluppatori web.
  • Dopo aver rimosso il plug-in Flash, si è deciso di restituire valori vuoti nelle proprietà navigator.plugins e navigator.mimeTypes, ma come si è scoperto, alcune applicazioni li hanno utilizzati per verificare la presenza di plug-in per la visualizzazione di file PDF. Poiché Chrome dispone di un visualizzatore PDF integrato, le proprietà navigator.plugins e navigator.mimeTypes ora restituiranno un elenco fisso di plug-in visualizzatore PDF standard e tipi MIME: "Visualizzatore PDF, Visualizzatore PDF Chrome, Visualizzatore PDF Chromium, Visualizzatore PDF Microsoft Edge e PDF integrato di WebKit".
  • Sono stati apportati miglioramenti agli strumenti per gli sviluppatori web. I dispositivi Nest Hub e Nest Hub Max sono stati aggiunti all'elenco delle simulazioni dello schermo. All'interfaccia per l'ispezione dell'attività di rete è stato aggiunto un pulsante per invertire i filtri (ad esempio, quando si installa il filtro "codice di stato: 404", è possibile visualizzare rapidamente tutte le altre richieste) e ha anche fornito la possibilità di visualizzare i valori originali degli header Set-Cookie (permette di valutare la presenza di valori errati che vengono rimossi in fase di normalizzazione). La barra laterale nella console Web è stata deprecata e verrà rimossa in una versione futura. Aggiunta la possibilità sperimentale di nascondere i problemi nella scheda Problemi. Nelle impostazioni è stata aggiunta la possibilità di selezionare la lingua dell'interfaccia.
    Chrome versione 94

Oltre alle innovazioni e alle correzioni di bug, la nuova versione elimina 19 vulnerabilità. Molte delle vulnerabilità sono state identificate come risultato di test automatizzati utilizzando gli strumenti AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer e AFL. Non sono stati identificati problemi critici che consentano di aggirare tutti i livelli di protezione del browser ed eseguire codice sul sistema al di fuori dell'ambiente sandbox. Nell'ambito del programma di pagamento di premi in denaro per la scoperta di vulnerabilità per la versione attuale, Google ha pagato 17 premi del valore di 56500 dollari (un premio da 15000 dollari, due premi da 10000 dollari, un premio da 7500 dollari, quattro premi da 3000 dollari, due premi da 1000 dollari). L'entità delle 7 ricompense non è stata ancora determinata.

Fonte: opennet.ru

Aggiungi un commento