Спрятаны у всех на виду: как избежать утечки данных при использовании браузерных расширений (2/2)

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

В первой части мы с вами разобрали способы обнаружения браузерных расширений.

А во второй части вы узнаете, что обнаружение расширений — это не только «сухая» теория, а реальная практика, которую используют такие крупные компании как LinkedIn и YouTube.

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

Актуальность обнаружения расширений в интернете

Основываясь на наших исследованиях, мы можем смело сказать, что большинство сайтов прибегают к попыткам обнаружить ваши браузерные расширения. Даже одни из самых популярных сайтов пытаются найти расширения в вашем браузере. Так, например, когда вы заходите на YouTube, сайт проверяет наличие расширения Chrome Media Router. YouTube делает это при помощи проверки доступных исходных данных этого расширения.

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

Расширения, заблокированные на LinkedIn [1]

Несмотря на то, что некоторые из этих расширений не являются вредоносными, LinkedIn всё равно блокирует пользователей, у которых они установленны [2].

LinkedIn хранит в localStorage под ключом C_C_M все расширения, на которые сайт будет проверять пользователя. Рассмотрим детальнее, какие расширения проверяет этот сайт:

А вот и сам список некоторых расширений, на которые проверяет LinkedIn:

  • SalesLoft Connect
  • Discoverly
  • Ebsta for Bullhorn
  • Ebsta For Salesforce
  • One2Lead – LinkedIn Automation Tool
  • Social Lookup
  • Entelo

Если говорить об актуальности обнаружения расширений, то им занимаются около 25% из 10000 сайтов рейтинга Alexa. 

Также это подтверждается и недавним исследованием Александра Сьестена, который выявил, что в 2019 году около 2500 сайтов из этого рейтинга проверяли расширения при помощи доступности исходных данных. Это несомненно является серьезным увеличением в количестве, ведь в 2017 году так делали только 66 сайтов из списка.

25% из 10000 сайтов рейтинга Alexa, включая LinkedIn и YouTube, используют методы для обнаружения браузерных расширений.

Личные данные: как обнаружение расширений может на них повлиять?

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

Но нам с вами безусловно интересна одна сторона этого вопроса — как всё это влияет на браузерные отпечатки.

Браузерные отпечатки и обнаружение расширений

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

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

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

Но попробуйте представить, какой индекс анонимности у вас был бы в том случае, если бы расширением пользовались миллионы людей, а само расширение можно было бы обнаружить при помощи доступности исходных данных и DOM (объектной модели документа)?

Также давайте рассмотрим недавнее исследование. Так, мониторинг расширений показал, что в 2019 году у 25,5 тысяч расширений (13% от общего числа) был только один пользователь. А в целом около 50% расширений для Chrome имеют меньше 16 загрузок в официальном магазине приложений.

В 2015 году разработчики пришли к общему решению, что все браузерные расширения должны использовать одну структуру. Но несмотря на это, компании, выпускающие браузеры, используют различные площадки для распространения расширений: так, Chrome использует для этого Google Chrome Store, Firefox использует Firefox Browser Add-Ons, а Opera — Opera Add-Ons.

У 50% расширений для Chrome меньше 16 пользователей.

Представим, что есть некий злоумышленник, которому нужно выяснить, какой у вас браузер. Проверив объектную модель документа (DOM), злоумышленник понял, что вы используете расширение Grammarly:

document.body.hasAttribute("data-gr-ext-installed")

Расширение Grammarly доступно для скачивания на трех площадках: магазины расширений Chrome, Edge и Firefox. Если учесть эту информацию — дело остается за малым. Злоумышленник, о котором мы говорили выше, просто подберет ID расширения Grammarly на каждом из этих магазинов, сравнит его с тем, какое установлено у вас, и увидит, каким браузером вы пользуетесь.

Пример ссылки на доступные исходные данные расширения Grammarly:

X-extension://EXTENSION_ID/src/images/eea2fd77fd2e973f20b26f45426b4c2c/[email protected]

Вот так будут обнаружены браузеры Chrome/Chromium/Vivaldi:

// Extension ID: kbfnbcaeplbcioakkpcpgfkobkghlhen <img src=”chrome-extension://kbfnbcaeplbcioakkpcpgfkobkghlhen/src/images/eea2fd77fd2e973f20b26f45426b4c2c/[email protected]” />

Вот так Microsoft Edge:

//Extension ID: cnlefmmeadmemmdciolhbnfeacpdfbkd <img src="chrome-extension://cnlefmmeadmemmdciolhbnfeacpdfbkd/src/images/eea2fd77fd2e973f20b26f45426b4c2c/[email protected]" />

А вот так Mozilla Firefox (так как в Firefox встроена функция случайного ID, сам ID расширения может быть случайным. Но и это не помеха для злоумышленника. Браузер Firefox всё равно можно вычислить, попросту добавив в код блок ELSE после того, как ID расширения уже получен):

// Extension ID: 910b3cf7-g3f2-3aa1-2211-21c313e0000 <img src="moz-extension://910b3cf7-g3f2-3aa1-2211-21c313e0000/src/images/eea2fd77fd2e973f20b26f45426b4c2c/[email protected]" />

Обнаружение расширений: дополнительные риски для персональных данных

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

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

Так, группа исследователей из Иллинойсского университета провела в феврале 2020 года научный анализ, который привел их к следующему выводу: «Расширения могут явным или косвенным образом раскрыть личные данные пользователя — например, его национальность. Более того, расширения могут раскрыть и частную информацию, такую как отношение к религии».

