Обзор Digital Fraud Protection: данные о клиентском окружении, принцип работы, сценарии использования
Digital Fraud Protection (DFP) — это решение для создания устойчивых отпечатков клиентского окружения и анализа дополнительных признаков запроса.
Проще говоря, DFP показывает, какие запросы пришли из одного и того же уникального сочетания браузера и устройства. А ещё даёт дополнительный контекст: человек отправил запрос или бот, использовался ли VPN, относится ли IP к хостинговой сети и есть ли другие признаки, важные для антифрод-логики.
Эти данные вы используете в своих бизнес-сценариях: например, чтобы узнать пользователя без cookie, выявить мультиаккаунтинг или заметить кражу cookie/токена аутентификации.
Протестировать DFP
Протестировать продукт можно в нашем playground: открывайте его с разных браузеров/устройств, включайте и выключайте VPN, переходите в инкогнито — вы увидите результатом проверки своего окружения.
Что вы будете знать о каждом запросе
|
Полный список полей, которые присылает DFP, описан в статье Что значат поля из ответа DFP. Советы по интерпретации этих данных и использованию в вашей бизнес-логике читайте в Как интерпретировать ответ DFP. |
DFP передаёт вам три важных типа данных:
-
стабильный идентификатор клиентского окружения, откуда сделан запрос —
user_id; -
оценку вероятности, что запрос отправила автоматизация —
bot_score; -
дополнительные данные о браузере, устройстве, сети и других признаках запроса.
User ID
user_id — стабильный идентификатор клиентского окружения.
Говоря проще, это ID, который описывает уникальную связку браузер + конкретное устройство. Он остаётся стабильным, даже когда пользователь меняет разные настройки. Например, если он:
-
включит VPN;
-
откроет инкогнито;
-
обновит ОС;
-
поменяет время на компьютере;
-
обновит версию браузера.
ID будет тем же самым, ведь главный критерий выполняется: устройство и браузер остались те же.
А вот если откроет другой браузер или сделает запрос с нового устройства, вы увидите новый ID. Потому что для каждой пары браузер + устройство ID уникален.
Bot score
bot_score — это число от 0 до 1, которое показывает, насколько запрос содержит признаки автоматизации, подмены параметров браузера и иных аномалий, характерных для активности ботов.
Ориентироваться можно так:
-
< 0.4— запрос отправлен человеком; -
от
0.4до0.5— есть подозрительные признаки, возможно, действовал бот; -
>= 0.5— запрос наверняка отправил бот.
Дополнительные данные
Помимо user_id и bot_score, DFP передаёт дополнительные данные о клиентском окружении и запросе. Они помогают понять контекст и точнее настроить бизнес-логику.
DFP сообщает:
-
engine— какой браузерный движок используется: например, Blink, WebKit, Gecko или другой; -
hosting— относится ли IP-адрес к хостинговой сети; -
incognito— открыт ли браузер в режиме инкогнито или приватного просмотра; -
mobile— пришёл ли запрос с мобильного устройства; -
os— какая операционная система используется: например, Windows, macOS, Linux, iOS или Android; -
vpn— есть ли признаки использования VPN.
Какие задачи поможет решить
DFP пригодится в задачах, где важно понимать клиентское окружение и признаки запроса. Например, с помощью его данных можно:
-
идентифицировать пользователей без cookie;
-
обнаруживать мультиаккаунтинг;
-
выявлять кражу cookie или токена;
-
замечать подозрительные регистрации;
-
защищать промоакции и приветственные бонусы от злоупотреблений;
-
отличать обычный клиентский трафик от автоматизированного;
-
учитывать VPN, хостинговые сети, инкогнито и другие признаки в бизнес-логике;
-
находить повторные действия с одного клиентского окружения: например, повторное прохождение опроса.
Для популярных сценариев мы сделали готовые инструкции, как использовать данные DFP для закрытия бизнес-задач:
Как работает
-
Вы подключаете JavaScript-скрипт DFP на нужную страницу сайта.
-
Пользователь открывает страницу и выполняет действие, для которого нужна проверка: например, входит в аккаунт, отправляет форму, регистрируется, подтверждает операцию.
-
Скрипт собирает параметры клиентского окружения: браузер, устройство, экран, язык, плагины, часовой пояс, события ввода и другие данные.
Рекомендуем настроить интеграцию так, чтобы сбор данных о клиентском окружении начинался как можно раньше (например, при открытии страницы), а их отправка на API DFP — в момент целевого действия (например, входа в аккаунт, отправки формы или подтверждения операции). Так вы будете получать ответ DFP быстрее и его точность будет выше.
Как это настроить, читайте в инструкции по интеграции.
-
Скрипт отправляет собранные данные на API DFP.
-
Внутри инфраструктуры Servicepipe анализируются особенности сетевого взаимодействия при выполнении браузером запроса: признаки автоматизации, особенности TLS-хендшейка, данные L3/L4-сетевого уровня и другие.
-
DFP анализирует все данные и формирует результат:
user_id,bot_score, а также признаки VPN, хостинговой сети, инкогнито и другие. -
DFP шифрует результат и возвращает его в браузер.
-
Браузер передаёт зашифрованный ответ на ваш бэкенд.
-
Ваш бэкенд расшифровывает ответ и применяет вашу бизнес-логику.
Подробнее весь процесс описан в статье Схема работы.
Какие данные собирает
Чтобы проанализировать клиентское окружение и особенности сетевого взаимодействия, DFP собирает несколько групп данных:
-
Canvas fingerprint — данные о том, как браузер отрисовывает графику в HTML-элементе canvas;
-
WebGL fingerprint — особенности работы браузера с графикой через WebGL;
-
Audio context fingerprint — особенности обработки аудио в браузере;
-
Данные WebGPU — сигналы о графическом окружении и работе браузера с GPU;
-
Системные шрифты — список шрифтов, доступных в окружении пользователя;
-
Размер экрана и окна — параметры экрана, окна браузера и отображения страницы;
-
Список плагинов и расширений — данные о браузерном окружении пользователя;
-
Язык, часовой пояс и время на устройстве — региональные и системные настройки;
-
Touch/Mouse и прочие события — признаки взаимодействия пользователя с устройством;
-
Прочие Browser API и параметры окружения — дополнительные браузерные сигналы, которые помогают описать клиентское окружение;
-
Данные автоматизации — признаки, которые могут указывать на отправку запроса ботом;
-
Информация из TLS-хендшейка — параметры установки защищённого соединения;
-
Информация L3/L4 сетевого уровня — сетевые признаки запроса;
-
Особенности передачи браузером информации на сервер — технические признаки того, как браузер выполняет запрос.
Подробнее о каждом типе данных и механизмах их сбора читайте в статье Как Digital Fraud Protection собирает данные.
Как подключить
Подключить DFP легко:
-
Отправьте заявку: мы обсудим ваши потребности и подскажем, как лучше встроить DFP в ваш сценарий. Если для ваших задач нужны кастомные настройки, согласуем их отдельно и подготовим конфигурацию под ваш продукт.
-
Передадим вам:
-
CUSTOMER-TOKEN— токен для загрузки JavaScript-библиотеки и вызова API; -
секретный ключ — им ваш бэкенд будет расшифровывать
payload.
-
-
Вы подключите JavaScript-скрипт DFP на нужные страницы сайта, настроите отправку результата на бэкенд, расшифровку
payloadи бизнес-логику обработки. Это можно сделать по инструкции Как интегрировать Digital Fraud Protection.