Lansarea Chrome 94

Compania Google a lansat versiunea web a browserului Chrome 94. În același timp, este disponibilă versiunea stabilă a proiectului liber Chromium, care servește ca bază pentru Chrome. Browserul Chrome se distinge prin utilizarea logo-urilor Google, de existența unui sistem de notificări în caz de crash, module pentru redarea conținutului video protejat (DRM), un sistem de instalare automată a actualizărilor și transmiterea parametrilor RLZ în timpul căutărilor. Următoarea versiune Chrome 95 este programată pentru 19 octombrie.

Începând cu versiunea Chrome 94, dezvoltarea a fost mutată pe un nou ciclu de pregătire a lansărilor. Noile versiuni semnificative vor fi publicate acum o dată la 4 săptămâni, și nu o dată la 6 săptămâni, ceea ce va permite accelerarea furnizării noilor funcționalități către utilizatori. Se observă că optimizarea procesului de pregătire a lansărilor și îmbunătățirea sistemului de testare permit crearea de versiuni mai frecvent fără a compromite calitatea. Pentru întreprinderi și pentru cei care necesită mai mult timp pentru actualizări, la fiecare 8 săptămâni va fi lansată o ediție Extended Stable, care va permite trecerea la noile versiuni funcționale nu o dată la 4 săptămâni, ci la 8 săptămâni.