По браузерной истории запросов и посещений расширения могут выдать следующую информацию:

Installed extensions might reveal user’s interests

Возьмем для примера магазин расширений для Chrome. Так, 29,5 тысяч расширений в этом магазине могут привести к утечке реальных браузерных отпечатков. Анализ этих расширений выявил, что 18,286 из них могут привести к утечке демографического портрета пользователя. Помимо этого, 116 расширений раскрывали отношение к религии, 147 — раскрывали информацию о здоровье пользователя, а еще 387 — о его политических взглядах.

Информация из Иллинойсского университета:

«В разделе “Здоровье” можно найти следующие расширения: ID knijgomkfcdigmbogcnffcbfgmapmkca — разработчики заявляют, что оно может помочь людям с дислексией. А расширение с ID edmpbiamnlgdichailkadlagmbklhbpk предлагает пользователям сравнить их фотографиями с изображениями людей из интернета, которые больны раком кожи. 

В категории “Религия” есть расширения с ID ndmbeogingkjkmmkoomnigifmpajmbkc и apkkllhahggfkhfdlmpopcncnaiclfdm, которые раскрывают отношение к религии».

Прим.: чтобы найти эти расширения, просто скопируйте ID в поисковик, но устанавливать их не следует.

extension categories

Расширения могут быть обнаружены сайтами в течение 10 секунд. 

Отзывы о расширениях: какие риски в них скрыты

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

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

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

Если пользователь оставил отзыв на расширение, есть вероятность утечки его персональных данных и фотографии

Исследование снова подтверждает этот факт:

«Так, например, если в вашем браузере есть как минимум четыре любых расширения, которые оставляют информацию системе, и злоумышленник получит доступ к этим данным, то он с вероятностью в 94,47% сможет также отследить ваши реальные данные и фотографию в профиле. 

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

Ложное чувство безопасности

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

Так, например, кто-то использует VPN. Этот человек чувствует себя в безопасности, ведь он считает, что он успешно скрывает свое местоположение. Но одновременно с VPN у этого пользователя установлены расширения, которые влекут за собой утечку реальных браузерных отпечатков. Поэтому использование VPN в этом случае становится бесполезным.

Многие, конечно, используют VPN, чтобы получить доступ к контенту, который не доступен в их стране. 

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

Разберем несколько примеров расширений. Так, у расширения «FlashSaleTricks» индекс Шеннона-Винера (ИШВ) составляет 2.62. Описание и язык этого расширения — английский, но большинство его отзывов написаны пользователями из Индии. Также, проверив сайт этого расширения, мы пришли к выводу, что его целевая аудитория — этот как раз пользователи из этой страны.

Не менее интересная ситуация и с расширением «Download Master», который весьма популярен у пользователей из России (ИШВ 3.47). Несмотря на то, что само расширение на английском, в процессе установки расширение дополнительно устанавливает компоненты на русском языке.

Аналогичное положение и с расширением «J2TEAM Security» — его описание написано на английском, а пользуются им, в основном, люди из Вьетнама (ИШВ 3.21).

Следующий пример — расширение «wanteeed» (ИШВ 3.29). Расширение связано с шоппингом, популярно во Франции у женской половины пользователей, в отзывах почти в три с половиной раза больше женских имен, чем мужских.

Обнаружение расширений: как уменьшить риски утечки данных

И разработчики браузеров, и исследователи в области безопасности заинтересованы в том, чтобы существовали механизмы по блокировке утечки данных через расширения. Решения для этих целей уже были предложены и введены некоторыми компаниями. Так, например, в 2013 году Google представил вторую версию файла manifest.json, устанавливающего лимит на файлы расширения, которые могут быть просмотрены сайтами.

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

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

В 2018 году в Google предложили дать пользователям возможность самим регулировать доступы для расширения. Так, пользователи смогут контролировать браузерное расширение: на каких сайтах оно будет запускаться, запускать расширение только по ручному нажатию на панели управления браузером и так далее.

Как это объяснили в Google: «Начиная с 70-ой версии Chrome, пользователи смогут ограничивать работу расширения на определенных сайтах, также появится возможность настроить расширение так, чтобы оно запрашивало доступ к странице, где находится пользователь».

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

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

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

Но как позже выяснили исследователи, это решение тоже далеко от идеала: проанализировав поведение расширений, исследователям удалось идентифицировать от 83 до 88% расширений, даже если использовался CloakX.

Исходный код расширения после того, как был запущен Cloak Extension.

Для браузеров на Chromium основе в данный момент нет 100% надежного решения, которое полностью бы исключило возможности обнаружения расширений. Конечно, в этом смысле все участники должны брать на себя ответственность за сохранность данных: разработчики браузеров и расширений, а также сами пользователи.

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

А вместо встроенных скриптов разработчики также могут использовать контент самого браузера или страницы.

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

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

Хотим подчеркнуть, что в Multilogin расширения устанавливаются отдельно в каждом профиле как в Mimic, так и в Stealthfox, данные между профилями не передаются друг другу.

А наш браузер Stealthfox (на основе Firefox) не испытывает проблему утечки браузерных отпечатков из-за случайного ID расширений, как это происходит в обычном браузере Firefox.

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

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

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

[1] LinkedIn, Prohibited Software and Extensions, https://www.linkedin.com/help/linkedin/answer/56347/prohibited-software-and-extensions

[2] Prohitt, A Look at How LinkedIn Exfiltrates Extension Data from Their Users, https://prophitt.me/a-look-at-how-linkedin-exfiltrates-extension-data-from-their-users