ТехТок 9. Как работают браузерные расширения и что такое фаервол

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

Оба сегодняшних вопроса — от технического директора и сооснователя AdGuard Андрея Мешкова, который заметил, что некоторыми общими техническими терминами часто бросаются, но редко объясняют, что за ними стоит. Не будем ничего усложнять и сразу перейдём к первому из них:

Как работают браузерные расширения?

Сначала давайте определим, что такое браузерные расширения. Если говорить очень просто, это мини-программы, которые запускаются в браузере и тем или иным образом изменяют веб-интерфейс. Видите маленькие значки рядом с адресной строкой? Это и есть браузерные расширения. Они могут выполнять самые разные функции — от небольших изменений настроек до серьёзных улучшений. Например, одни просто меняют способ открытия ссылок или автоматически копируют текст, а другие идут гораздо дальше — блокируют рекламу и трекеры, работают как VPN или даже используют искусственный интеллект, чтобы помочь вам писать тексты или резюмировать их содержание. Обычно для их использования вам не нужно знать ничего, кроме того, как добавить их в браузер. Но всё же, как на самом деле работают все эти расширения? Давайте разбираться.

Главное в браузерных расширениях кроется в их названии. В отличие от отдельных программ, они не могут работать вне браузера. В основе взаимодействия браузера и расширения лежат API (интерфейсы прикладного программирования) — наборы методов и свойств, предоставляемых браузерами, которые позволяют расширениям получать ограниченный доступ к некоторым функциям и данным браузера на основе имеющихся разрешений. Например, если API позволяет создавать новые вкладки или закрывать существующие, расширение может делать это посредством обращения к этому API, при условии, что расширение имеет необходимые разрешения. Чем больше функций и данных хочет получить расширение, тем больше разрешений ему требуется, поэтому внимательно относитесь к запросам разрешений при установке новой «игрушки» в браузер. Но об этом позже.

Как правило, каждый разработчик браузера создаёт свои API, специально предназначенные для этого браузера. Поэтому нередко можно увидеть, что расширение, например, для Chrome, не будет работать в Safari, и наоборот. Конечно, это не идеальное положение вещей, поэтому предпринимаются попытки стандартизировать и унифицировать эти API в рамках общей структуры. Один из примеров — WebExtensions API. Благодаря ему большинство основных браузеров, таких как Chrome, Firefox и Safari, предлагают совместимые API расширений. Это позволяет разработчикам создавать расширения, которые работают в нескольких браузерах с минимальными изменениями. Однако это не что-то само собой разумеющееся. Во многих случаях для бесперебойной работы расширения в разных браузерах требуется много усилий, и не у каждого разработчика есть ресурсы и желание для этого.

Теперь давайте вернёмся к вопросам безопасности и поговорим об ограничениях, которые браузеры накладывают на расширения. Браузерные расширения работают в так называемых песочницах — закрытых средах, которые позволяют каждому расширению получать доступ только к API браузера и ограничивают его взаимодействие с операционной системой и другими приложениями. У каждого расширения есть манифест, в котором декларируются разрешения, необходимые для выполнения его функций (например, разрешения на изменение содержимого страницы или на запуск и отмену загрузок). Браузер следит за соблюдением этих разрешений и не позволяет расширению выполнять какие-либо действия, выходящие за их рамки. Таким образом, даже если расширение взломают, оно не сможет нанести ущерб процессам и файлам, находящимся вне его досягаемости — по крайней мере, в теории.

Часто можно услышать предупреждения об опасности установки браузерных расширений из источников, не относящихся к официальным магазинам. Это связано с тем, что официальные магазины добавляют дополнительный уровень защиты. Каждое расширение, отправленное разработчиком в магазин, проходит проверку. В ходе этого процесса разработчик должен объяснить, зачем расширению требуются все запрашиваемые разрешения. Если после проверки кода эксперт решит, что разрешения чрезмерны для функциональности расширения, оно может быть отклонено и не попасть в магазин. Но нет гарантий, что в ходе проверки не будет допущено никаких ошибок. Есть множество примеров, когда расширения, допущенные в популярные магазины, такие как магазин расширений Chrome, оказывались вредоносными и крали данные пользователей или делали что-то похуже. Поэтому очень важно всегда проверять разрешения расширения перед его установкой.

