Издание на Chrome 93

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

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

  • Проведена е модернизация на оформлението на блока с информация за страницата (page info), в който е реализирана поддръжка на вложени блокове, а падащите списъци с права за достъп са заменени с превключватели. В списъците е осигурено извеждането на най-важната информация на първо място. Промяната не е налична за всички потребители, за активиране може да се използва настройката «chrome://flags/#page-info-version-2-desktop».
    Издание на Chrome 93
  • За малък процент потребители в качеството на експеримент индикаторът за защитена връзка в адресната лента е изменен на по-неутрален и не предизвикващ двусмислие символ (катинарът е заменен със знак «V»). За връзките, установени без криптиране, все още се показва индикаторът «не е защитена». Като причина за замяната на индикатора се споменава, че много потребители асоциират индикатора с достатъчно доверие към съдържанието на сайта, а не го възприемат като признак за криптиране на връзката. Съдейки по анкета на Google, само 11% от потребителите разбират значението на пиктограмата с катинар.
    Издание на Chrome 93
  • В списъка с наскоро затворени табове е осигурено извеждането на съдържанието на затворените групи табове (по-рано в списъка просто се показваше името на групата без детайли за съдържанието) с възможност за възстановяване както на цялата група, така и на отделни табове от групата. Възможността не е активирана за всички потребители, затова за включване може да се наложи да бъде променена настройката «chrome://flags/#tab-restore-sub-menus».
    Издание на Chrome 93
  • За предприятията са реализирани нови настройки DefaultJavaScriptJitSetting, JavaScriptJitAllowedForSites и JavaScriptJitBlockedForSites, които позволяват управление на режима JIT-less, който деактивира прилагането на JIT компилация при изпълнението на JavaScript (използва се само интерпретаторът Ignition) и забранява наемането на изпълним памет по време на изпълнението на кода. Деактивирането на JIT може да бъде полезно за подобряване на сигурността при работа с потенциално опасни уеб приложения, на цената на намаляване на производителността на JavaScript с около 17%. Интересното е, че компанията Microsoft е отишла още по-далеч и е реализирала в браузъра Edge експериментален режим „Super Duper Secure“, който позволява на потребителя да деактивира JIT и да активира несъвместими с JIT хардуерни механизми за защита CET (Controlflow-Enforcement Technology), ACG (Arbitrary Code Guard) и CFG (Control Flow Guard) за процесите, обработващи уеб съдържание. Ако експериментът се окаже успешен, може да се очаква прехвърлянето му в основната версия на Chrome.
  • На страницата на новата разделка е осигурено извеждането на списък с най-търсените документи, запазени в Google Drive. Съдържанието на списъка отговаря на секцията Priority в drive.google.com. За управление на показването на съдържанието на Google Drive могат да се използват настройките „chrome://flags/#ntp-modules“ и „chrome://flags/#ntp-drive-module“.
    Издание на Chrome 93
  • За страницата на новата разделка са предложени нови информационни карти, които помагат да се намери наскоро преглеждано съдържание и свързана с него информация. Картите са предназначени да улеснят продължаването на работата с информацията, която е била прекъсната, например, картите ще помогнат да се намери рецептата на ястието, което наскоро е било намерено в мрежата, но е загубено след затваряне на страницата, или да се продължи изборът на покупки в магазините. Като експеримент на потребителите са предложени две нови карти: „Рецепти“ (chrome://flags/#ntp-recipe-tasks-module) за търсене на кулинарни рецепти и показване на наскоро прегледани рецепти; „Покупки“ (chrome://flags/#ntp-chrome-cart-module) за напомняния за избрани стоки в онлайн магазините.
  • В версията за платформата Android е добавена опционална поддръжка на панела за непрекъснато търсене (chrome://flags/#continuous-search), който позволява на потребителите да следят последните резултати от търсене в Google (панелът продължава да показва резултатите след преместването на други страници).
    Издание на Chrome 93
  • В версията за платформата Android е добавен експериментален режим за обмяна на цитати (chrome://flags/#webnotes-stylize), който позволява да запазите избрана част от страницата под формата на цитат и да я споделите с други потребители.
  • При публикуване на нови добавки или обновления на версиите в Chrome Web Store, вече е задължително прилагането на двуфакторна автентикация за разработчици.
  • За потребителите на Google Account е предоставена опция за запазване на информация за плащанията в тяхната сметка в Google.
  • В режим на инкогнито, при активиране на опцията за изчистване на данни от навигацията, е реализиран нов диалог за потвърждение на операцията, поясняващ, че изчистването на данни ще доведе до затваряне на прозореца и приключване на всички сесии в режим на инкогнито.
  • Поради установени несъвместимости с фърмуерите на някои устройства, временно е деактивирана поддръжката на новия метод за замяна на ключове, устойчив на подбора от квантови компютри, добавен в Chrome 91, основан на използването на разширението CECPQ2 (Combined Elliptic-Curve and Post-Quantum 2) в TLSv1.3, което комбинира класическия механизъм за обмен на ключове X25519 с HRSS схемата, базирана на алгоритъма NTRU Prime, разработен за постквантови криптосистеми.
  • В списъка на забранените мрежови портове са добавени портове 989 (ftps-data) и 990 (ftps) с цел блокиране на атаката ALPACA. По-рано, с цел защита от атака NAT slipstreaming, вече бяха блокирани портове 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061, 6566 и 10080.
  • В TLS е прекратена поддръжката на шифри на базата на алгоритъма 3DES. В частност, наборът шифри TLS_RSA_WITH_3DES_EDE_CBC_SHA, подложен на атака Sweet32, е премахнат.
  • Поддръжката на дистрибуцията Ubuntu 16.04 е прекратена.
  • Предоставена е възможност за използване на API WebOTP между различни устройства, свързани чрез обща Google сметка. WebOTP позволява на уеб приложението да чете еднократни кодове за потвърждение, изпратени чрез SMS. Предложеното изменение дава възможност да получите код за потвърждение на мобилното устройство с Chrome за Android и да го приложите на настолна система.
  • API User-Agent Client Hints, разработвано като заместител на заглавието User-Agent, е разширено. User-Agent Client Hints позволява селективно предоставяне на данни за конкретни параметри на браузера и системата (версия, платформа и т.н.) само след искане. сървър. Потребителят, от своя страна, може да определи каква информация може да предостави на собствениците на сайтове. При използване на User-Agent Client Hints идентификаторът на браузъра не се предава без изрично запитване, а по подразбиране се посочват само основните параметри, което затруднява провеждането на пасивна идентификация.

    В новата версия е реализирана поддръжка на параметъра Sec-CH-UA-Bitness за извършване на данни за разрядността на платформата, което може да се използва за предоставяне на оптимизирани бинарни файлове. По подразбиране е осигурена изпращането на параметъра Sec-CH-UA-Platform с общи данни за платформата. В стойността UADataValues, издавана при извикване на getHighEntropyValues(), по подразбиране се предоставят обобщени параметри, ако не е възможно да се върне детайлен вариант. В обекта NavigatorUAData е добавен метод toJSON, който позволява използването на конструкции от типа JSON.stringify(navigator.userAgentData).

  • Стабилизирана и предложена по подразбиране възможността за опаковане на ресурси в пакети в формат Web Bundle, подходящи за организиране на по-ефективно зареждане на голям брой свързани файлове (CSS стилове, JavaScript, изображения, iframe). Сред недостатъците в настоящата поддръжка на пакети за файлове JavaScript (webpack), които се опитват да бъдат отстранени в Web Bundle: в HTTP кеша може да остане самият пакет, но не и неговите съставни части; компилирането и изпълнението могат да започнат само след пълно зареждане на пакета; допълнителни ресурси, като CSS и изображения, трябва да се кодируют в форма на JavaScript низове, което води до увеличаване на размера и изпълнението на още една фаза на парсинг.
  • Включен е API WebXR Plane Detection, предоставящ информация за плоски повърхности в виртуалната 3D среда. Указаният API позволява да се мине без ресурсно натоварваща обработка на данни, получени чрез извикване на MediaDevices.getUserMedia(), с използването на собствени реализации на алгоритми за машинно зрение. Спомняме си, че API WebXR позволява да се унифицира работата с различни класове устройства за виртуална реалност, от стационарни 3D шлемове до решения на базата на мобилни устройства.
  • В режима Origin Trials (експериментални функции, изискващи отделна активация) са добавени няколко нови API. Origin Trial предполага възможността за работа с определен API от приложения, заредени от localhost или 127.0.0.1, или след регистрация и получаване на специален токен, който е валиден за ограничен период от време за конкретен сайт.
    • Предложен е API Multi-Screen Window Placement, позволяващ разполагането на прозорци на всеки дисплей, свързан с текущата система, както и запазването на позицията на прозореца и при необходимост разширяването на прозореца на целия екран. Например, с помощта на указания API уеб приложението за показване на презентация може да организира извеждането на слайдове на един екран, а да показва бележки за докладчика на друг.
    • В заглавието Cross-Origin-Embedder-Policy, управляващо режима на изолация Cross-Origin и позволяващо определяне на правила за безопасна употреба на страницата на привилегировани операции, е добавена поддръжка на параметъра „credentialless“ за деактивиране на трансфера на информация, свързана с удостоверяване, като бисквитки и клиентски сертификати.
    • За самостоятелно инсталиращи се уеб приложения (PWA, Progressive Web Apps), управляващи рендериране на съдържанието на прозореца и обработващи входящи данни, е предоставен оверлей с контроли на прозореца, като област с заглавие и бутони за разширяване/свиване. Оверлеят разширява областта, която може да бъде променяна, на целия прозорец и позволява добавяне на собствени елементи в областта с заглавие.
      Издание на Chrome 93
    • Добавена е възможността за създаване на PWA приложения, които могат да се използват като обработвачи на URL адреси. Например, приложението music.example.com може да се регистрира като обработвач на URL адрес https://*.music.example.com и всички прехвърляния от външни приложения по тези линкове, например от мессенджъри и имейл клиенти, ще доведат до отварянето на това PWA приложение, а не на нов таб в браузъра.
  • Предоставена е възможност за зареждане на CSS файлове чрез израза „import“, подобно на зареждането на JavaScript модули, което е удобно при създаване на собствени елементи и позволява да се избегне задаването на стилове чрез код на JavaScript. import sheet from './styles.css' assert { type: 'css' }; document.adoptedStyleSheets = [sheet]; shadowRoot.adoptedStyleSheets = [sheet];
  • Предоставен е нов статичен метод AbortSignal.abort(), връщащ обект AbortSignal, за който вече е зададен параметърът aborted. Вместо да пишем няколко реда код за създаване на обект AbortSignal в състояние aborted, сега можем да се ограничим до един ред: „return AbortSignal.abort()“.
  • В елемента Flexbox е добавена поддръжка на ключовите думи start, end, self-start, self-end, left и right, допълващи ключовите думи center, flex-start и flex-end с инструменти за опростено подравняване на позицията на флекс елементите.
  • В конструктора Error() е реализирано ново опционално свойство „cause“, с помощта на което лесно могат да се свързват грешки помежду си. const parentError = new Error('parent'); const error = new Error('parent', { cause: parentError }); console.log(error.cause === parentError); // → true
  • В свойството HTMLMediaElement.controlsList е добавена поддръжка на режима noplaybackrate, позволяващ деактивирането на елементите от предоставения в браузъра интерфейс за промяна на скоростта на възпроизвеждане на мултимедийно съдържание.
  • Добавен е заглавие Sec-CH-Prefers-Color-Scheme, позволяващо при изпращане на заявка да се предадат данни за предпочитаната от потребителя цветова схема, използвана в медиазапроси «prefers-color-scheme», което ще позволи на сайта да оптимизира зареждането на свързаните с избраната схема CSS и да избегне видими превключвания от други схеми.
  • Добавено е свойство Object.hasOwn, представляващо опростена версия на Object.prototype.hasOwnProperty, реализирано под формата на статичен метод. Object.hasOwn({ prop: 42 }, ‘prop’) // → true
  • В JIT-компилатора Sparkplug, предназначен за много бързо изпълнение на груба компилация, е добавен режим за пакетно изпълнение на операции, позволяващ намаляване на разходите от превключване на страници в паметта между режимите на запис и изпълнение. Sparkplug вече компилира наведнъж няколко функции и извиква mprotect само веднъж за промяна на правата на достъп на цялата група. Предложеният режим значително намалява времето за компилация (с до 44%) без негативно влияние върху производителността на изпълнението на JavaScript.
    Издание на Chrome 93
  • В Android версията са деактивирани вградените в движка V8 механизми за защита от атаки по странични канали, като Spectre, които са признати за не толкова ефективни, колкото изолирането на сайтове в отделни процеси. В настолната версия посочените механизми бяха деактивирани още в изданието Chrome 70. Деактивирането на ненужните проверки позволи увеличаване на производителността с 2-15%.
    Издание на Chrome 93
  • Направени са подобрения в инструментите за уеб разработчици. В режима на инспектиране на таблици със стилове е предоставена възможност за редактиране на заявки, създадени с израза @container. В режима на инспектиране на мрежата е реализиран преглед на ресурси във формат Web bundle. В уеб конзолата в контекстното меню са добавени опции за копиране на редове под формата на литерали на JavaScript или JSON. Улеснена е диагностика на грешки, свързани с CORS (Cross-Origin Resource Sharing).
    Издание на Chrome 93

Освен нововъведения и исправление на грешки, новата версия отстранява 27 уязвимости. Много от уязвимостите са идентифицирани чрез автоматизирано тестване с инструментите AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Не са открити критични проблеми, които да позволяват заобикаляне на всички нива на защита на браузера и изпълнение на код в системата извън sandbox средата. В рамките на програмата за възнаграждение за откритие на уязвимости за текущото издание, компания Google е изплатила 19 награди на обща стойност 136500 долара (три награди по 20000 долара, една награда от 15000 долара, три награди по 10000 долара, една награда от 7500 долара, три награди по 5000 долара и три награди по 3000 долара). Размерът на 5 от наградите все още не е определен.

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

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