Principalele modificări ale Chrome 94:

  • A fost adăugat modul HTTPS-First, care amintește de modul HTTPS Only apărut anterior în Firefox. Dacă modul este activat în setări, atunci când se încearcă deschiderea unei resurse nesecurizate prin HTTP, browserul va încerca mai întâi să acceseze site-ul prin HTTPS și, dacă încercarea eșuează, utilizatorul va primi un avertisment despre lipsa suportului HTTPS și va fi îndemnat să deschidă site-ul fără criptare. În viitor, Google ia în considerare activarea modului HTTPS-First implicit pentru toți utilizatorii, restricționarea accesului la anumite funcționalități ale platformei web pentru paginile deschise prin HTTP și adăugarea de avertismente suplimentare care să informeze utilizatorii despre amenințările care apar atunci când accesează site-uri nesecurizate. Modul se activează în secțiunea de setări „Confidențialitate și securitate” > „Securitate” > „Avansat”.
    Lansarea Chrome 94
  • Pentru paginile deschise fără HTTPS, este interzisă trimiterea de cereri (încărcarea resurselor) către URL-uri locale (de exemplu, „http://router.local” și localhost) și către intervale interne de adrese (127.0.0.0/8, 192.168.0.0/16, 10.0.0.0/8 etc.). O excepție a fost făcută doar pentru paginile încărcate de servere, având IP-uri interne. De exemplu, o pagină încărcată de la server 1.2.3.4 va putea accesa resursele găzduite pe IP-ul 192.168.0.1 sau IP-ul 127.0.0.1, iar una încărcată de pe serverul 192.168.1.1 va putea. Modificarea introduce un nivel suplimentar de protecție împotriva exploatării vulnerabilităților în gestionarii care primesc cereri pe IP-uri locale, precum și va ajuta la protecția împotriva atacurilor de tip „DNS rebinding”.
  • A fost adăugată funcția „Sharing Hub”, care permite partajarea rapidă cu alți utilizatori a linkului către pagina curentă. Se oferă posibilitatea de a genera un cod QR cu URL, de a salva pagina, de a trimite linkul către un alt dispozitiv conectat la contul utilizatorului și de a transmite linkul către site-uri externe, cum ar fi Facebook, WhatsApp, Twitter și VK. Funcția nu este încă disponibilă tuturor utilizatorilor. Pentru a activa forțat butonul „Share” din meniul și bara de adrese se pot utiliza setările „chrome://flags/#sharing-hub-desktop-app-menu” și „chrome://flags/#sharing-hub-desktop-omnibox”.
    Lansarea Chrome 94
  • A fost efectuată o restructurare în interfața de configurare a browserului. Fiecare secțiune a setărilor este acum afișată pe o pagină separată, nu pe o pagină comună.
    Lansarea Chrome 94
  • A fost implementat suportul pentru actualizarea dinamică a jurnalului certificatelor emise și retrase (Certificate Transparency), care acum se va actualiza fără a depinde de actualizarea browserului.
  • A fost adăugată pagina de servicii „chrome://whats-new” cu un rezumat al modificărilor vizibile utilizatorului în noua versiune. Pagina se afișează automat imediat după actualizare sau este disponibilă prin butonul „Ce este nou” (What’s New) din meniul Ajutor (Help). În prezent, pagina menționează căutarea pe taburi, posibilitatea de a separa profilurile și funcția de schimbare a culorii de fundal, care nu sunt specifice pentru Chrome 94 și au apărut în versiunile anterioare. Afișarea paginii nu este încă activată pentru toți utilizatorii: pentru a controla activarea se pot utiliza setările „chrome://flags#chrome-whats-new-ui” și „chrome://flags#chrome-whats-new-in-main-menu-new-badge”.
    Lansarea Chrome 94
  • Accesul la API WebSQL din conținutul încărcat de pe site-uri externe (de exemplu, prin iframe) a fost declarat învechit. În Chrome 94, la încercarea de accesare a WebSQL din scripturi externe, se va genera un avertisment, dar începând cu Chrome 97, astfel de accesări vor fi blocate. În viitor, se preconizează că suportul pentru WebSQL va fi complet oprit, indiferent de contextul de utilizare. Handlerul WebSQL se bazează pe codul SQLite și putea fi folosit de atacatori pentru a exploata vulnerabilitățile din SQLite.
  • Din motive de securitate și pentru a preveni activități malițioase, s-a început blocarea utilizării protocolului învechit MK (URL:MK), care a fost odată folosit în Internet Explorer și permitea aplicațiilor web să extragă informații din fișiere comprimate.
  • S-a oprit suportul pentru sincronizarea cu versiunile mai vechi de Chrome (Chrome 48 și mai vechi).
  • În antetul HTTP Permissions-Policy, care este destinat activării anumitor capabilități și controlului accesului la API, a fost adăugată suportul pentru flag-ul «display-capture», care permite gestionarea utilizării API-ului Screen Capture pe pagină (în mod implicit, capacitatea de a captura conținutul ecranului din iframe externe este blocată).
  • În modul Origin Trials (funcționalități experimentale care necesită activare separată) au fost adăugate mai multe API-uri noi. Origin Trial permite utilizarea API-ului specificat din aplicații încărcate de pe localhost sau 127.0.0.1 sau după înregistrarea și obținerea unui token special, care este valabil pentru o perioadă limitată pentru un anumit site.
    • A fost adăugat API-ul WebGPU, care înlocuiește API-ul WebGL și oferă instrumente pentru execuția de operațiuni pe GPU, cum ar fi randarea și calculul. Conceptual, WebGPU este similar cu API-urile Vulkan, Metal și Direct3D 12. WebGPU diferă de WebGL într-un mod similar în care API-ul grafic Vulkan diferă de OpenGL, dar nu se bazează pe un API grafic specific, ci reprezintă un strat universal care folosește aceleași primitive de nivel inferior disponibile în Vulkan, Metal și Direct3D 12.

      WebGPU oferă aplicațiilor pe JavaScript instrumente pentru un control la nivel scăzut asupra organizării, procesării și transmiterii comenzilor către GPU, precum și permite gestionarea resurselor, memoriei, bufferelor, obiectelor de textură și shaderilor grafici compilați. O astfel de abordare permite obținerea unei performanțe mai mari pentru aplicațiile grafice prin reducerea suprasarcinilor și îmbunătățirea eficienței lucrului cu GPU. API-ul oferă, de asemenea, posibilitatea de a crea pentru Web proiecte 3D complexe, care funcționează la fel de bine ca programele izolate, dar nu sunt legate de platforme specifice.

    • Pentru aplicațiile PWA izolate, a fost implementată opțiunea de a se înregistra ca handleri URL. De exemplu, aplicația music.example.com poate să se înregistreze ca handler pentru URL https://*.music.example.com, iar toate accesările din aplicații externe prin aceste linkuri, cum ar fi din mesageri și clienți de email, vor conduce la deschiderea acestei PWA, și nu la o nouă filă în browser.
    • A fost implementat suportul pentru noul cod de răspuns HTTP — 103, care poate fi utilizat pentru a preîncărca anteturile. Codul 103 permite informarea clientului despre conținutul anumitor antete HTTP imediat după cerere, fără a aștepta ca serverul să finalizeze toate operațiunile corelate cu cererea și să înceapă livrarea conținutului. În acest mod, se pot oferi sugestii despre elementele asociate paginii livrate, care pot fi preîncărcate (de exemplu, pot fi furnizate linkuri către fișierele css și javascript utilizate pe pagină). Odată ce obține informații despre aceste resurse, browserul va începe să le încarce fără a aștepta finalizarea livrării paginii principale, ceea ce permite reducerea timpului total de procesare a cererii.
  • A fost adăugat API-ul WebCodecs pentru manipularea fluxurilor multimedia la un nivel scăzut, completând API-urile de nivel înalt HTMLMediaElement, Media Source Extensions, WebAudio, MediaRecorder și WebRTC. Noua API ar putea fi solicitată în domenii precum streaming-ul jocurilor, aplicarea de efecte pe partea clientului, transcodarea fluxurilor și suportul pentru containere multimedia non-standard. În loc să implementeze codec-uri separate în JavaScript sau WebAssembly, API-ul WebCodecs oferă acces la componente pregătite, de înaltă performanță, integrate în browser. În special, API-ul WebCodecs include decodoare și encode-uri audio și video, decodoare de imagini și funcții pentru a lucra cu cadrele video individual la un nivel scăzut.
  • API-ul Insertable Streams a fost stabilizat, oferind posibilitatea de a manipula fluxuri multimedia raw, transmise prin API-ul MediaStreamTrack, cum ar fi datele de la cameră și microfon, rezultatul capturii de ecran sau datele intermediare de decodare realizate de codec. Pentru reprezentarea cadrelor brute se utilizează interfețe WebCodec, după care se formează un flux, similar celui generat de API-ul WebRTC Insertable Streams pe baza RTCPeerConnections. Dintr-o perspectivă practică, noul API permite implementarea unor funcționalități precum aplicarea metodelor de învățare automată pentru identificarea sau anotarea obiectelor în timp real sau pentru adăugarea de efecte, cum ar fi tăierea fundalului, înainte de codificare sau după decodarea codec-ului.
  • Metoda scheduler.postTask() a fost stabilizată, permițând gestionarea planificării execuției sarcinilor (apeluri callback JavaScript) cu diferite niveluri de prioritate. Sunt oferite trei niveluri de prioritate: 1 - execuție prioritară, chiar dacă operațiile utilizatorului pot fi blocate; 2 - se permit modificări vizibile pentru utilizator; 3 - execuție în fundal. Utilizarea obiectului TaskController este permisă pentru a schimba prioritatea și a anula sarcinile.
  • API-ul Idle Detection a fost stabilizat și acum se extinde în afara Origin Trials pentru a detecta inactivitatea utilizatorului. API-ul permite identificarea momentului în care utilizatorul nu interacționează cu tastatura/sursă de intrare, ecranul este blocat sau se execută o activitate pe un alt monitor. Aplicatia este informată despre inactivitate prin trimiterea unei notificări după ce este atins un anumit prag de inactivitate.
  • Procesul de gestionare a culorii în obiectele CanvasRenderingContext2D și ImageData a fost formalizat, precum și utilizarea spațiului de culoare sRGB. A fost oferită posibilitatea de a crea obiecte CanvasRenderingContext2D și ImageData în spații de culoare diferite de sRGB, cum ar fi Display P3, pentru a utiliza capacitățile extinse ale monitoarelor moderne.
  • În API-ul VirtualKeyboard au fost adăugate metode și proprietăți pentru a controla afișarea și ascunderea tastaturii virtuale, precum și pentru a obține informații despre dimensiunea tastaturii virtuale afișate.
  • În JavaScript pentru clase, a fost oferită posibilitatea de a aplica blocuri de inițializare statice pentru a grupa codul care se execută o singură dată la procesarea clasei: class C { // Blocul va fi executat la procesarea clasei C static { console.log(«Blocul static al clasei C»); } }
  • În proprietățile CSS flex-basis și flex au fost implementate cuvintele cheie content, min-content, max-content și fit-content pentru o gestionare mai flexibilă a dimensiunii zonei principale Flexbox.
  • A fost adăugată proprietatea CSS scrollbar-gutter pentru a gestiona rezervarea spațiului pe ecran pentru bara de derulare. De exemplu, când derularea conținutului nu este necesară, ieșirea poate fi extinsă și poate ocupa zona barei de derulare.
  • A fost adăugat API-ul Self Profiling cu implementarea unui sistem de profilare, permițând măsurarea timpului de execuție JavaScript pe partea utilizatorului pentru depistarea problemelor de performanță în codul JavaScript, fără a recurge la manipulări manuale în interfața pentru dezvoltatori web.
  • După eliminarea pluginului Flash, s-a decis returnarea valorilor goale în proprietățile navigator.plugins și navigator.mimeTypes, dar, după cum s-a dovedit, unele aplicații le foloseau pentru a verifica existența pluginurilor pentru vizualizarea fișierelor PDF. Deoarece Chrome are un vizualizator PDF încorporat, proprietățile navigator.plugins și navigator.mimeTypes vor returna acum o listă fixă de pluginuri standard și tipuri MIME pentru vizualizarea PDF - «PDF Viewer, Chrome PDF Viewer, Chromium PDF Viewer, Microsoft Edge PDF Viewer și WebKit built-in PDF».
  • Au fost aduse îmbunătățiri instrumentelor pentru dezvoltatori web. Dispozitivele Nest Hub și Nest Hub Max au fost adăugate în lista de simulare a ecranelor. În interfața de inspectare a activității de rețea, a fost adăugată un buton pentru inversarea filtrului (de exemplu, atunci când se aplică filtrul «status-code: 404», este posibil să se vizualizeze rapid toate celelalte solicitări), precum și a fost oferită posibilitatea de a vizualiza valorile originale ale headerelor Set-Cookie (permițând evaluarea prezenței valorilor incorecte, eliminate în timpul normalizării). Panoul lateral din consola web a fost declarat învechit și va fi eliminat într-unul dintre următoarele lansări. A fost adăugată o funcționalitate experimentală de ascundere a problemelor în fila Issues. În setări, a fost adăugată posibilitatea de a selecta limba interfeței.
    Lansarea Chrome 94

Pe lângă noutăți și corectarea erorilor, în noua versiune au fost rezolvate 19 vulnerabilități. Multe dintre aceste vulnerabilități au fost identificate în urma testării automatizate cu instrumentele AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer și AFL. Nu au fost identificate probleme critice care să permită ocolirea tuturor nivelurilor de protecție ale browserului și executarea de cod în sistem dincolo de mediul sandbox. În cadrul programului de recompensare a descoperitorilor de vulnerabilități, pentru versiunea curentă, Google a oferit 17 recompense în valoare totală de 56.500 de dolari (o recompensă de 15.000 de dolari, două recompense de 10.000 de dolari, o recompensă de 7.500 de dolari, patru recompense de 3.000 de dolari și două recompense de 1.000 de dolari). Suma a 7 recompense rămâne deocamdată nedefinită.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster