Вышел Google Chrome 78
23 октября 2019 года
Компания Google представила релиз web-браузера Google Chrome 78. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome. Браузер Chrome отличается использованием логотипов Google, наличием системы отправки уведомлений в случае краха, возможностью загрузки модуля Flash по запросу, модулями для воспроизведения защищённого видеоконтента (DRM), системой автоматической установки обновлений и передачей при поиске RLZ-параметров. Следующий выпуск Chrome 79 запланирован на 10 декабря.
Основные изменения в Chrome 78:
- Реализована экспериментальная поддержка «DNS поверх HTTPS» (DoH, DNS over HTTPS), которая будет выборочно включена для отдельных категорий пользователей, в системных настойках которых уже указаны DNS-провайдеры, поддерживающие DoH. Например, если у пользователя в системных настройках указан DNS 8.8.8.8, то в Chrome будет активирован DoH-сервис Google («https://dns.google.com/dns-query» (Архивная копия от 23 октября 2019 на Wayback Machine)), если DNS — 1.1.1.1, то DoH сервис Cloudflare («https://cloudflare-dns.com/dns-query»(недоступная ссылка)) и т. п.
- Для управления включением DoH предусмотрена настройка «chrome://flags/#dns-over-https». Поддерживается три режима работы «secure», «automatic» и «off». В режиме «secure» хосты определяются только на основе ранее прокешированных безопасных значений (полученных через защищённое соединение) и запросов через DoH, откат на обычный DNS не применяется. В режиме «automatic» если DoH и защищённый кэш недоступны допускается получение данных из небезопасного кэша и обращение через традиционный DNS. В режиме «off» вначале проверяется общий кэш и если данных нет, запрос отправляется через системный DNS.
- В средствах синхронизации появилась предварительная поддержка совместного буфера обмена, которая пока не активирована для всех пользователей. В связанных одной учётной записью экземплярах Chrome теперь можно получить доступ к содержимому буфера обмена другого устройства, в том числе возможен совместный доступ к буферу обмена между мобильной и настольной системой. Содержимое буфера обмена шифруется с применением сквозного (end-to-end) шифрования, не позволяющего получить доступ к тексту на серверах Google;
- Для отдельных категорий пользователей включена экспериментальная возможность смены темы оформления и кастомизации экрана, показываемого при открытии новой вкладки. В меню «Настроить», отображаемое в нижнем правом углу экрана новой вкладки, помимо выбора фонового изображения, появилась поддержка изменения метода компоновки ярлыков и возможность смены темы оформления. Ярлыки могут быть автоматически предложены на основе наиболее часто открываемых сайтов, подобраны пользователем или вообще отключены. Тему оформления можно выбрать из набора предопределённых тем или создав собственную на основе выбора желаемых цветов в палитре. Для включения новых возможностей можно использовать флаги «chrome://flags/#ntp-customization-menu-v2» и «chrome://flags/#chrome-colors»;
- Для предприятий в адресной строке по умолчанию включена возможность поиска файлов в хранилище Google Drive. Поиск осуществляется не только по заголовкам, но и по содержимому документов с учётом истории их открытия в прошлом;
- В состав включён компонент Password Checkup, который будет поступательно активироваться для отдельных категорий пользователей (для принудительного включения предусмотрен флаг «chrome://flags/#password-leak-detection»). Password Checkup ранее поставлялся в виде внешнего дополнения, предназначенного для анализа надёжности используемых пользователем паролей. При попытке входа на любой сайт Password Checkup выполняет проверку логина и пароля по базе скомпрометированных учётных записей с выводом предупреждения в случае выявления проблем (проверка осуществляется на основе хэш-префикса на стороне пользователя). Проверка осуществляется по базе, охватывающей более 4 миллиардов скомпрометированных аккаунтов, фигурировавших в утечках пользовательских баз. Предупреждение также выводится при попытке использования тривиальных паролей, таких как «abc123»;
- Добавлена возможность инициирования звонка с Android-устройства, привязанного к той же учётной записи Google. В настольном браузере пользователь может выделить номер телефона в тексте, кликнуть правой кнопкой мыши и перенаправить операцию совершение звонка на Android-устройство, после чего на телефоне всплывёт уведомление, позволяющее инициировать звонок;
- Изменён формат подсказки, отображаемой при наведении мыши на заголовок вкладки. Подсказка теперь отображается в виде всплывающего блока, на котором показан полный текст заголовка и URL страницы. Блок удобно использовать для быстрого поиска нужной страницы при открытии очень большого числа вкладок (вместо перебора вкладок можно провести мышью поверх панели с вкладками и найти искомую страницу). В будущем в данном блоке планируется обеспечить отображение эскиза страницы;
- Добавлена экспериментальная возможность (chrome://flags/#enable-force-dark) принудительного использования тёмной темы оформления при просмотре сайтов. Для обеспечения тёмного представления сайта используется инвертирование цветов;
- Добавлена поддержка спецификации CSS Properties and Values API Level 1, позволяющей регистрировать собственные CSS-свойства, всегда имеющие определённый тип, позволяющие устанавливать значение по умолчанию и допускающие привязку анимационных эффектов. Для регистрации свойства может использоваться метод registerProperty() или CSS-правило «@property».
- В режиме Origin Trials (экспериментальные возможности, требующие отдельной активации) предложено несколько новых API. Origin Trial подразумевает возможность работы с указанным API из приложений, загруженных с localhost или 127.0.0.1, или после прохождения регистрации и получения специального токена, который действует ограниченное время для конкретного сайта.
- API Native File System, позволяющий создавать web-приложения, взаимодействующие с файлами в локальной ФС. Например, новый API может быть востребован в запускаемых в браузере интегрированных средах разработки, редакторах текста, изображений и видео. Для получения возможности прямой записи и чтения файлов, использования диалогов для открытия и сохранения файлов, а также для навигации по содержимому каталогов, приложение запрашивает у пользователя специальное подтверждение;
- Механизм Signed HTTP Exchanges (SXG), позволяющий размещать на других сайтах верифицированные копий web-страниц, выглядящие для пользователя как исходные страницы (без изменения URL), расширен возможностью загрузки cубресурсов (CSS, JS, картинки и т. п.) c оригинального сайта. Первоисточник ресурса задаётся через HTTP-заголовок Link, в котором также указывается проверочный хэш для верификации каждого ресурса. При помощи новой возможности поставщики контента могут создавать единый подписанный HTML-файл, охватывающий и все связанные с ним субресурсы;
- API SMS Receiver, позволяющий web-приложению получить доступ к SMS-сообщениям, например, для автоматизации верификации операции по отправленному через SMS одноразовому коду. Доступ предоставляется только к SMS, в которых указан специальный тег, определяющий привязку сообщения к конкретному web-приложению;
- Существенно увеличена производительность загрузки объектов ArrayBuffer через Web Socket. На платформе Linux отмечается увеличение скорости загрузки в 7.5 раз, в Windows — в 4.1 раза, в macOS — в 7.8 раз;
- Добавлена возможность определения в процентах значения прозрачности в CSS-свойствах opacity, stop-opacity, fill-opacity, stroke-opacity, и shape-image-threshold. Например, вместо «opacity: 0.5» теперь можно указывать «opacity: 50 %»;
- В API User Timing разрешена передача произвольные метки времени в вызовы performance.measure() и performance.mark() для выполнения измерений между ними, а также указание произвольных метаданных;
- В API Media Session добавлена поддержка определения обработчиков смены позиции в потоке (seekto), помимо ранее доступных обработчиков приостановки и начала воспроизведения;
- В JavaScript-движке V8 включён режим фонового разбора скриптов на лету по мере их загрузки по сети. Реализованная оптимизация позволила на 5-20 % сократить время компиляции скриптов. В новом выпуске также увеличена производительность деструктуризации объекта (преобразование «const {x, y} = object;» в «const x = object.x; const y = object.y;»). Повышена скорость обработки выражений RegExp с несовпадающими сопоставлениями. Существенно (на 9-20 %) повышена скорость вызова функций JavaScript из WebAssembly и наоборот. При компиляции байткода повышена эффективность построения таблиц привязки к исходным позициям, которая позволила сократить потребление памяти на 1-2.5 %.
- Расширены инструменты для web-разработчиков. Панель аудита теперь может использоваться в комбинации с другими возможностями, такими как блокировка запросов и переопределение загрузок. Добавлена поддержка отладки обработчиков платежей через API Payment. В панели анализа производительности добавлены метки LCP (Largest Contentful Paint), отражающие время отрисовки самых крупных элементов;
- Удалён механизм блокирования межсайтового скриптинга XSS Auditor, который признан неэффективным (атакующие уже давно применяют методы для обхода защиты XSS Auditor) и добавляющим новые векторы для утечки информации;
- В версии для Android обеспечена возможности использования тёмной темы оформления для меню, настроек и режима навигации по открытым сайтам.
Кроме нововведений и исправления ошибок в новой версии устранено 37 уязвимостей. Многие из уязвимостей выявлены в результате автоматизированного тестирования инструментами AddressSanitizer, MemorySanitizer, Control-flow integrity, LibFuzzer и AFL. Критических проблем, которые позволяют обойти все уровни защиты браузера и выполнить код в системе за пределами sandbox-окружения, не выявлено. В рамках программы по выплате денежного вознаграждения за обнаружение уязвимостей для текущего релиза компания Google выплатила 21 премию на сумму 59500 долларов США (одна премия $20000, одна премия $15000, одна премия $5000, две премии $3000,три премии $2000, пять премий $1000 и пять премий $500). Размер 4 вознаграждений пока не определён.
Источники
править- «Релиз Chrome 78». OpenNET, 23 октября 2019 года. (архив) (CC-BY)
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.