Кейс №3

Важность актуализации токена доступа

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

все наши кейсы как работает защита?

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

Однако, при проверке нашими аналитиками было замечено, что блокировки передаются только в систему Яндекс.Директ и количество посещений сайта с одного IP — адреса было достаточно большое (как правило, достаточно одного перехода на сайт, чтобы наша система заблокировала переход и бот больше не должен увидеть рекламу). Пример письма с отчетом, который приходит клиенту на почту каждый день:


После анализа выяснилось, что токен Яндекс.Метрика у данного клиента истек и данные в сегмент Яндекс.Метрика не поступают. Блокировки ботов осуществляются только по IP — адресам в Яндекс.Директ, где в «черный» список можно добавить ограниченное количество адресов (не более 25 на каждую рекламную кампанию). То есть наш алгоритм идентифицировал бота и добавил его в черный список IP- адресов в Яндекс.Директ (скрин ниже, выдержка из нашей базы данных):

Обратите внимание на дату — блокировки идут даже в тот момент, когда пишется эта статья. Статус “Bloсked” говорит нам о том, что переход бота был успешно заблокирован. Это значит, что все эти IP — адреса были добавлены в черный список в кампаниях Яндекс.Директ.

Однако, как мы знаем, список  ограничен 25 адресами только (в случае Google.Ads этот лимит составляет 500 адресов, включая подсети). В этом случае наш алгоритм автоматически обновляет список при переполнении — старые адреса удаляются, новые обнаруженные адреса ботов добавляются. Также периодически (раз в 10 минут) мы передаем пакет с идентификаторами ботов в Яндекс.Метрику для блокировки в сегменте с параметром isBadSession.

Так как для доступа к метрике упомянутого клиента необходим корректный токен доступа, то в данном случае все наши попытки передать пакеты не увенчались успехом. (скрин ниже, статус “unblocked” — не заблокирован).

Если совместить запросы, то можно увидеть, как сразу после блокировки была попытка заблокировать в Метрике (скриншот ниже, выделенные красным строки):

По последним сессиям видим, что было много попыток блокировки в Яндекс.Метрика, так как там блокируются не только сессии по рекламе, а все возможные бот-сессии. Но так как далеко не у каждой сессии вычисляется YandexClientId, то блокировать удается реже. Этим объясняется ситуация с “ошибкой привязки”, которую клиенты могут иногда увидеть в своем личном кабинете.

Однако на данном скриншоте важно обратить внимание на выделенные красным цветом одинаковые сессии, которые мы заблокировали в Яндекс.Директ, передали в Яндекс.Метрика и не смогли добавить в сегмент из-за некорректного токена Метрики. Но фактически, все сессии со статусом “unblocked” могли бы быть добавлены в сегмент Яндекс.Метрика.

Учитывая, что блокировка по IP — адресу в Яндекс.Директ это более быстрый способ блокировки из-за особенностей Яндекс.Метрика (обработка поступающих пакетов на стороне Яндекса может занимать 5-6 часов), бот просто заходил на сайт, где мы его блокировали по IP в рекламных компаниях, а затем через некоторое время вновь пропал из черного списка из-за его переполнения, но так как в Сегмент Яндекс.Метрика он не добавился ввиду некорректного токена доступа, возникает ситуация с множественными блокировками одного и того же адреса, которые мы видели на скриншоте в самом начале статьи.

Как проверить, что мы пытались блокировать ботов?

Это последние визиты на сайте клиента, все сделанные по платной рекламе. Обратите внимание на выделенные красным поля — в большинстве случаев имеют одинаковый отпечаток браузера (fingerprint), но разные IP — адреса. При минимальном (от 2 до 20 секунд) разрывом между кликами. 

Что это значит? То, что бот, имея некоторый пул  адресов, менял их и кликал далее по рекламе, однако отпечаток браузера выявил, что фактически это был один «посетитель». 

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

Подробнее о кластерном анализе и работе кластерного анализа можно ознакомиться по этой ссылке на нашем сайте — https://clickfraud.ru/knowledge/general/kak-nastroit-povedencheskie-faktory-i-klasternyj-analiz/

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

На скриншоте ниже можно обратить внимание на первую колонку “Blocked sessions”, так как значения там показывают фактические удачные попытки заблокировать визиты. Во второй колонке все наши попытки, которые однако не увенчались успехом по различным причинам (внутренние причины Яндекса, о которых мы не можем знать).

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

Часть 2.

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

Итак, ранее мы показали, что блокируем около 3% трафика (это именно бот-трафик, что важно). Однако, как отмечали, блокировки не попадали в сегмент и боты, после переполнения списка 25 IP — адресов, могли снова в него попасть. Сейчас токен корректный и боты попали в сегмент (скриншот ниже).

Несколько переходов со статусом unblocked (не заблокирован) относится к внутренним причинам Яндекса, не связанных с нами. Обычно в личном кабинете Яндекс.Метрики отображаются как “ошибка привязки”. За последние 10 дней было заблокировано 322 бот-сессии. Всего переходов на сайт за это время было чуть менее 700. Это означает, что почти половина трафика была отсеяна нашей системой и более одного раза с одногоIP — адреса (за исключением «чистых» IP) не смогли зайти на сайт и скликать рекламу, чего мы и добивались при добавлении токена Яндекс.Метрики — однажды попав в сегмент, бот останется там и показ рекламы будет ограничен, даже если из черного списка IP — адресов Яндекс.Директ он пропадет из за переполнения.

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