SOT

Security Orchestration Tools

SIEM
Security Information and Event Management

Мониторинг событий ИБ

EDR
Endpoint Detection and Response

Защита конечных точек

SOAR
Security Orchestration, Automation and Response

Автоматизация реагирования на инциденты ИБ

NG SOAR
Next Generation SOAR

Автоматизация реагирования на инциденты ИБ со встроенной базовой корреляцией, сбором сырых событий непосредственно с СЗИ, динамическими плейбуками, выстраиванием цепочки атаки и объектно-ориентированным подходом

AM
Asset Management

Инвентаризация и управление ИТ-активами

VM
Vulnerability Management

Устранение уязвимостей с автопатчингом

VS
Vulnerability Scanner

Поиск технических уязвимостей на активах

SPC
Security Profile Compliance

Управление конфигурациями безопасности активов

ГосСОПКА
Государственная Система Обнаружения Предупреждения и Ликвидации Последствий Компьютерных Атак

Двустороннее взаимодействие с НКЦКИ

FinCERT
Financial Computer Emergency Response Team

Двустороннее взаимодействие с ЦБ

Напишите нам на sales@securityvision.ru или закажите демонстрацию

Fingerprint браузера - что это

Fingerprint браузера - что это

Руслан Рахметов, Security Vision


Для большинства пользователей интернет-браузер - это основное «окно» в мир Интернета. Безопасность и надежность работы браузеров является основным приоритетом для их разработчиков - непрерывно выходят новые версии и добавляются различные функции, включая меры защиты приватности пользователей. С другой стороны, крупные компании и интернет-гиганты хотят знать, как можно больше о пользователях в маркетинговых целях, а злоумышленники на фишинговых сайтах стараются понять, кто стал их жертвой – и для этих целей применяются методы анализа браузеров. О таком анализе - так называемом browser fingerprinting - расскажем в данной статье.


Цифровой отпечаток браузера (англ. fingerprint, отпечаток пальца) - это набор данных о браузере, который позволяет с достаточно большой вероятностью выделить этот браузер среди миллионов других, а Fingerprinting («фингерпринтинг») - это процесс сбора таких данных. В идеальном случае отпечаток браузера должен однозначно его идентифицировать: эффективность фингерпринтинга браузера зависит от технической возможности создания уникального идентификатора браузера с высокой энтропией, что позволит отличить этот браузер (а значит, и человека, и его устройство - смартфон или ноутбук) от множества других интернет-пользователей. Такое распознавание используется в самых разных целях:


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


   -   Идентификация посетителей сайта: владельцам сайта важно «узнать» своих старых пользователей и проанализировать их поведение (историю посещенных разделов, просмотренные карточки товаров, совершенные ранее покупки).


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


   -   Кибербезопасность: выявление ботов, которые пытаются взломать аккаунты, и предотвращение использования похищенных учетных данных реализуется за счет анализа отпечатков браузеров (боты и хакеры не смогут подделать fingerprint браузера легитимного пользователя).


   -   Антифрод: выявление пользователей, которые могут совершать мошеннические или несанкционированные действия на сайте (например, веб-скрейпинг, поиск уязвимостей вне программы Bug Bounty, повторное использование промокодов для новых пользователей, введение украденных данных банковских карт, накрутка бонусных баллов и т.д.).


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


Создание отпечатков браузеров применяется повсеместно: так, проведенное в 2021 году исследование показало, что из списка Alexa Top-1000 техники Fingerprinting используют 30.6% сайтов. При этом исследование, проведенное в 2016 году, показало, что из исследованных 118934 отпечатков браузера уникальными оказались 89.4%. Несмотря на то, что для создания fingerprint браузеров есть определенные ограничения и рекомендации, заинтересованные компании продолжают внедрять различные методы слежения за пользователями с помощью браузеров.


Каким же образом реализуется сбор цифровых отпечатков браузеров? Казалось бы, две одинаковых модели устройства (ноутбука, например) с одинаковой ОС и одной версией браузера не должны отличаться друг от друга с точки зрения посещаемого интернет-сайта, однако обнаружить разницу помогают самые мелкие детали - установленные в системе шрифты, расширения браузера, разрешение экрана, даже различия в версиях драйверов для видеоадаптеров и наличие подключенных внешних устройств. Методы формирования отпечатков браузеров могут быть классифицированы следующим образом:


1. Stateful tracking (отслеживание с контролем состояния): использование cookie-файлов в хранилище браузера. Еще в середине 2010-х годов была актуальная проблема «неудаляемых» cookie (Evercookie / persistent cookie / super cookie / zombie cookie). Однако, с уходом устаревших технологий, таких как Adobe Flash и Microsoft Silverlight, а также с улучшениями в работе браузеров в приватном режиме (режим «Инкогнито»), уже к 2020 году данная проблема практически сошла на нет.


2. Stateless tracking (отслеживание без контроля состояния): идентификаторы не хранятся в браузере, а для анализа используются характеристики самого браузера. Stateless-отслеживание можно разделить на пассивное и активное:


2.1. Пассивное отслеживание: сбор информации, которая передаётся самим браузером при подключении к сайту, включая:

   -   Передаваемые веб-клиентом стандартные HTTP-заголовки: User-Agent (с указанием типа ОС, браузера и его версии), Accept (поддерживаемые MIME-типы), Accept-Encoding (поддерживаемые алгоритмы сжатия), Accept-Language (предпочитаемая локаль браузера);

   -   Передаваемые веб-клиентом дополнительные HTTP-заголовки (например, HTTP-заголовки, устанавливаемые некоторыми браузерами или расширениями для браузеров);

   -   Служебные HTTP-заголовки, которые могут добавлять различные интернет-провайдеры на своих системах DPI или которые может добавлять различное промежуточное сетевое оборудование;

   -   Внешний IP-адрес клиента.


