habrahabr

Фингерпринтинг стал массовым явлением

  • среда, 22 октября 2025 г. в 00:00:09
https://habr.com/ru/companies/globalsign/articles/958046/

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

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


Первые случаи реального фингерпринтинга в рекламных сетях были замечены в 2019 году. Тогда пользователи Stack Overflow обратили внимание, что рекламный баннер Google AdSense инициирует аудиоконтент через скрипт sca.17.4.95.js.

Оказалось, что баннер пытается использовать Audio API в качестве одного из десятков фрагментов данных, которые собираются о браузере. Хотя браузер блокирует передачу данных конкретно по Audio API, но он не блокирует большую часть остальных данных, так что владельцы баннера успешно выполняют фингерпринтинг.

Например, этот фрагмент определяет разрешение дисплея и параметры accessibility в системе:

function "==typeof matchMedia&&a239.a341.a77 ("
all and(min--moz - device - pixel - ratio: 0) and(min - resolution: .001 dpcm)
")},function(){return"
function "==typeof matchMedia&&a239.a341.a77 ("
all and(-moz - images - in -menus: 0) and(min - resolution: .001 dpcm)
")},function(){return"
function "==typeof matchMedia&&a239.a341.a77 ("
screen and(-ms - high - contrast: active) and(-webkit - min - device - pixel - ratio: 0), (-ms - high - contrast: none) and(-webkit - min - device - pixel - ratio: 0)
")},function(){return"
function "==typeof matchMedia&&a239.a341.a77 ("
screen and(-webkit - min - device - pixel - ratio: 0)
")},function(){return"

Проверка наличия конкретных криптографических API:

return "function" == typeof MSCredentials && a239.a341.a66(MSCredentials)
}, function() {
return "function" == typeof MSFIDOSignature && a239.a341.a66(MSFIDOSignature)
}, function() {
return "function" == typeof MSManipulationEvent && a239.a341.a66(MSManipulationEvent)
}, function() {

Получение списка установленных шрифтов:

 return "object" == typeof document && a239.a341.a68("fonts", document.fonts)

Определение возможностей Audio API:

 return "undefined" != typeof window && "undefined" !== window.StereoPatternNode && a239.a341.a66(window.StereoPannerNode)

Определение специфических API в мобильных браузерах:

 return "function" == typeof AppBannerPromptResult && a239.a341.a66(AppBannerPromptResult)

Проверка поддержки DRM для конкретной платформы.

}, function() {
return !!a239.a341.a72() && a239.a341.a66(a239.a341.a72().webkitGenerateKeyRequest) && a239.a341.a66(a239.a341.a72().webkitCancelKeyRequest) && a239.a341.a66(a239.a341.a72().webkitSetMediaKeys) && a239.a341.a66(a239.a341.a72().webkitAddKey)
}, function() {

И десятки других параметров, которые в совокупности составляют уникальный «портрет» браузера.

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

Например, таблица вверху соответствует реальным результатам сканирования браузера с выявлением 17,67 бит идентифицирующей информации. Это уникальный отпечаток среди всех 208 788 пользователей, которые проходили тестирование на сайте за 45 дней.

В последние годы фингерпринтинг распространился ещё более широко. Появились настоящие SaaS-сервисы для фингерпринтинга: с API, SDK и техподдержкой:

Пример фингерпринтинга:

Современный фингерпринтинг

В 2025 году опубликовано научное исследование, которое впервые оценивает распространённость фингерпринтинга в интернете. Исследователи поставили задачу определить, насколько широко распространена эта практика.

Учёные разработали фреймворк FPTrace для обнаружения фингерпринтинга, в том числе когда изменения в профиле браузера влияют на таргетинг рекламы.

Методология исследования
Методология исследования

Исследовательские боты запустили на нескольких десятках из списка крупнейших сайтов в интернете Alexa Top 10 000.

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

Схема эксперимента с посещением сайтов при использовании разных профилей браузера
Схема эксперимента с посещением сайтов при использовании разных профилей браузера

Для имитации действий пользователей FPTrace использует инструмент OpenWPM.

Схема эксперимента с изменением отпечатка браузера и сравнением куков
Схема эксперимента с изменением отпечатка браузера и сравнением куков

Результаты эксперимента показали, что отпечаток браузера существенно влияет на трекинг рекламы, а также на HTTP-трафик между сервером и клиентом.

«Фингерпринтинг всегда вызывало опасения в сообществе защиты приватности, но до сих пор у нас не было убедительных доказательств того, что он действительно используется для отслеживания пользователей, — сказал доктор Нитеш Саксена (Nitesh Saxena), исследователь в области кибербезопасности, профессор компьютерных наук и инженерии, а также заместитель директора Института глобальных киберисследований при Техасском университете A&M. — Наша работа помогает сократить этот разрыв».


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

Чтобы противостоять угрозе, в Firefox есть защита от фингерпринтинга. Эти настройки выводятся по ключу privacy.resistFingerprinting: