Как определять и блокировать скликивание рекламы? Часть 1.

как защититься от скликивания рекламы яндекс гугл

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

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

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

Кроме парсинга, роботизированный трафик может использоваться для кликфрода (скликивания рекламы) или рекламных бюджетов на рекламных площадках, с целью убрать конкурента, либо заработать на своей площадке. Робот создаёт человеческий трафик на сайте, обманывая системы аналитики, затем переходит по рекламным ссылкам расходуя бюджет конкурента в своих целях. Можно сказать, что проблема скликивания рекламы является наиболее финансово значимой для всех компаний, не зависимо от сферы их работы.

На данный момент доля автоматизированного трафика в Интернете составлял 56%, то есть пользователей в сети меньше, чем роботов, и эта цифра продолжает расти. А доля маркетинговых расходов в цифровых медиа в 2019 году составила 51%. Растущие показатели использования автоматизированного трафика показывают актуальность выдвинутой проблемы.

Цель данной статьи – исследовать методы детектирования и блокировки автоматизированного трафика, провести классификацию этих методов и предложить на её основе универсальную модель системы защиты от такого трафика.

Задачи, которые необходимо было решить для достижения цели данного исследования:

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

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

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

1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ

1.1 Анализ существующих решений

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

Из известных на данный момент решений для защиты является сервис CloudFlare. CloudFlare – американская компания, предоставляющая услуги CDN, защиту от DDoS-атак, безопасный доступ к ресурсам и серверы DNS. Сервис представляет собой облако, промежуточное звено между пользователем и сайтом, в случае обнаружения атаки система блокирует доступ к сайту для конкретного пользователя, защищая инфраструктуру веб-ресурса от падения. Принцип работы системы представлен на рисунке ниже. Защита от ботов и недобросовестного сбора информации не является главными инструментами этого сервиса, так что он не может гарантировать высокой эффективности против парсинга.

Ещё один популярный американский сервис – это Distil Networks, он нацелен на блокировку ботов, и защиту от автоматизированного сбора информации. Данная система уже нацелена на более эффективную защиту от ботов, предлагает системы защиты не только сайта, но API. Использует в своём арсенале капчу и блокировку трафика, после анализа активности.

Из Российских разработок можно отметить наш сервис clickfraud.ru. Он тоже нацелен на защиту от нежелательного автоматизированного трафика. Из других систем защиты от скликивания рекламы можно так же отметить другое российское решение ClickFrog и американский ClickСease. Данные системы автоматически детектируют подозрительный трафик на сайте и пытаются заблокировать его по ip на рекламных площадках. ClickСease работает только с с Google.Analytics. Российское решение умеет работать с Google.Analytics и Яндекс.Метрики, однако, как и американское блокирует только по ip, и если для Google.Analytics это приемлемо и более-менее эффективно, то Яндекс в свою систему разрешает добавлять для блокировки только лишь 20 ip адрессов, что несоизмеримо мало по сравнению с возможностями мошенников.

Таким образом, хоть подобные решения на рынке уже существуют, они представляют собой либо решения, не направленные конкретно на защиту от ботов, либо используют слабые (Botfaqtor) инструменты блокировки трафика. Такие сервисы как Distil Networks хоть и предлагают хорошую систему защиты, однако работают вне России, а также не могут влиять на некоторые факторы защиты сайта, как например, доступ по логину, скрытие информации о блокировке (т.е. бот получает информацию, но не достоверную). А некоторые сферы как скликивание не имеют эффективных существующих решений. Необходимо также отметить, что все эти решения представляют собой сторонние решения, которые встраиваются на сайт и не дают полного контроля над ситуацией. Поэтому крайне актуально дать веб мастерам структурированные решения, модели и алгоритмы для построения собственных систем защиты, учитывающие множество факторов.

1.2 Сценарии недобросовестного использования трафика