2.2. Активное отслеживание: сайт взаимодействует с браузером для получения подробной информации о нём, при этом некоторые подобные запросы можно выявить в самом браузере. Данный тип отслеживания может использовать такие данные, как:

   -   Список установленных плагинов (расширений) браузера: веб-сайты могут запрашивать данные у браузера об установленных расширениях - уникальный набор установленных расширений позволит отличить один браузер от другого.

   -   CSS: для получения отпечатка браузера (даже с отключенной в нём поддержкой JavaScript) можно применять конструкции языка CSS и за счет различия в отображении HTML-элементов в браузерах достаточно точно отличать их. Кроме того, историю посещения веб-страниц до недавнего времени сайты могли получать через CSS за счет считывания цветовых значений ссылок.

   -   WebGL: использование веб-сайтами технологии WebGL (JavaScript API для отображения графических элементов в браузере) позволяет получить данные о производителе и графическом устройстве (Vendor и Renderer) компьютера. Техника DrawnApart позволяет создать отпечаток браузера за счет отличия во времени, которое требуется для отрисовки графики на различных устройствах.

   -   Canvas: использование Canvas API для отрисовки графических элементов на веб-страницах также позволяет создать уникальный цифровой отпечаток браузера за счет того, что отрисовка специально созданного Canvas-элемента зависит от специфических для устройства настроек (установленных шрифтов, поддержки отображения спецсимволов в ОС, характеристик графического адаптера).

   -   Различные Javascript API можно использовать для функционального и алгоритмического создания отпечатков браузера: функциональное позволяет интернет-сайтам запросить разрешения на доступ браузера к различным функциям и периферийным устройствам компьютера (например, доступ на отображение уведомлений, доступ к камере и микрофону, доступ к геолокации, к подключенным USB-устройствам), а алгоритмическое позволяет уникально выделить браузер за счет измерения времени выполнения различных API-запросов к браузеру, скорости отрисовки графики, получения списка доступных аудио-устройств и доступа к различным датчикам (акселерометр, гироскоп, датчик приближения и т.д.). Кроме того, Javascript позволяет запросить у браузера текущее время и временную зону устройства, разрешение экрана, поддерживаемые режимы перевода и озвучивания веб-страниц, установленные шрифты, данные геолокации, данные о поддержке сенсорного экрана и т.д.


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


Для проверки защищенности браузера к созданию отпечатков можно воспользоваться следующими онлайн-тестами:

https://coveryourtracks.eff.org/

https://amiunique.org/

https://browserleaks.com/

https://fingerprintjs.github.io/fingerprintjs/

https://demo.fingerprint.com/playground

 

ИБ для начинающих Нарушители ИБ Практика ИБ

Похожие статьи

Концепция и развитие Red Team
Концепция и развитие Red Team
Реверс-инжиниринг и безопасность приложений
Реверс-инжиниринг и безопасность приложений
CyBOK. Глава 3. Законы и регуляторные нормы. Часть 7
CyBOK. Глава 3. Законы и регуляторные нормы. Часть 7
Особенности стратегического и операционного мышления
Особенности стратегического и операционного мышления
Как работает сетевое сканирование
Как работает сетевое сканирование
Обучение и развитие: почему Linux — лучший выбор для детского ПК
Обучение и развитие: почему Linux — лучший выбор для детского ПК
Дружелюбная безопасность для недружелюбного мира
Дружелюбная безопасность для недружелюбного мира
OWASP ZAP: сканирование веб-приложений, аудит безопасности, поиск SQL injection и XSS уязвимостей
OWASP ZAP: сканирование веб-приложений, аудит безопасности, поиск SQL injection и XSS уязвимостей
eBPF глазами хакера. Часть 3
eBPF глазами хакера. Часть 3
Что такое интернет-мошенничество (скам), чего опасаться и как можно защититься
Что такое интернет-мошенничество (скам), чего опасаться и как можно защититься
Между печеньем и морковкой: удержание команды в условиях неопределенности
Между печеньем и морковкой: удержание команды в условиях неопределенности

Похожие статьи

Концепция и развитие Red Team
Концепция и развитие Red Team
Реверс-инжиниринг и безопасность приложений
Реверс-инжиниринг и безопасность приложений
CyBOK. Глава 3. Законы и регуляторные нормы. Часть 7
CyBOK. Глава 3. Законы и регуляторные нормы. Часть 7
Особенности стратегического и операционного мышления
Особенности стратегического и операционного мышления
Как работает сетевое сканирование
Как работает сетевое сканирование
Обучение и развитие: почему Linux — лучший выбор для детского ПК
Обучение и развитие: почему Linux — лучший выбор для детского ПК
Дружелюбная безопасность для недружелюбного мира
Дружелюбная безопасность для недружелюбного мира
OWASP ZAP: сканирование веб-приложений, аудит безопасности, поиск SQL injection и XSS уязвимостей
OWASP ZAP: сканирование веб-приложений, аудит безопасности, поиск SQL injection и XSS уязвимостей
eBPF глазами хакера. Часть 3
eBPF глазами хакера. Часть 3
Что такое интернет-мошенничество (скам), чего опасаться и как можно защититься
Что такое интернет-мошенничество (скам), чего опасаться и как можно защититься
Между печеньем и морковкой: удержание команды в условиях неопределенности
Между печеньем и морковкой: удержание команды в условиях неопределенности