Наконец, говоря о расширениях и безопасности, нельзя не упомянуть переход Chrome на новую версию платформы расширений Manifest V3. Мы много писали об этом и даже провели несколько выступлений на эту тему на Ad-Filtering Dev Summit, поскольку этот переход серьёзно сказывается на браузерных расширениях и вдвойне — на расширениях для блокировки рекламы. Это доставило нашим разработчикам много головной боли, но справедливости ради следует отметить, что это должно улучшить безопасность расширений Chrome. Весь код должен будет проходить проверку, что устраняет возможность расширений выполнять удалённо размещённый или произвольный код. Это должно значительно снизить риски безопасности.

Теперь перейдём к следующему вопросу…

Что такое фаервол?

Это одна из тех тем, на которую можно было бы легко потратить с десяток страниц, если бы мы захотели раскрыть все её аспекты. Но вместо того, чтобы углубляться в эту тему, давайте сосредоточимся на самом важном. Сначала давайте разберёмся с самым очевидным вопросом: почему фаервол вообще так называется?

Слово «фаервол» (в переводе буквально «стена огня» или «стена от огня») изначально не было техническим термином — оно появилось задолго до интернета. В своём первоначальном значении фаервол буквально означал стену, защищающую от огня. Такие стены устанавливали внутри зданий, чтобы пламя не распространялось из одной части строения в другую. В отличие от обычных стен, они были толще, изготавливались исключительно из фундаментных материалов и, как правило, не имели окон или других элементов, через которые мог пройти огонь.

Фаервол

В мире компьютерных сетей фаерволы впервые появились в конце 1980-х годов. Подобно своим физическим прототипам, они были разработаны для предотвращения распространения чего-либо, в данном случае — нежелательного или потенциально опасного сетевого трафика.

Первым поколением фаерволов были пакетные фильтры. Они работали на сетевом уровне, проверяя трафик путём анализа отдельных пакетов — небольших фрагментов данных, на которые разбивается информация при передаче в интернете. Пакетные фильтры принимали решения на основе таких параметров, как IP-адреса источника и пункта назначения, номера портов и используемые транспортные протоколы. В своей основе эти фаерволы полагались на заранее определённый набор правил, которые разрешали или блокировали трафик на основе этих свойств.

Затем, в начале 1990-х годов, появилось второе поколение фаерволов. В отличие от первого поколения, они были более сложными и получили название «фаерволы с отслеживанием состояния». Они не рассматривали один пакет в изоляции, а могли отслеживать трафик в течение определённого времени. Это означало, что они могли запоминать «состояние» соединения, например, был ли пакет частью существующего, одобренного сеанса или просто случайным входящим запросом.

Фаерволы продолжали развиваться по мере развития интернета. Рост популярности веб-приложений привел к разработке фаерволов, которые работают на прикладном уровне. Эти фаерволы способны понимать и фильтровать трафик на основе конкретных протоколов, которые поддерживают приложения или службы, такие как HTTP (используемый веб-браузерами для загрузки сайтов) или DNS (используемый для преобразования доменных имён в IP-адреса), а не только IP-адреса и порты. Затем, примерно в 2008 году, фаерволы начали включать технологию Deep Packet Inspection (DPI, «глубокий анализ пакетов»). Она позволяет фаерволам анализировать фактическое содержимое пакетов данных, а не только их заголовки.

💡
Независимо от того, как они работают и на каком уровне, фаерволы в основном действуют как барьер между двумя сетями — например, между домашней сетью и интернетом или между разными сегментами внутренней сети компании — и контролируют, что пропускать, а что нет.

Существуют различные формы реализации фаервола. Это может быть аппаратный фаервол, когда физическое устройство размещается на границе сети для фильтрации трафика (например, домашний роутер). Это может быть программный фаервол — приложение, работающее на вашем устройстве и фильтрующее трафик, поступающий на это устройство и исходящий из него (Windows Defender Firewall и т. п.). Или это может быть виртуальный или облачный фаервол, работающий удалённо и защищающий сети или устройства, не будучи при этом привязанным к конкретному оборудованию.

