Реліз Chrome 98

Компанія Google представила реліз web-браузера Chrome 98. Одночасно доступний стабільний випуск вільного проекту Chromium, який є основою Chrome. Браузер Chrome відрізняється використанням логотипів Google, наявністю системи надсилання повідомлень у разі краху, модулями для відтворення захищеного від копіювання відеоконтенту (DRM), системою автоматичної установки оновлень та передачі при пошуку RLZ-параметрів. Наступний випуск Chrome 99 заплановано на 1 березня.

Основні зміни в Chrome 98:

  • У браузер вбудовано власне сховище кореневих сертифікатів центрів, що посвідчують (Chrome Root Store), яке буде використовуватися замість зовнішніх сховищ, специфічних для кожної операційної системи. Сховище реалізовано за аналогією з незалежним сховищем кореневих сертифікатів у Firefox, який використовується як перша ланка для перевірки ланцюжка довіри сертифікатів при відкритті сайтів по HTTPS. Нове сховище поки не використовується за замовчуванням. Для спрощення перекладу конфігурацій, зав'язаних на системні сховища, і для забезпечення переносимості, якийсь час діятиме перехідний період, протягом якого в Chrome Root Store буде включена повна добірка сертифікатів, схвалених на більшості платформ, що підтримуються.
  • Продовжується реалізація плану посилення захисту від атак, пов'язаних із зверненням до ресурсів у локальній мережі або на комп'ютері користувача (localhost) зі скриптів, що завантажуються при відкритті сайту. Подібні запити використовуються зловмисниками для CSRF-атак на маршрутизатори, точки доступу, принтери, корпоративні web-інтерфейси та інші пристрої та сервіси, що приймають запити тільки з локальної мережі.

    Для захисту від подібних атак у разі звернення до будь-яких субресурсів у внутрішній мережі, браузер почне відправляти явний запит на повноваження завантаження подібних субресурсів. Запит повноважень здійснюється через відправку на сервер основного сайту запиту CORS (Cross-Origin Resource Sharing) із заголовком "Access-Control-Request-Private-Network: true", перед зверненням до внутрішньої мережі або localhost. При підтвердженні операції у відповідь на запит сервер повинен повернути заголовок «Access-Control-Allow-Private-Network: true». У Chrome 98 перевірка реалізована в тестовому режимі і у разі відсутності підтвердження у web-консолі відображається попередження, але запит субресурсу не блокується. Блокування планується увімкнути не раніше випуску Chrome 101.

  • У налаштуваннях облікового запису інтегровані засоби керування включенням розширеного режиму захисту від небезпечних сайтів (Enhanced Safe Browsing), в якому активуються додаткові перевірки для захисту від фішингу, шкідливої ​​активності та інших загроз у Web. Після активації режиму в обліковому записі Google тепер виводиться пропозиція активувати режим у Chrome.
  • Додано модель для виявлення спроб фішингу на стороні клієнта, реалізована з використанням платформи машинного навчання TFLite (TensorFlow Lite) і не вимагає відправки даних для виконання перевірки на стороні Google (при цьому надсилається телеметрія з інформацією про версію моделі та обчислені вагові коефіцієнти для кожної категорії) . При виявленні спроби фішингу користувачеві перед відкриттям підозрілого сайту буде показано сторінку із попередженням.
  • В API Client Hints, що розвивається як заміна заголовка User-Agent і дозволяє вибірково віддавати дані про конкретні параметри браузера та системи (версія, платформа і т.д.) тільки після запиту сервером, реалізована можливість підстановки до списку ідентифікаторів браузера фіктивних назв аналогії з використовуваним у TLS механізмом GREASE (Generate Random Extensions And Sustain Extensibility). Наприклад, крім 'Chrome'; v="98"' і '"Chromium"; v="98"' до списку може бути доданий випадковий ідентифікатор неіснуючого браузера '"(Not;Browser"; v="12"'. Подібна підстановка дозволить виявляти проблеми з обробкою ідентифікаторів невідомих браузерів, які призводять до того, що альтернативні браузери змушені прикидатись іншими популярними браузерами, щоб обійти перевірку за списками допустимих браузерів.
  • Починаючи з 17 січня каталог Chrome Web Store перестали прийматися доповнення, що використовують другу версію маніфесту Chrome. Нові доповнення тепер прийматимуть лише з третьою версією маніфесту. Розробники раніше доданих доповнень, як і раніше, матимуть змогу публікувати оновлення з другою версією маніфесту. Повне припинення підтримки другої версії маніфесту заплановано на січень 2023 року.
  • Додано підтримку кольорових векторних шрифтів у форматі COLRv1 (підмножина шрифтів OpenType, що містять крім векторних гліфів шар з інформацією про колір), які можуть застосовуватися, наприклад, для створення багатобарвних emoji. На відміну від раніше підтримуваного формату COLRv0 у COLRv1 з'явилася можливість використання градієнтів, накладень та трансформацій. Формат також надає компактну форму зберігання, забезпечує ефективне стискування та допускає повторне використання контурів, що дозволяє істотно зменшити розмір шрифту. Наприклад, шрифт Noto Color Emoji у растровому представленні займає 9MB, а у векторному форматі COLRv1 – 1.85MB.
    Реліз Chrome 98
  • У режимі Origin Trials (експериментальні можливості, що потребують окремої активації) реалізовано API Region Capture, що дозволяє кадрувати відео, що захоплюється. Наприклад, кадрування може знадобитися у web-додатках, які здійснюють захоплення відео з вмістом своєї вкладки, для вирізання певного вмісту перед відправкою. Origin Trial має на увазі можливість роботи із зазначеним API з додатків, завантажених з localhost або 127.0.0.1, або після проходження реєстрації та отримання спеціального токена, який діє обмежений час для конкретного сайту.
  • У CSS-властивість "contain-intrinsic-size" додано підтримку значення "auto", при вказівці якого буде використаний останній запам'ятаний розмір елемента (при використанні разом з "content-visibility: auto" розробнику не потрібно вгадувати відмальований розмір елемента).
  • Додано властивість AudioContext.outputLatency, через яку можна дізнатися відомості про прогнозовану затримку перед виведенням звуку (затримка між запитом звуку та початком обробки отриманих даних пристроєм виведення звуку).
  • CSS-властивість color-scheme, що дає можливість визначити в яких колірних схемах може бути коректно показаний елемент (light, dark, day mode і night mode), доданий параметр only, що дозволяє виключити примусову зміну колірної схеми окремих HTML-елементів. Наприклад, якщо вказати «div { color-scheme: only light }», то для елемента div буде використовуватися тільки світла тема, навіть якщо в браузері буде примусово включено темне оформлення.
  • У CSS додано підтримку media-запитів 'dynamic-range' та 'video-dynamic-range' для визначення наявності екрану, що підтримує HDR (High Dynamic Range).
  • У функцію window.open() додано можливість вибору відкриття посилання в новій вкладці, новому вікні або спливаючому вікні. Крім того, властивість window.statusbar.visible тепер повертає false для спливаючих вікон і true для вкладок і вікон. const popup = window.open('_blank',»,'popup=1'); // Відкрити у спливаючому вікні const tab = window.open('_blank',»,'popup=0'); // Відкрити у вкладці
  • Для вікон і worker-ов реалізований метод structuredClone(), що дозволяє створювати рекурсивні копії об'єктів, які включають властивості як зазначеного об'єкта, а й інших об'єктів, куди посилається поточний об'єкт.
  • Web Authentication API додає підтримку розширення специфікації FIDO CTAP2, що дозволяє задати мінімальний допустимий розмір PIN-коду (minPinLength).
  • Для відокремлених web-додатків доданий компонент Window Controls Overlay, що розширює екранну область програми на все вікно, включаючи область заголовка, на який накладаються штатні кнопки управління вікном (закриття, мінімізація, максимізація). Web-додаток може керувати відмальовуванням та обробкою введення у всьому вікні, за винятком накладеного блоку з кнопками керування вікном.
  • У WritableStreamDefaultController додано властивість обробки сигналів, що повертає об'єкт AbortSignal, за допомогою якого можна відразу зупиняти операції запису WritableStream, не чекаючи їх завершення.
  • У WebRTC видалено підтримку механізму узгодження ключів SDES, який у 2013 році був оголошений організацією IETF застарілим через проблеми з безпекою.
  • За замовчуванням вимкнено API U2F (Cryptotoken), який раніше оголошений застарілим і йому на зміну прийшов API Web Authentication. API U2F буде повністю видалено в Chrome 104.
  • В API Directory оголошено застарілим поле installed_browser_version, замість якого запропоновано нове поле pending_browser_version, яке відрізняється тим, що в ньому міститься інформація про версію браузера з урахуванням завантажених, але не застосованих оновлень (тобто версія, яка буде діяти після перезапуску брауз).
  • Вибрані параметри, що дозволили повернути підтримку TLS 1.0 та 1.1.
  • Внесено покращення до інструментів для web-розробників. Додана вкладка для оцінки роботи кешу переходу (Back-forward cache), що забезпечує миттєвий перехід під час використання кнопок «Назад» та «Вперед». Додана можливість емуляції медзапитів forced-colors. У редакторі Flexbox додані кнопки для підтримки властивостей row-reverse та column-reverse. У вкладці «Changes» забезпечено відображення змін після форматування коду, що спрощує аналіз мініфікованих сторінок.
    Реліз Chrome 98

    Реалізацію панелі перегляду коду оновлено до випуску редактора коду CodeMirror 6, у якому значно підвищено продуктивність роботи з дуже великими файлами (WASM, JavaScript), вирішено проблеми з випадковими зміщеннями під час навігації та покращено рекомендації системи автодоповнення під час редагування коду. До панелі CSS-властивостей додано можливість фільтрації виводу по імені або значенням властивості.

    Реліз Chrome 98

Окрім нововведень та виправлення помилок у новій версії усунено 27 вразливостей. Багато вразливостей виявлено в результаті автоматизованого тестування інструментами AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer та AFL. Критичних проблем, які дозволяють обійти всі рівні захисту браузера та виконати код у системі за межами sandbox-оточення, не виявлено. У рамках програми з виплати грошової винагороди за виявлення вразливостей для поточного релізу компанія Google виплатила 19 премій на суму 88 тисяч доларів США (дві премії $20000, одна премія $12000, дві премії $7500, чотири премії $1000 і по одній премії $7000, $5000 та $3000.

Джерело: opennet.ru

Додати коментар або відгук