Вернуться в блог

Разрешения браузерных расширений: что они могут читать и чего стоит опасаться

Браузерные расширения могут получать доступ к содержимому страниц, cookie, настройкам прокси и даже учетным данным. В статье разобраны четыре категории разрешений, опасные сочетания и практические меры контроля расширений в команде.

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

浏览器插件权限清单:能读到什么、该防什么的关键步骤与判断维度示意图

К чему расширения действительно могут получить доступ

Модель разрешений расширений обычно устроена так: доступ подтверждается один раз и затем действует постоянно. При установке вы нажимаете «Разрешить», а после этого браузер, как правило, уже не предупреждает, что именно расширение читает или изменяет. По степени влияния можно выделить четыре основные категории.

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

Cookie и локальное хранилище — одна из самых недооцененных областей. В cookie хранится состояние входа, поэтому их получение фактически может означать получение самой сессии. В LocalStorage могут оставаться токены, черновики и настройки интерфейса. Как только расширение получает возможность читать данные сайта, его доступ уже выходит за рамки простого просмотра страницы.

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

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

Настоящая опасность — в сочетании разрешений

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

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

Что стоит проверить перед установкой

Лучше потратить несколько минут на проверку до установки, чем удалять расширение уже после инцидента.

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

Соответствуют ли разрешения назначению? Расширению, которое нужно только для экспорта таблиц, не требуется читать cookie всех сайтов или менять прокси. Если объем разрешений явно превышает нужную функцию, лучше пока отказаться от установки.

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

Запрашивает ли оно удаленный код или удаленную конфигурацию? От этого зависит, может ли его поведение измениться без вашего ведома.

В команде доступ лучше сужать

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

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

Если несколько аккаунтов и несколько сотрудников используют одни и те же устройства, распространенный способ сделать ситуацию управляемой — использовать PurpleMark для создания независимых браузерных сред под разные задачи и отделять экспериментальные среды с расширениями от сред с ключевыми аккаунтами.

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