Теперь давайте ответим на вопрос, который может вас заинтересовать. Является ли Блокировщик рекламы AdGuard фаерволом? Краткий ответ — нет, по крайней мере, не в традиционном смысле этого слова. Но у наших приложений есть отдельные функции фаервола. В частности, в AdGuard для Android есть модуль фаервола, который позволяет пользователям управлять доступом приложений на своём устройстве к интернету. Этот модуль позволяет пользователям контролировать, какие приложения могут ходить в сеть, блокируя или разрешая доступ по мере необходимости.

Эта функция становится особенно полезной, когда приложения ведут себя подозрительно — например, отправляют данные, даже когда вы ими не пользуетесь. С помощью модуля фаервола AdGuard для Android вы можете заблокировать доступ к интернету для определённых приложений, отключить фоновый трафик, когда экран заблокирован, или даже отключить мобильные данные в роуминге. Это даёт вам полный контроль над тем, как и когда ваши приложения подключаются к интернету, без необходимости рутирования телефона или изучения сложных настроек системы.

Хотя фаерволы могут быть полезными инструментами для защиты домашней сети или конфиденциальности и безопасности на устройстве, чаще всего слово «фаервол» сейчас ассоциируется с цензурой. Во многом это связано с дурной славой, которую за последние годы приобрел «Великий китайский фаервол». И мы не можем закончить эту статью, не сказав об этом хотя бы несколько слов.

«Великий китайский фаервол» — это огромная государственная система цензуры, направленная на ограничение доступа к иностранному интернет-контенту в Китае, включая такие сервисы, как Google, Facebook, Twitter и YouTube. Она использует сочетание различных технологий, таких как DNS-спуфинг, фильтрация URL-адресов по ключевым словам, глубокий анализ пакетов (DPI) и даже подделка пакетов, чтобы блокировать или прерывать трафик. В мире существуют и другие государственные системы, похожие на эту, которые в основном функционируют как инструменты цензуры под видом обеспечения безопасности, но это тема для отдельной статьи.

Понравился пост?
27 502 27502 отзыва
Отлично!

AdGuard для Windows

AdGuard для Windows — это не просто «ещё один блокировщик». Это многоцелевой инструмент, который блокирует рекламу и доступ к опасным сайтам, ускоряет загрузку страниц и защищает детей от взрослого контента.
Скачивая программу, вы принимаете условия Лицензионного соглашения
Узнать больше
AdGuard для Windows, версия 7.21, пробный период 14 дней
27 502 27502 отзыва
Отлично!

AdGuard для Mac

В отличие от других блокировщиков, AdGuard разработан с учётом специфики операционной системы macOS. Он не только блокирует рекламу в Safari и других браузерах, но и защищает вас от слежки, фишинга и мошенничества в сети.
Скачивая программу, вы принимаете условия Лицензионного соглашения
Узнать больше
AdGuard для Mac, версия 2.17, пробный период 14 дней
27 502 27502 отзыва
Отлично!

AdGuard для Android

AdGuard для Android — это идеальное решение для Android-устройств. В отличие от других блокировщиков, AdGuard не требует root-доступа и позволяет управлять трафиком любых приложений на вашем устройстве.
Скачивая программу, вы принимаете условия Лицензионного соглашения
Узнать больше
Отсканируйте код, чтобы загрузить
Используйте любой сканер QR-кода на вашем устройстве.
AdGuard для Android, версия 4.10, пробный период 7 дней
27 502 27502 отзыва
Отлично!

AdGuard для iOS

Лучший блокировщик рекламы для iPhone и iPad. AdGuard устраняет рекламу в Safari, защищает ваши данные и ускоряет загрузку страниц. AdGuard для iOS использует новейшую технологию блокировки, которая обеспечивает непревзойденное качество фильтрации и позволяет применять множество различных фильтров одновременно
Скачивая программу, вы принимаете условия Лицензионного соглашения
Узнать больше
Отсканируйте код, чтобы загрузить
Используйте любой сканер QR-кода на вашем устройстве.
AdGuard для iOS, версия 4.5
27 502 27502 отзыва
Отлично!

AdGuard Content Blocker

AdGuard Content Blocker устраняет все виды рекламы в мобильных браузерах, которые поддерживают технологию блокировки контента, — а именно Samsung Internet и Яндекс. Браузер. Его функции ограничены по сравнению с AdGuard для Android, но он бесплатен, прост в установке и эффективен
Скачивая программу, вы принимаете условия Лицензионного соглашения
Узнать больше
AdGuard Content Blocker, версия 2.8
27 502 27502 отзыва
Отлично!

