Google «сломала» блокировщики рекламы в Chrome. Что делать?
174
Вчера

Google «сломала» блокировщики рекламы в Chrome. Что делать?

Есть несколько решений
Аватар
Дмитрий Кутузов
14266
1
3 статьи

Увидев очередной баннер на весь экран, задумался: может, это судьба подсказывает, что пора купить новый диван?

Переход на Manifest v3 в Chrome и других браузерах на базе Chromium ограничил функциональность многих блокировщиков рекламы. Чтобы продолжать блокировать рекламу, нужно использовать обходные пути. Разбираемся, какие именно.

Что произошло

Компания Google обновила среду для работы расширений (API) в браузере Chrome. Ранее использовалась версия Manifest v2, но теперь произошел переход на Manifest v3, который был запланирован еще несколько лет назад. В результате этого обновления перестали работать некоторые расширения — в том числе популярные блокировщики рекламы вроде uBlock Origin и AdGuard.

Проблема с переходом на Manifest v3 касается не только Chrome, но и всех браузеров, которые основаны на платформе Chromium. Сторонние проекты могут на какое-то время продлить поддержку старого API, но после того, как ее окончательно удалят из Chromium, будут вынуждены от нее отказаться, чтобы поддерживать свой продукт в актуальном состоянии. К ним относятся:

  • Microsoft Edge,
  • Opera,
  • Яндекс Браузер,
  • Brave.
  • Vivaldi.

Сама компания Google мотивировала переход на Manifest v3 необходимостью повышения конфиденциальности и безопасности пользователей Chrome при установке и использовании расширений, а также снижением нагрузки на систему.

Что нового в Manifest v3

Реализация концепции service workers — специальных скриптовых сценариев, необходимых для работы расширений и срабатывающих при выполнении определенных условий. Ранее работа расширений была реализована посредством открытия дополнительных невидимых пользователю вкладок, что требовало больше ресурсов системы. В Manifest третьей версии от подобных «костылей» решили отказаться.

Запрет на использование расширением программного кода, запускаемого удаленно и не содержащегося непосредственно в нем. Теперь это будет только код на JavaScript, находящийся непосредственно в скачиваемом с Chrome Web Store файле, что позволит Google заранее проводить его проверку на предмет потенциальных угроз.

К сожалению, помимо повышения безопасности и борьбы с недобросовестными расширениями, эта мера ударила и по некоторым полезным приложениям. Они потеряли возможность использовать внешние базы данных, например находящиеся на сервере компании-разработчика.

Теперь им приходится регулярно скачивать обновленные версии расширений, которые, к тому же, увеличились в объеме из-за того, что должны содержать в себе весь необходимый для работы код. Да и их публикация в магазине будет занимать дополнительное время ввиду необходимости каждый раз проходить проверку со стороны Google.

Есть в обновлении также и другие технические нюансы, которые налагают ряд ограничений на разработчиков. Среди них обязательный переход на обработку сетевых запросов расширениями исключительно с помощью declarativeNetRequest API, который позволяет ввести до 30 000 заранее прописанных условий фильтрации интернет-трафика, вместо webRequest API.

Последний позволял в режиме реального времени перехватывать запросы, анализировать, изменять или блокировать их, что давало больше возможностей для разработчиков расширений, в особенности — блокировщиков рекламы.

Что теперь делать

Обновить блокировщики. Скачать обновленные версии привычных расширений, если таковые уже имеются, либо найти им альтернативу. Но тут не все так просто. Например, для популярного блокировщика рекламы uBlock Origin уже доступна альтернативная «облегченная» версия uBlock Origin Lite, но из-за ограничений нового API эффективность его работы ниже, чем у оригинальной версии.

Воспользоваться расширенной поддержкой для корпоративных клиентов. Google будет продолжать поддерживать Manifest v2 до лета 2025 года, но только для корпоративных клиентов. Это означает, что компании, которые используют специализированные расширения на основе старой версии Manifest, смогут продолжать их работу в актуальных версиях платформы Chromium, включая браузеры, такие как Chrome и Microsoft Edge.

Для того чтобы получить расширенную поддержку в Chrome, необходимо изменить конфигурацию браузера через редактирование реестра. Продлить поддержку Manifest v2 можно благодаря пошаговой инструкции, выложенной на Reddit. Стоит учитывать, что такое решение не гарантирует в дальнейшем стабильной работы расширений, так как этот путь «неофициальный».

Порядок действий таков:

1. Запускаем «Редактор реестра» в Windows (на примере Windows 10 Pro с актуальными обновлениями, найти его можно просто введя «редактор реестра» в поисковой строке меню «Пуск»).

2. Вводим в верхнюю строку адрес: «Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome»

Если такой адрес не найден, то при помощи местного аналога «Проводника» переходим во вкладку Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies, нажимаем правой кнопкой мыши на вкладку Policies, выбираем в меню «Создать —> Раздел», называем созданную вкладку Google, затем уже в ней тем же образом создаем вкладку Chrome.

3. Во вкладке Chrome создаем параметр DWORD (32 бита), нажав на вкладке или в ее поле правую кнопку мыши, а затем выбрав в меню «Создать —> Параметр DWORD (32 бита)».

4. Переименовываем созданный параметр в ExtensionManifestV2Availability.

5. Нажимаем на значок параметра правой кнопкой мыши, выбираем «Изменить», изменяем значение на «2», проследив, чтобы был выбран пункт «Шестнадцатеричная система исчисления», затем нажимаем «ОК».


6. Запускаем браузер Chrome, вводим в поисковой строке chrome://policy, открывается страница с примененными правилами. Если все сделано верно, то мы увидим строку Chrome Policies с правилом ExtensionManifestV2Availability и стоящим напротив него параметром 2, что должно дать нам возможность пользоваться установленными ранее расширениями, использующими Manifest v2 до лета 2025 года.

Если такая запись не появилась, попробуйте нажать кнопку «Повторно загрузить правила» в левом верхнем углу.

Перейти на альтернативный браузер

Еще один способ продолжать пользоваться привычными расширениями и блокировать рекламу — переключиться на альтернативные браузеры.

Opera — базируется на Chromium и использует другие наработки Google для своего функционирования. Однако команда разработчиков заявляет о том, что браузер и дальше продолжит поддерживать Manifest v2 для работы расширений, и в обозримом будущем отказ от него не планируется. Также стоит отметить, что в «Опере» имеется встроенный функционал, позволяющий блокировать рекламу и работу трекеров.

Встроенная функция блокировки рекламы не зависит от изменений в работе расширений

Firefox — использует собственный движок (Gecko), который не зависит от политики Google по внесению изменений в Chromium и магазин расширений Chrome. «Огненный лис» на данный момент единственный популярный браузер, продолжающий использовать собственный движок со своей независимой библиотекой плагинов и расширений, включая полнофункциональную версию блокировщика рекламы uBlock Origin.

Vivaldi — его разработчики заявляют, что не будут отказываться от Manifest v2, пока он все еще поддерживается актуальной версией Chromium. Кроме того, в данном браузере также есть встроенный блокировщик рекламы, который не должен пострадать от изменений API.

Скриншот стартового окна браузера Vivaldi

Brave — также обещает поддерживать блокировку рекламы встроенными инструментами, независимо от изменений в Chrome.

Что в итоге

Переход на Manifest v3 в Chrome и браузерах на базе Chromium сократил возможности блокировщиков рекламы. Чтобы продолжать эффективно блокировать рекламу, можно использовать следующие решения:

  • скачать обновленные версии привычных расширений, если таковые уже имеются, либо найти им альтернативу;
  • получить расширенную корпоративную поддержку в Chrome, изменив конфигурацию браузера;
  • переключиться на браузеры с поддержкой Manifest v2, такие как Firefox и Vivaldi.

Стоит иметь в виду, что Google планирует удалять из магазина расширения, использующие устаревший API, после прекращения его официальной поддержки. Поэтому стоит обратить внимание на браузеры, у которых есть встроенные средства блокировки назойливой рекламы (включая Opera и Vivaldi), или рассмотреть переход на Firefox — последний крупный проект, который не зависит от решений Google по развитию платформы Chromium.