Прокрутка страницы, интервалы, перемещение курсора — одни из ключевых метрик поведения пользователя, по которым можно понять, кто зашел на сайт — бот или человек. Рассказываем в нашем материале, как движения мыши помогают нам в обнаружении фрода и блокировке ботов.
Зачем это нужно
Боты — это автоматизированные программы, созданные для выполнения рутинных задач в автоматическом режиме. Это могут быть как краулеры, которые по заданию поисковых систем обходят сайты для индексации, так и вредоносные агенты, призванные для выполнения мошеннических действий.
У последних владельцы прописывают максимально подробные параметры, чтобы снизить риск обнаружения:
- параметры входа,
- перемещение по странице,
- прокрутка,
- цифровой след,
- cookie,
- взаимодействие с элементами и др.
Поскольку методы их обнаружения совершенствуются, злоумышленники ищут новые способы оптимизации своих скриптов, включая имитацию движения курсора с машинным обучением в режиме реального времени. Поэтому специалисты по фроду рекомендуют изучать способы поиска вредоносных агентов по этой метрике.
Какую роль перемещение курсора играет в обнаружении фрода
Движение мыши ботами и характерные паттерны позволяют автоматизированным инструментам, вроде антифрод-систем, обнаруживать фродовые профили на этапе захода на сайт. В совокупности с другими метриками — цифровой след, IP, глубина просмотра, отказы, ОС и еще +100 параметров — это позволяет своевременно их блокировать.
Этот метод обнаружения требует сравнения уникальных паттернов перемещения курсора, которые роботам трудно точно воспроизвести. Исследования, проводимые командами кибербезопасности, показывают, что такой анализ биометрического показателя эффективен в обнаружении ботов на 96,2%.
В чем может возникнуть сложность
На первый взгляд, такой метод кажется весьма перспективным, тем не менее, в процессе анализа можно столкнуться с некоторыми трудностями:
- Обучение и адаптация в режиме реального времени. Адаптируемость ботов позволяет им изучать поведение реальных пользователей, обучаться на этих данных и точнее имитировать движения мыши. Всему «виной» — эволюция машинного обучения и искусственного интеллекта.
- Разнообразие поведения пользователей. Перемещения курсора у разных людей очень разнообразны по стилю, скорости и траектории. Это усложняет приведение критериев к единым паттернам.
- «Шумы». Пользователи могут делать непредсказуемые или резкие движения мыши, которые могут быть похожи на ботовые.
- Легкость обхода базовых правил (если установлены ручные правила). Простые методы, например подсчет количества событий (точек в траектории), легко обходятся ботами с улучшенным движением курсора.
- Использование headless-браузеров и эмуляторов. Браузеры без графического интерфейса используются злоумышленниками для запуска ботов, однако быстро определяются антифродовыми системами. Чтобы снизить риск обнаружения, мошенники используют их в комплексе с эмуляторами.
- Прокси. Перенаправление трафика через прокси-сервисы позволяет ботам менять IP-адреса для имитации местоположения, что позволяет им выдавать себя за трафик из целевых регионов. Например, если конкуренты «заказали» вашу рекламу, которая показывается в Москве, то боты будут идти из Москвы и Подмосковья.
Специалисты по кибербезопасности считают, что боты могут неоднократно избегать систем обнаружения, адаптируясь на основе преобучения. Это подчеркивает необходимость постоянного обновления и усовершенствования алгоритмов обнаружения, чтобы идти в ногу с эволюцией мошеннических стратегий.
Способы анализа движений: основные признаки ботов
Для реальных пользователей характерны неровные, плавные и непредсказуемые движения курсором мыши. Боты же наоборот выполняют более прямолинейные перемещения. Вот ключевые признаки, по которым стоит сравнивать поведение:
– Прямолинейность траектории
Траектории человеческого и ботового движения мыши совершенно разные:
- Боты стараются переместить курсор, избегая любых ненужных поворотов или изгибов. У траектории слишком ровные кривые (например, кривые Безье).
- Человеку практически невозможно перемещать мышь так же прямолинейно, как это делают роботы, поэтому движения непредсказуемы, с плавными изгибами.
Вот, например, курсор у бота находится в одном положении с, предположительно, выравниванием по осям X и Y. В каком изначальном положении он был при заходе на сайт, в том и остался (автоматизированный визит был определен по поисковому запросу вкупе с другими аналогичными визитами):
– Скорость движения
Согласно многочисленным исследованиям, скорость движения курсора у реальных пользователей находится в пределах логарифмически нормального распределения. То есть чаще всего курсор движется с определённой средней скоростью, а очень медленные или очень быстрые перемещения встречаются гораздо реже. При этом распределение не симметрично.
Однако, если курсором управляет бот, то скорость выходит за рамки нормального распределения.
– Количество событий
Еще одна простая, но эффективная метрика определения ботов, — количество движений мышкой, которые совершает посетитель сайта при перемещении к определенной кнопке или целевому элементу страницы.
Скорее всего, бот будет «скакать» от одной заданной координаты до другой на длинных расстояниях, в то время как человек будет плавно перемещаться и захватывать больше точек на коротких отрезках.
– Радиус траектории
Боты имеют тенденцию к более узким, прямолинейным или геометрически точным траекториям.
– Изменение движения
Человек меняет направление движения мыши более хаотично, бот — ровнее и прогнозируемо.
– Скорость курсора
У человека скорость меняется постоянно, ускорение редко равно нулю. Боты часто демонстрируют постоянную скорость и нулевое ускорение при движении по прямым линиям.
– Ритм и скорость набора текста (в дополнение к мыши)
Человек набирает текст: 1) неравномерно, 2) или с равной скоростью, 3) иногда с опечатками и ошибками (Errare humanum est!), 4) на какое-то время вообще может перестать печатать (с остановкой на подумать, например).
Бот это делает так: 1) равномерный ввод, 2) без остановок, 3) иногда очень быстро, 4) всего пара-тройка вариаций скорости ввода (если сравнивать между другими визитами).
Какие методы обнаружения можно использовать
Отслеживая траекторию и скорость перемещения курсора, владельцы сайтов могут выявлять аномалии поведения посетителей, которые указывают на автоматическую активность. В этом помогут следующие методы:
Отслеживание количества передвижений с помощью JavaScript
JavaScript-код с событием mousemove — это распространенный метод сбора данных о поведении курсора с выставлением рейтинга значений. Он позволяет отслеживать смещения мыши по осям X и Y, и, если в течение, допустим, 100 событий смещение очень маленькое и однородное (мышь двигается слишком ровно), то можно предположить, что это бот.
В антифрод-системах дополнительно учитывают скорость, нерегулярность и другие параметры, а также используется машинное обучение для более точного определения.
Отслеживание неестественных траекторий
В этом случае система в режиме реального времени анализирует характер движения курсора по странице. Выше мы привели признаки, характерные для людей и ботов:
- если на сайт перешел человек, то он двигает мышь с естественными вариациями скорости, направления и микроотклонениями, вызванными физиологией руки и особенностями моторики;
- если бот — он будет генерировать координаты программно, что создает идеально прямые линии — такие паттерны система распознает как подозрительные.
Обнаружение аномальных координат
Применяется для поиска ошибок в выставлении координат для положения курсора при имитации ботом действий. Многие автоматизированные инструменты при инициализации или сбоях выставляют координаты в граничные значения, что нехарактерно для реального пользователя. Например:
Проверка соответствия устройства и событий
На различных типах устройств генерируются разные типы событий взаимодействия. Система проверяет соответствие между заявленным типом устройства и фактически генерируемыми событиями браузера.
Машинное обучение для анализа поведения
Продвинутые и современные системы антифрода используют машинное обучение для анализа поведения и движения курсора мыши. Модели тренируются на датасетах, которые включают человеческое и ботовое взаимодействие с сайтами.
Вот примеры подобных датасетов на основе поведения реальных пользователей (источник — исследование):
| Название датасета | Источник / Авторы и год | Кол-во пользователей | Особенности |
| Balabit | Balabit, 2016 | ~10 | Пользователи, подключенные к удаленному серверу. Неуправляемая среда. Положение курсора и время трека. |
| Bogazici | Университет Богазичи, 2021 | ~24 | Неуправляемая среда. Набор данных состоит из типа действия мыши, временной метки, пространственных координат, состояния и имени окна приложения. |
| Attentive Cursor | Исследование HCI, 2020 | ~3000 | Акцент на внимательности и шаблонах движений. На основе веб-поиска. Собранная информация включает в себя: положение курсора мыши, метку времени, имя события. |
| SapiMouse | Исследование biometrics, 2020 | ~120 (92 мужчины и 28 женщин в возрасте от 18 до 53 лет) | Данные собраны на основе анализа выполнения четырех различных действий, каждое из которых связано с геометрическими фигурами. Набор содержит в себе: положение курсора мыши, тип события (перемещение, перетаскивание, нажатие или отпускание кнопки мыши) и временные метки. |
| Chao Shen | Исследование | ~28 | Фокус на скорости и изменениях траекторий (непрерывная аутентификация пользователей). Включает около 30 минут активности мыши каждого пользователя: тип действия, тип приложения, область экрана и положение окна и соответствующих им временных меток. |
| DFL | Исследование Defense Forensics Lab, 2018 | ~ | Содержит: отметку времени, кнопку (левая, правая, без кнопки), состояние (перемещение, нажатие, отпускание, перетаскивание) и координаты. |
| ReMouse | ReMouse dataset, 2023 | ~100 | Открытый набор для обучения моделей с динамикой мышей пользователей, проживающих в различных странах и использующих разные устройства. Уникален наличием данных из повторяющихся сеансов, которые получены в результате выполнения пользователями идентичных задач. Содержит информацию о положении курсора мыши, скорости перемещения курсора и размере окна приложений. |
Интеграция с другими методами обнаружения
Данные о перемещении курсора часто используются в сочетании с другими методами обнаружения для повышения точности и эффективности блокировки. Например, сайты могут сочетать анализ движений мыши с динамикой нажатия на клавиши, снятием цифрового следа (фингерпринт) в браузере и мониторингом IP-адресов. Такой многоуровневый подход повышает вероятность точной идентификации ботов.
В завершение
Использование данных о динамике движения мыши при обнаружении ботов представляет собой эффективный метод защиты рекламы и сайтов от фрода и скликивания. Анализ уникальных моделей взаимодействия реального пользователя с цифровыми интерфейсами с использованием указанных методик обеспечивает надежную основу для разграничения реального и недействительного трафика.
Интеграция моделей на базе машинного обучения и искусственного интеллекта, в частности методов глубокого обучения, еще больше повысила точность этих систем обнаружения, позволяя выявлять тонкие различия в поведении, которые традиционные методы могли бы не заметить.
Тем не менее, продолжающееся развитие технологий фрода, ИИ и автоматизированных скриптов, которые все больше и качественнее имитируют человеческое поведение, представляет собой реальную угрозу. Чтобы защитить сайт от спам-заявок, накруток или скликивания рекламы, важно уметь отфильтровывать события, которые генерируются ботами, а не реальными пользователями.
Например, как это реализовано в автоматизированных инструментах сервиса антифрода Botfaqtor:
Попробовать инструменты автоматического обнаружения ботов на сайте и в рекламе можно бесплатно. Наши клиенты уже экономят сотни тысяч (и даже миллионы) рублей Кейсы тут →
Подписывайтесь на наш ТГ-канал: рассказываем о реальных кейсах, тактиках и технологиях мошенников, факты о кликфроде и не только. Без спама и с пятничными мемами.