Браузерное расширение AdGuard

AdGuard — самое быстрое и легкое браузерное расширение для блокировки всех типов рекламы! Выбирайте AdGuard для быстрого и безопасного серфинга без рекламы.
Браузерное расширение AdGuard, версия 5.1
27 502 27502 отзыва
Отлично!

Помощник AdGuard

Дополнительное браузерное расширение для десктопных приложений AdGuard. Даёт доступ к таким функциям в браузере, как блокировка отдельных элементов, занесение сайта в белый список или отправление отчёта.
Помощник AdGuard, версия 1.4
27 502 27502 отзыва
Отлично!

AdGuard Home

AdGuard Home — мощный сетевой инструмент против рекламы и трекинга. С усилением роли интернета вещей становится все более и более важным управлять всей вашей сетью. После настройки AdGuard Home будет охватывать ВСЕ ваши домашние устройства и для этого вам не понадобится программное обеспечение на стороне клиента.
AdGuard Home, версия 0.107
27 502 27502 отзыва
Отлично!

AdGuard Pro для iOS

AdGuard Pro предлагает гораздо больше чем просто блокировку рекламы в Safari, которая есть в обычной версии. С помощью специальных настроек DNS вы сможете блокировать больше рекламы, защитить ваши личные данные и оградить детей от взрослого контента.
Скачивая программу, вы принимаете условия Лицензионного соглашения
Узнать больше
AdGuard Pro для iOS, версия 4.5
27 502 27502 отзыва
Отлично!

AdGuard для Safari

Расширения, блокирующие рекламу в Safari, переживают не лучшие времена с тех пор, как компания Apple вынудила всех использовать новый SDK. Познакомьтесь с нашим легко настраиваемым и молниеносным приложением!
AdGuard для Safari, версия 1.11
27 502 27502 отзыва
Отлично!

AdGuard для Android TV

AdGuard для Android TV — единственное приложение, которое блокирует рекламу, защищает ваши данные и действует как фаервол для Smart TV. Получайте предупреждения о веб-угрозах, используйте безопасный DNS, а ваш трафик будет зашифрован. Смотрите любимые сериалы безопасно и без рекламы!
AdGuard для Android TV, версия 4.10
27 502 27502 отзыва
Отлично!

AdGuard для Linux

AdGuard для Linux — это первый в мире блокировщик рекламы, работающий на уровне системы. Блокируйте рекламу и трекеры, выбирайте предустановленные фильтры или добавляйте свои — всё через интерфейс командной строки
AdGuard для Linux, версия 1.0
27 502 27502 отзыва
Отлично!

AdGuard Temp Mail

Ваш временный почтовый ящик, чтобы на основную почту не приходил спам
27 502 27502 отзыва
Отлично!

AdGuard VPN

66 локаций по всему миру

Доступ к любому контенту

Надёжное шифрование

Без логирования

Быстрое соединение

Поддержка 24/7

Попробовать
Скачивая программу, вы принимаете условия Лицензионного соглашения
Узнать больше
27 502 27502 отзыва
Отлично!

AdGuard DNS

AdGuard DNS – это альтернативный способ заблокировать рекламу, защитить личные данные и оградить детей от взрослых материалов. Он прост в настройке и использовании и обеспечивает необходимый минимум защиты от рекламы, трекинга и фишинга, независимо от платформы.
27 502 27502 отзыва
Отлично!

AdGuard Mail

Сохраняйте анонимность, избавьтесь от спама и защитите почту с нашими алиасами и временными адресами. Наш сервис пересылки бесплатный и подходит для всех операционных систем
27 502 27502 отзыва
Отлично!

AdGuard Wallet

Безопасный и приватный криптокошелёк: полностью контролируйте активы, управляйте несколькими кошельками и найдите тысячи криптовалют для хранения, отправки и обмена
Загрузка AdGuard началась Стрелка указывает на файл: нажмите на него, и установка начнётся Выберите «Открыть», нажмите «OK» и дождитесь загрузки файла. В открывшемся окне перетащите значок AdGuard в папку «Приложения». Спасибо за выбор AdGuard! Выберите «Открыть», нажмите «OK» и дождитесь загрузки файла. В открывшемся окне нажмите «Установить». Спасибо за выбор AdGuard!
AdGuard есть и в мобильном варианте