Бот-программы (или просто, «боты») всё искуснее имитируют поведение клиента на сайте: могут набрать URL, прийти с самого авторитетного ресурса и отправить товар в корзину, позвонить, заполнить анкету, добавить сайт в бот-сеть, украсть контент, опередив индексацию от Google.

Рассмотрим наиболее типичные ситуации бот-атак в сети:

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

Приём 2. Накрутка поведенческого фактора. Боты, призванные совершить на сайте массовые действия за короткий промежуток времени, для того чтобы дать поисковым системам негативный сигнал. Поисковая система (Google, Яндекс), проанализировав странные переходы из другой страны, посчитает это «накруткой» поведенческого фактора – конечно, тридцать ботов, не достаточно для того чтобы отправить сайт в БАН, но хватит, чтобы запомнить его, как ресурс с плохой репутацией и никогда высоко не ранжировать.

Приём 3. Повышение количества отказов. Боты-даунлодеры, на первый взгляд являются самыми примитивными (просто загружают и через несколько секунд покидают страницу сайта), но вместе с тем, наиболее болезненными из-за динамической смены IP-адреса. В данном случае поисковик посчитает, что ваш сайт просто не интересен пользователям целевой аудитории. Обиднее всего, что именно они, чаще всего съедают и без того маленький рекламный бюджет.

Приём 4. Снижение оригинальности ресурса. Бот-парсер «тихо» посещает сайт, сканирует и публикует контент на сторонних ресурсах ещё до официальной индексации, при этом не эмулируя действий посетителей. Вследствие чего сайт не поднимается в поисковой выдаче.

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

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

Рисунок 2 – График отношения рекламного и общего трафика

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

1.3 Анализ автоматизированного трафика

В качестве эксперимента было предложено провести атаку на собственный ресурс, предварительно установив на него систему по контролю за активностью пользователей «Яндекс Метрика» со включенным вебвизором. Вебвизор – это дополнительный инструмент платформы Яндекс Метрика, позволяющий следить не только за параметрами посещений, но и за активностью пользователей на самом сайте в том числе переходы по страницам, время нахождения на сайте, а также трекинг движений мыши.

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

1.3.1    Данные, полученные при помощи вебвизора

Для начала обратимся к данным собранным вебвизором. На рисунке 3 видно, что Яндекс определил, чётко пять посещений (по одному на браузер), каждый из которых прошёлся примерно по пятидесяти страницам. Здесь сразу можно отметить одну из особенностей свойственных роботам или другим автоматизированным системам – это слишком короткое время нахождения на одной странице. Примерно семьдесят секунд на пятьдесят посещений – это меньше двух секунд на страницу, что крайне несвойственно живому человеку.

Рисунок 3 – Данные вебвизора по первой конфигурации парсера

Перейдя к результатам парсинга с использованием прокси перед нами предстоит другая картина (рисунок 4). Здесь теперь выделено множество различных пользователей с точки зрения метрики, у каждого из которых не более десяти просмотра. Ситуация с коротким временем на страницу также сохраняется.

Если нажать на «+» можно раскрыть карту переходов (рисунок 5) и заметить, что происходить обход всех страниц сайта друг за другом в сторону увеличения. Эта особенность есть как у первой, так и у второй конфигурации, только во втором случае это отследить труднее так, как разделение на множество различных посещений не дает это понять.

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

Рисунок 4 – Данные вебвизора для парсера с использованием прокси

Рисунок 5 – Карта переходов, конкретного посещения

Нажав клавишу с информацией возле любого из посещений, можно посмотреть его характеристики. Здесь (рисунок 6) выявляется ещё одна особенность – это прямые заходы. Обычно прямые заходы на сайт, очень редки, особенно на внутренние страницы сайта.

Рисунок 6 – Информация о визите

1.3.2    Инструмент построения отчетов

Далее воспользовавшись инструментом отчёты можно посмотреть более подробную статистику по всем параметрам из метрики. Для примера выведем график по просмотрам (рисунок 7). На графике видно что при парсинге с одного ip график очень сильно выделяется на фоне остального трафика, а при использовании прокси, он как бы размывается и становится менее заметным.

