Релиз на Chrome 94

Компания Google представи версия на web браузъра Chrome 94. В същото време е наличен стабилен release на свободния проект Chromium, който е основата на Chrome. Браузърът Chrome се отличава с използването на логотипите на Google, наличието на система за изпращане на уведомления при срив, модули за възпроизвеждане на защитено видео съдържание (DRM), система за автоматична инсталация на актуализации и предаване на параметри RLZ при търсене. Следващата версия на Chrome 95 е планирана за 19 октомври.

Начиная с версии Chrome 94, разработката преминава на нов цикъл за подготовка на версиите. Новите значителни версии вече ще бъдат публикувани на всеки 4 седмици, а не на всеки 6 седмици, което ще ускори предоставянето на нови функции на потребителите. Отбелязва се, че оптимизацията на процеса на подготовка на версиите и подобрението на системата за тестване позволяват по-често генериране на версии без компромис с качеството. За предприятията и за тези, на които е необходим повече време за актуализация, на всеки 8 седмици ще бъде издавана редакция Extended Stable, която ще позволи прехода към нови функционални версии не на всеки 4 седмици, а на всеки 8 седмици.

Основни промени в Chrome 94:

  • Добавен е режим HTTPS-First, който напомня на режима HTTPS Only, внедрен в Firefox. Когато режимът е активиран в настройките, при опит за отваряне на ресурс без шифроване по HTTP, браузърът първо ще се опита да се свърже със сайта по HTTPS. Ако опитът не успее, на потребителя ще бъде показано предупреждение за липса на поддръжка на HTTPS и ще му бъде предложено да отваря сайта без шифроване. В бъдеще Google планира да активира по подразбиране HTTPS-First за всички потребители, да ограничи достъпа до някои функционалности на уеб платформата за страници, отворени по HTTP, и да добави допълнителни предупреждения, информирайте потребителите за заплахи, произтичащи от достъпа до сайтове без шифроване. Режимът се активира в секцията
    Релиз на Chrome 94
  • За страници, отворени без HTTPS, е забранено изпращането на заявки (изтегляне на ресурси) към локални URL адреси (например "http://router.local" и localhost) и вътрешни диапазони от адреси (127.0.0.0/8, 192.168.0.0/16, 10.0.0.0/8 и т.н.). Изключение е направено само за страници, заредени с сървъри, които имат вътрешни IP адреси. Например, страница заредена с сървър 1.2.3.4 не може да се свърже с ресурс, разположен на IP 192.168.0.1 или IP 127.0.0.1, а зареденото от сървъра 192.168.1.1 — може. Промяната въвежда допълнителен слой защита срещу експлоатиране на уязвимости в обработчиците, приемащи заявки на локални IP адреси, и също така позволява защита от атаки от тип „DNS rebinding“.
  • Добавена е функцията „Sharing Hub“, позволяваща бързо споделяне на текущата страница с други потребители. Предоставя се възможност за генериране на QR-код с URL, запазване на страницата, изпращане на линк до друго устройство, свързано с акаунта на потребителя, и предаване на линка към страници на трети сайтове, като Facebook, WhatsApp, Twitter и VK. Възможността все още не е достъпна за всички потребители. За принудително активиране на бутона „Share“ в менюто и адресната лента могат да се използват настройките „chrome://flags/#sharing-hub-desktop-app-menu“ и „chrome://flags/#sharing-hub-desktop-omnibox“.
    Релиз на Chrome 94
  • Проведена е реструктуризация на интерфейса за настройки на браузъра. Всяка секция от настройките сега се извежда на отделна страница, вместо на една обща.
    Релиз на Chrome 94
  • Реализирана е поддръжка за динамично обновление на логовете на издадени и оттеглени сертификати (Certificate Transparency), който сега ще се обновява без връзка с обновлението на браузъра.
  • Добавена служебна страница «chrome://whats-new» с преглед на видимите за потребителя промени в новото издание. Страницата се показва автоматично веднага след актуализация или е достъпна чрез бутона «Какво е ново» (What’s New) в менюто Помощ (Help). В момента на страницата е споменато търсене по.tabs, възможност за разделяне на профили и функция за смяна на фона, които не са специфични за Chrome 94 и се появиха в предишни издания. Показването на страницата все още не е включено за всички потребители: за управление на активирането може да се използва настройките «chrome://flags#chrome-whats-new-ui» и «chrome://flags#chrome-whats-new-in-main-menu-new-badge».
    Релиз на Chrome 94
  • Обявено е, че достъпът до API WebSQL от съдържание, зареждано от трети сайтове (например, чрез iframe), е остарял. В Chrome 94, когато се опитате да получите достъп до WebSQL от външни скриптове, ще се появи предупреждение, но от Chrome 97 нататък, такива заявки ще бъдат блокирани. В бъдеще се планира постепенното прекратяване на поддръжката на WebSQL, независимо от контекста на използване. Обработчикът WebSQL е основан на кода на SQLite и можеше да бъде използван от злонамерени лица за експлоатиране на уязвимости в SQLite.
  • В интерес на сигурността и предотвратяването на злонамерена активност е започнало блокирането на използването на остарял протокол MK (URL:MK), който някога се е използвал в Internet Explorer и е позволявал на уеб приложенията да извлекат информация от компресирани файлове.
  • Поддръжката на синхронизация с по-стари версии на Chrome (Chrome 48 и по-стари) е прекратена.
  • В HTTP заглавието Permissions-Policy, предназначено за включване на определени възможности и управление на достъпа до API, е добавена поддръжка на флага «display-capture», който позволява управление на използването на API Screen Capture на страницата (по подразбиране възможността за захващане на съдържание от екрана от външни iframe е блокирана).
  • В режим на Origin Trials (експериментални функции, изискващи специално активиране) бяха добавени няколко нови API. Origin Trial означава възможност за работа с посочения API от приложения, натоварени от localhost или 127.0.0.1, или след регистрация и получаване на специален токен, който действа за ограничен период на конкретен сайт.
    • Добавен е API WebGPU, който заменя API WebGL и предоставя средства за извършване на операции в GPU, като рендеринг и изчисления. Концептуално WebGPU е близък до API Vulkan, Metal и Direct3D 12. WebGPU се различава от WebGL по същия начин, по който графичният API Vulkan се различава от OpenGL, но не е основан на конкретен графичен API, а представлява универсален слой, който използва същите ниско ниво примитиви, налични в Vulkan, Metal и Direct3D 12.

      WebGPU предоставя на приложенията на JavaScript средства за ниско ниво управление на организацията, обработката и предаването на команди към GPU, както и позволява управление на свързани ресурси, памет, буфери, текстурни обекти и компилирани графични шейдъри. Такъв подход позволява постигане на по-висока производителност на графичните приложения, като се намаляват разходите и се увеличава ефективността на работата с GPU. API също така възможява създаването на сложни 3D проекти за Web, които работят не по-лошо от самостоятелни програми, но не са свързани с конкретни платформи.

    • За отделените PWA приложения е реализирана възможност за регистрация като обработчици на URL. Например, приложението music.example.com може да се регистрира като обработчик на URL https://*.music.example.com и всички преходи от външни приложения по тези връзки, например от месинджъри и имейл клиенти, ще доведат до отваряне на това PWA приложение, а не на нов таб в браузъра.
    • Реализирана е поддръжка на нов код за отговор HTTP — 103, който може да се използва за предварително извеждане на заглавия. Код 103 позволява да се информира клиента за съдържанието на някои HTTP заглавия веднага след заявката, без да се чака сървърът да извърши всички свързани операции и да започне предаване на съдържанието. По този начин могат да се съобщават подсказки за свързаните с предаваната страница елементи, които могат да бъдат предварително заредени (например, могат да се представят линкове към използвани на страницата CSS и JavaScript). Получавайки информация за подобни ресурси, браузърът ще започне тяхното зареждане, без да чака завършването на основната страница, което позволява да се съкрати общото време за обработка на заявката.
  • Добавен е API WebCodecs за манипулиране на медийните потоци на ниско ниво, допълващ високотоуровневите API HTMLMediaElement, Media Source Extensions, WebAudio, MediaRecorder и WebRTC. Новият API може да бъде търсен в области като стрийминг на игри, прилагане на ефекти на клиента, перекодиране на потоци и поддръжка на нестандартни медийни контейнери. Вместо да се реализират отделни кодеци на JavaScript или WebAssembly, API WebCodecs предоставя достъп до готови високопроизводителни компоненти, вградени в браузъра. В частност, в API WebCodecs се предлагат декодери и кодировачи на звук и видео, декодери на изображения и функции за работа с отделни кадри на видео на ниско ниво.
  • Стабилизирани Insertable Streams API, позволяващи манипулиране на необработените (raw) мултимедийни потоци, предавани чрез MediaStreamTrack API, като данни от камера и микрофон, резултат от захващане на екран или междинни данни от декодера. За представяне на необработените кадри се използват интерфейси WebCodec, след което се формира поток, подобен на генерирания от Insertable Streams API на WebRTC на базата на RTCPeerConnections. От практическа перспектива новият API позволява реализирането на функционалност, като прилагане на методи за машинно обучение за идентифициране или анотиране на обекти в реално време или за добавяне на ефекти, като изрязване на фона, преди кодиране или след декодиране от декодера.
  • Стабилизиран е методът scheduler.postTask(), който позволява управление на планирането на изпълнението на задачи (callback повиквания на JavaScript) с различни нива на приоритет. Предоставят се три нива на приоритет: 1 — изпълнение приоритетно, дори ако могат да бъдат блокирани операции на потребителя; 2 — допуска се видимо за потребителя промяна; 3 — изпълнение на фонова работа). За промяна на приоритета и отменяне на задачи може да се използва обектът TaskController.
  • Стабилизирано е и сега се разпространява извън Origin Trials API Idle Detection за определяне на неактивността на потребителя. API позволява определяне на времето, когато потребителят не взаимодейства с клавиатурата/мишка, активиран е скрийнсейвър, екранът е заключен или работата се извършва на друг монитор. Информирането на приложението за неактивност се извършва чрез изпращане на известие след достигане на зададен праг на неактивност.
  • Формализиран е процесът на управление на цвета в обектите CanvasRenderingContext2D и ImageData и използването на цветово пространство sRGB. Предоставена е възможност за създаване на обекти CanvasRenderingContext2D и ImageData в цветови пространства, различни от sRGB, като Display P3, за да се използват разширените възможности на съвременните монитори.
  • В API VirtualKeyboard са добавени методи и свойства за управление на показването и скриването на виртуалната клавиатура, както и за получаване на информация за размера на показаната виртуална клавиатура.
  • В JavaScript за классовете е предоставена възможност за прилагане на статични блокове за инициализация, които групират код, изпълняван веднъж при обработка на класа: class C { // Блокът ще бъде изпълнен при обработка на самия клас static { console.log(„Статичен блок на C“); } }
  • В CSS свойствата flex-basis и flex реализират ключовите думи content, min-content, max-content и fit-content за по-гъвкаво управление на размера на основната област на Flexbox.
  • Добавено CSS свойство scrollbar-gutter за управление на резервирането на пространство на екрана под лентата за превъртане. Например, когато не е необходима лента за превъртане на съдържанието, е възможно да се разшири показването и да се заеме областта на лентата за превъртане.
  • Добавен е API Self Profiling с реализирана система за профилиране, която позволява измерване на времето за изпълнение на JavaScript от страна на потребителя за отстраняване на проблеми с производителността в JavaScript кода, без да е необходимо ръчно манипулиране в интерфейса за уеб разработчици.
  • След изтриването на Flash плъгина, бе решено да се връщат празни стойности в свойствата navigator.plugins и navigator.mimeTypes, но се оказа, че някои приложения ги използват за проверка наличието на плъгини за показване на PDF файлове. Осколкото Chrome разполага с вграден PDF четец, от сега нататък свойствата navigator.plugins и navigator.mimeTypes ще връщат фиксиран списък от стандартни плъгини и MIME типове за показване на PDF — „PDF Viewer, Chrome PDF Viewer, Chromium PDF Viewer, Microsoft Edge PDF Viewer и WebKit вграден PDF“.
  • Внесени са подобрения в инструментите за уеб разработчици. В списъка за симулиране на екрани са добавени устройства Nest Hub и Nest Hub Max. В интерфейса за инспектиране на мрежова активност е добавен бутон за инвертиране на филтрите (например, при задаване на филтър „status-code: 404“ можете бързо да видите всички останали заявки), а също така е предоставена възможност за преглед на оригиналните стойности на заглавките Set-Cookie (позволява оценка на наличието на неправилни стойности, отстранявани при нормализацията). Обявено е за остаряло и ще бъде премахнато в едно от следващите издания страничното меню в уеб конзолата. Добавена е експериментална възможност за скриване на проблеми в таба Issues. В настройките е добавена възможност за избор на език на интерфейса.
    Релиз на Chrome 94

Освен новите функции и корекциите на грешки в новата версия, са отстранени 19 уязвимости. Много от уязвимостите са открити в резултат на автоматизирано тестване с инструментите AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Критични проблеми, които позволяват заобикаляне на всички нива на защита на браузера и изпълнение на код в системата извън средата на пясъка, не са открити. В рамките на програмата за изплащане на парични награди за откритие на уязвимости за текущото издание, компанията Google е изплатила 17 награди на обща стойност 56500 долара (една награда от 15000 $, две награди по 10000 $, една награда от 7500 $, четири награди по 3000 $, две награди по 1000 $). Размерът на 7 награди все още не е определен.

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster