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

Что такое Интернет-боты?

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

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

Каковы эффекты интернет-ботов?

Примерно половину интернет-трафика составляют действия ботов. Обратите внимание на эту тенденцию от statista.

Как и то, к чему я больше всего отношусь (холестерин), боты бывают и хорошими, и плохими.

Хорошие парни

Как правило, авторитетные компании широко используют хороших ботов. Эти боты соблюдают правила, созданные веб-мастерами для регулирования их активности сканирования и скорости индексации. Правила определены в файле robots.txt веб-сайта для просмотра сканерами. Мы также можем блокировать определенные поисковые роботы, чтобы предотвратить индексацию веб-сайтов. Например, компании, которые не работают в Китае, могут заблокировать поискового робота Baidu.

Некоторые другие распространенные боты также включают ботов социальных сетей, ботов для мониторинга веб-сайтов, ботов для проверки обратных ссылок (например, SEMRushBot), ботов-агрегаторов (например, Feedly) и т. Д.

Плохие парни

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

Одна из самых вредоносных целей - DDOS-атака. Распределенная атака типа «отказ в обслуживании» достигается, когда большое количество обращений к сайту приводит к перегрузке его служб. Это может привести к временной приостановке обслуживания, значительным расходам с хостинга, плохому SEO и плохой репутации.

С точки зрения аналитики, данные этих злонамеренных посещений сохраняются и видны в Google Analytics, Adobe Analytics и т. Д. Хотя в Google Analytics есть функция фильтрации ботов для фильтрации бот-трафика из просмотров, остается значительный объем трафика.

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

Использование reCaptcha v3

«CAPTCHA» - это тест Тьюринга, позволяющий отличить человека от ботов. Людям легко решить, но сложно разобраться «ботам» и другому вредоносному ПО.

Кстати о Тьюринге:

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

Последний помогает нам различать поведение человека и бота, не прося пользователя пройти тест. Это огромное улучшение по сравнению с предыдущими версиями, в которых тесты reCaptcha создавали значительные проблемы с пользовательским потоком. Для сравнения возьмем более ранние версии как «Бэтмен и Робин» (1997), а третью версию - как «Трилогию о Бэтмене» Нолана.

Как это работает?

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

Этот результат можно сохранить в переменных (Custom Dimensions / eVars), чтобы отфильтровать трафик ботов в Google или Adobe Suites.

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

Это двухэтапный процесс:

  1. Создание токена
  2. Подсчет очков

Создание токена:

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

Вот снимок токена ответа пользователя в зашифрованном виде:

Подсчет очков

Ответ, сгенерированный на первом этапе, отправляется в Google с помощью вызова API из серверной части. Затем механизм адаптивного анализа рисков reCaptcha отправляет ответ, из которого можно извлечь оценку.

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

Конец игры:

Google точно не раскрывает, как он создает профиль поведения, чтобы помешать мошенникам имитировать человеческое поведение. По словам двух исследователей безопасности из Университета Торонто, которые изучали reCaptcha, оценка во многом зависит от того, установлен ли у вас файл cookie Google в вашем браузере или нет. Другой источник сообщил, что API reCaptcha собирает и отправляет информацию о программном и аппаратном обеспечении, включая данные о приложениях и устройствах, в Google для анализа.

Google никогда не обращал внимания на возможные проблемы с конфиденциальностью. Мы можем рассматривать reCaptcha v3 как способ обеспечить безопасный и легкий онлайн-опыт.