Последним проанализируем такой параметр как «роботность» – это автоматически вычисляемый параметр Яндекса, показывает опознал ли Яндекс в посетителе не человека или нет. На рисунке 8 видно, что все запросы с прокси пометились как роботы, а вот два из пяти посещений без прокси опознались яндексом как реальные люди, хотя мы знаем, что это не так.

Рисунок 7 – График просмотров

Рисунок 8 – Параметр «Роботность»

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

Выводы

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

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

2 СПОСОБЫ ДЕТЕКТИРОВАНИЯ И БЛОКИРОВАНИЯ СКЛИКИВАНИЯ И БОТОВ

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

2.1 Способы обнаружения кликфрода и ботов

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

На данный момент js используется почти на всех интернет-ресурсах. Многие из них попросту не работают без него. Количество реальных людей не использующих js сводится к минимуму, а вот автоматизированным системам намного проще собирать данные, не интерпретируя js-код. Отсюда можно прийти к выводу что, если js на у пользователя отключён, значит вероятность того, что это не человек крайне велика.

  • Selenium WebDriver – это инструмент для автоматизации действий веб-браузера. В большинстве случаев используется для тестирования Web-приложений, но этим не ограничивается. В частности, он может быть использован для решения рутинных задач администрирования сайта или регулярного получения данных из различных источников (сайтов).

Если сайт ограничивает доступ к работе без js, и другие системы детектирования человеческого по, то чтобы обойти эту защиту против сайта может быть использован WebDriver. Чтобы детектировать его использование можно получить данные с navigator.webdriver() и если он будет равен true, это будет означать, что пользователь использует автоматизированное ПО, что также говорит о высокой вероятности того, что это вовсе не человек.

  • Нестандартный User-Agent. User-Agent – это текстовая часть запроса, которую веб-приложения используют для сообщения сайту информации о себе. User-Agent браузера содержит название и версию приложения, а также данные об операционной системе компьютера: версия, разрядность, язык по умолчанию и другие параметры.

Поисковые роботы, такие как Google и Yandex используют специальный UserAgent, нечистые на руку разработчики могут подменить UserAgent своего бота, дабы притвориться ботом популярной сети. Для детектирования таких случаев у Google и Yandex есть способы проверки, принадлежности к их сетям. Использование таких проверок позволит со стопроцентной вероятностью выявлять автоматизированный нежелательный трафик.

Также можно блокировать все нетипичные UserAgent, которые принадлежат другим специальным сервисам (например, Postman UserAgent).

  • Ловушки для ботов. Некоторые парсинг-боты бездумно обходят все ссылки на сайте. Для обнаружения таких ботов можно поставить на сайте ссылки-ловушки – это невидимые для человека, но видимые роботу ссылки. Детектируя несколько подобных переходов одного пользователя, можно будет с высокой вероятностью говорить о том, что это бот.
  • Короткое время между запросами с одного ip. Как мы выяснили в первой главе, характерная черта бота – это малое время между запросами. Обычно человек при переходах по страницам проводит на каждой странице хотя бы несколько секунд, периодически останавливаясь на более длительное время. Бот же «атакует» сайт запросами с интервалом менее секунды. Заметив такую активность, можно с некоторой вероятностью говорить о том, что это бот. Если активность и переходы не прекращаются догое время, то вероятность возрастает.
  • Большое количество запросов с одного ip. Аналогично предыдущему пункту, обычный пользователь вряд ли будет посещать большое количество страниц (от нескольких сотен). Здесь важным моментом будет убедиться в том, что это действительно один и тот же пользователь. Для этого необходимо использовать специальные инструменты аналитики, запись fingerprint браузера, cookie и другие параметры.
  • Детектирование по отпечатку браузера. То, о чём говорилось ранее. Fingerprint или отпечаток компьютера (браузера) – информация, собранная об удалённом устройстве для дальнейшей идентификации, фингерпринтинг – сбор этой информации. Отпечатки могут быть использованы полностью или частично для идентификации, даже когда cookie выключены. На данный момент появились способы однозначного детектирования не только браузера, но и компьютера пользователя, основанные на особенностях работы графической подсистемы компьютера.
  • Нетипичные запросы, порядок запросов. Анализируя поведение пользователя, выявляя нетипичное поведение, переходы по страницам, можно с помощью средств аналитики построить модель действий добросовестного пользователя и при отклонении от поведения можно будет с определенной долей вероятности сделать вывод о нестандартном поведении. В данном случае будет полезно сформировать модели не только пользователей, но и поисковых роботов, чтобы не мешать их работе.
  • Наличие ip в спам базах, ip принадлежит прокси. Есть множество ресурсов и баз данных, в том числе свободных, которые хранят списки ip адресов, которые зарекомендовали себя не с лучшей стороны. При заходе пользователя на сайт можно проверять входит ли его ip в эти списки, и в какое количество, в зависимости от этого фактора в совокупности с другими делать выводы о автоматизированном трафике.
  • Отсутствие активности мыши. Ещё один из факторов, что был обнаружен во время эксперимента, при автоматизации трафика. Если происходят переходы по страницам, а движения мыши не фиксируются, ли они есть но наводятся не на те элементы, в которых находится следующая ссылка, то это может говорить о том, что используется автоматизированное ПО.
  • Ip адреса множественых или рядом идущих запросов принадлежат одной подсети. Проверка принадлежности рядом идущих запросов пользователей к одной подсети может являться одним из фактов парсинга который нужно учитывать.
  • Прямые заходы. Большое количество прямых заходов на разные страницы сайта одним и тем же пользователем может говорить о высокой вероятности того, что это бот, потому что в таких системах при переходе по страницам обычно не подставляется параметр refer.

Рассмотренные методы детектирования автоматизированного трафика можно классифицировать по следующим параметрам.

По степени однозначности детектирования:

  • методы, с высокой вероятностью детектирующие бота;
    • не работающий JavaScript;
    • Webdriver;
    • подмена User-Agent;
    • отсутствие активности мыши;
    • ловушки для ботов;
    • прямые заходы;
    • методы, детектирующие с некоторой вероятностью;
    • нетипичный порядок запросов;
    • наличие ip в спам базах, списках прокси;
    • принадлежность ip адресов к одной подсети;
    • короткое время между запросами с одного ip;
    • большое количество запросов с одного ip.

По времени необходимому на детектирование:

  • методы мгновенного детектирования;
    • не работающий JavaScript;
    • WebDriver;
    • подмена User-Agent;
    • короткое время между запросами с одного ip;
    • большое количество запросов с одного ip;
    • наличие ip в спам базах, списках прокси;
    • методы отложенного детектирования (те, для которых нужно собрать некоторую статистику);
    • принадлежность ip адресов к одной подсети;
    • нетипичный порядок запросов;
    • ловушки для ботов;
    • отсутствие активности мыши;
    • прямые заходы;
    • детектирование на основе поведенческих факторов.

2.2 Способы блокировок ботов

  1. Блокировка по ip. Один из самых простых способов ограничения и блокировки – это закрыть доступ к конкретному ip адресу, чей трафик был отмечен системой аналитики как автоматизированный. Данный способ является эффективным лишь против простейших, любительских парсеров, профессиональные системы, скорее всего будут использовать пул прокси и быстро смогут поменять ip адрес и продолжить работу до следующей блокировки.

Также нужно будет учесть то, что под одним ip в сеть может выходить множество пользователей, особенно это актуально для мобильной сети, поэтому есть риск таким образом заблокировать реальных пользователей.

  • Блокировка по отпечатку браузера. Об этой теме говорилось ранее в способах детектирования трафика. Получив однажды отпечаток браузера или компьютера, можно будет блокировать злоумышленника независимо от его ip адреса и других систем обхода блокировок.
  • Ограничивание информации по логину. Может выступать как дополнительная мера ограничения парсинга, увидев подозрительную активность от конкретного пользователя, можно быстро его заблокировать. Также можно привязать к аккаунту номер телефона, тогда злоумышленнику сложно будет создать большое количество новых и новых аккаунтов.
  • Вывод капчи. Один из действенных способов успокоить трафик, или на время его заморозить. Однако сейчас в сети появились сервисы, которые нанимают людей расшифровывать капчи, за маленькие деньги. Поэтому наиболее эффективным будет создать свой собственный алгоритм капчи, использующий нестандартные техники ее решения, в этом случае решать такую капчу будет экономически не выгодно. Вряд ли сам злоумышленник будет это делать, ровно, как и система решения капч не будет ради одного сайта разрабатывать API.
  • Подстановка ошибочных данных. Данный способ подойдет если на сайте хранится большое количество ценной информации, которую конкуренты желают скопировать. Обнаружив парсинг, сайт не будет внешне никак об этом говорить, а будет незаметно подставлять неверные данные, либо говорить, что таких данных нет. Конкурент не скоро заметит такую защиту, а понять какие условия учитываются при детектировании парсинга будет намного сложнее.
  • Отображение важных данных в виде картинок. Может быть применено как дополнительная мера защиты важных данных. Например, номера телефонов пользователей площадки онлайн-торговли, внедрение в систему парсинга сложных систем по распознаванию изображений потребует дополнительных затрат для злоумышленников.
  • Блокировка на основе Cookie. Cookie – данные хранящиеся в браузере пользователя, позволяющие сохранить параметры сессии после ухода с сайта. Данный метод может быть малоэффективным по отношению к ботам, так как могут легко очистить параметры Cookie. Однако, при построении систем защиты от автоматизированного трафика можно будет учесть этот фактор и с подозрением относится к посетителям без Cookie у которых другие параметры, например ip-адрес, говорят о том, что он уже был на сайте недавно.

Рассмотренные методы блокировки трафика можно классифицировать по следующим параметрам.

По однозначности блокировки бота:

  • однозначное блокирование:
    • блокировка по отпечатку браузера;
    • блокировка по Cookie;
    • неоднозначное блокирование (под блокировку могут попасть обычные пользователи):
    • блокировка по ip;
    • отображение важных данных в виде картинок (все пользователи испытывают неудобства).

По эффективности действия против ботов:

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

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

2.2 Модель системы блокировок автоматизированного трафика

На основе предложенной классификации методов защиты была спроектирована и предложена следующая модель системы блокировки автоматизированного трафика (рисунок 9). Модель состоит из пяти подсистем-процессов: Сбор и накопление данных, Система мгновенных блокировок, Система отложенной блокировки, Построение поведенческих карт, Система блокировки. На основе предложенной модели была построена UML диаграмма последовательности (рисунок 10), которая позволит понять процессы работы системы.

  1. Сбор данных.

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

  • Мгновенная блокировка.

Получает информацию о посетителе непосредственно от него же (с предварительным сохранением в промежуточную базу данных), в данный момент времени. Анализирует такие факторы, которые с высокой долей вероятности говорят о том, что это робот. Например, User-Agent бота, наличие webdriver, время между запросами, их количество и т. д., выявив бота, мгновенно закрывает доступ к сайту, согласно настроенной политике блокировок (например, сначала показывает капчу, потом блокирует навсегда).

Рисунок 9 – модель системы блокировок автоматизированного трафика

Рисунок 10 – UML диаграмма последовательности системы блокировок автоматизированного трафика

  • Поведенческий анализ.

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

  • Отложенная блокировка.

Берет из базы данных информацию о недавних действиях пользователя (в диапазоне 30 минут) и основываясь на данных поведенческих карт делает выводы о блокировке данного пользователя.

  • Блокировка.

Мониторит базу параметров блокировок и в соответствии с ним, применят против каждого бота свой способ блокировки.

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

2.3 Вывод

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

Продолжение следует… 🙂