Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
Привет! На связи снова AGIMA, и сегодня мы расскажем о ботах. А точнее — о потенциально опасных ботах, способных нанести серьезный ущерб вашему веб-сервису. Эта проблема остается актуальной уже несколько лет, но, к сожалению, многие до сих пор не до конца осознают ее серьезность. Какими же бывают «вредные» боты, как они действуют и почему защита сервиса от них — по-настоящему важная задача? Давайте разберемся.
Типы вредоносных ботов
Программы для автоматизированного подбора логина и пароля (брутфорс) специализируются как на получении доступа уровня Администратор, так и на банальную кражу учетных записей пользователей сервиса. А в некоторых случаях с их помощью можно получить действующий список «живых» email-адресов — для спам-рассылки или фишинга. Пример: при авторизации на сайте подставляем случайные значения в поля «email» и «пароль». В этой ситуации правильность пароля не важна. Если логин (email) есть в базе, мы узнаем об этом по таймингу ответа сервера. Сохраняем email, и добавляем его в базу спам рассылок.
Боты авторегистрации, которые очень «любят» сервисы программ лояльности и создают там сотни фейковых аккаунтов. Зачем? В нашей практике были кампании, в рамках которых пользователь мог получить бонусные баллы за регистрацию, и их даже хватало на небольшую покупку — например, зубной щетки. Зачем злоумышленникам сотни зубных щеток, неважно — важно то, что владельцу сервиса наносится реальный материальный ущерб. Конечно, финансовые потери сравнительно невысоки. Но аналитику и метрики такая атака может сильно подпортить. Часто такие боты создают лишнюю нагрузку на почтовый сервер. Тысячи писем, подтверждающих регистрацию ботов, дают очень неприятный эффект: могут переполнить почтовый ящик, перегрузить релей и т д.
Спам-боты могут автоматически оставлять в обсуждениях негативные комментарии или вредоносные ссылки на якобы полезные ресурсы. Некоторые из таких программ «умеют» регистрироваться на ресурсе, если это необходимо для написания комментариев. Негативные и оскорбительные комментарии повышают репутационные риски. Стоит вспомнить об опыте бьюти-бренда Z Palette, который мог стать культовым, но не успел — его буквально похоронил один-единственный провокационный комментарий. Или историю одного из гигантов рынка цифровой техники — Dell. В далеком 2005 году этот знаменитый бренд едва не был «нокаутирован» всего одним негативным отзывом.
Парсинг-боты, задействованные в веб-скрейпинге, «умеют» собирать практически любой контент с веб-ресурсов. Воровство контента позволяет мониторить предложения конкурентов, чтобы затем агрегировать информацию, нужную для выстраивания бизнес-стратегии. И даже если вы не против поделиться информацией с конкурентами и отдать их ботам весь контент, находящийся на вашем сервисе, такие «набеги» на ресурс могут сильно замедлить его работу и испортить аналитику. Чтобы не останавливаться на частностях, приведем ссылку на полезную и очень подробную статью о веб-скрейпинге.
Продвинутые боты могут имитировать действия настоящего пользователя. Их используют для взлома учетных записей, кардинга, мошенничества с покупками и других серьезных атак. Кстати, DDoS тоже реализуется с помощью ботов, которые распределены территориально и одновременно задействуются в момент атаки. К счастью, сейчас есть много сервисов для защиты от атак этого типа. Вот один из них: https://qrator.net/ru. Сервис обеспечивает эффективную защиту в автоматическом режиме, с максимальной скоростью реакции на каждую угрозу. При этом количество ложных срабатываний защиты не превышает 5%.
Выстраиваем защиту от ботов. Что сделать в первую очередь?
Полностью оградиться от ботов невозможно. Но снизить их активность на вашем ресурсе — вполне реально. Механизмы защиты могут быть самыми разными — от несложных настроек в бэкенде и white\black-листов до многоуровневых систем аналитики трафика с возможностью обучения и распознавания вредоносной активности.
Учитывая все разнообразие ботов и вариативность их деятельности, в первую очередь нужно определить, какие из них действительно могут оказать негативное воздействие именно на ваш бизнес, и будет ли организация защиты экономически целесообразной. В некоторых случаях потери от действий ботов меньше, чем затраты на защиту от них. Поэтому в первую очередь нужно провести анализ рисков.
Не стоит забывать, что боты, даже не наносящие прямого финансового ущерба бизнесу, могут сильно навредить аналитике. Впоследствии будет сложно сделать выводы по посещаемости, конверсии, востребованности товаров и т.д. Придется потратить время на очистку данных от воздействия ботов, если она вообще будет возможна.
Однако не стоит забывать, что некоторые механизмы защиты могут усложнить взаимодействие с вашим веб-ресурсом для пользователей. Ведь посетители, как правило, не задумываются о вашей (да и своей) безопасности — им хочется быстрее и проще.
Как сократить активность ботов на сайте?
Один из самых простых и популярных инструментов — Captcha. Она добавляет некую задачу, чаще всего графическую, которую пользователь должен решить при заполнении формы регистрации, входа, обратной связи и др. Это защита от брутфорса, спам-ботов и ботов авторегистрации. Но некоторые вредоносные программы умеют обходить ее. Ключевой барьер для использования Captcha — ее неудобство для легитимных пользователей ресурса. Людей часто напрягает эта бессмысленная процедура, особенно если определить ответ не удается с первого раза и приходится тратить время на повторные попытки. Это может немного снизить конверсию. Решение использовать или не использовать этот инструмент зависит от оценки рисков и аналитики: если видно, что пользователи часто бросают попытки заполнить форму из-за капчи, стоит подумать над упрощением механизма в этом месте. Кстати, вот статья с интересным кейсом использования капчи (точнее, «антикапчи»).
reCAPTCHA v3 — сервис, созданный для борьбы с ботами, который основывается на агрегации действий пользователей и поведенческом анализе. И в отличие от классической captcha, не видима обычному пользователю. Подгружается она как JS библиотека и “отслеживает” поведение пользователя, затем информация отправляется в сервисы google для вынесения вердикта. Не смотря на лояльность такой защиты к пользователям ресурса, данный способ защиты может отрицательно повлиять на скорость загрузки страницы и снизить баллы по Google PageSpeed Insight. Ну и ошибки при поведенческом анализе никто не отменял. При целевой атаке на ресурс полагаться только на данный способ защиты не стоит.
Защита от брутфорса может быть реализована лимитом на количество неверных попыток для ввода данных. Сейчас разработчики используют этот способ практически «по умолчанию». Однако лишний контроль не помешает.
Можно настроить на сайте «ловушки» для ботов (honeypot). Например, добавить скрытое от пользователя поле. Обычный пользователь видит нужное ему поле для заполнения, а бот видит еще одно — в коде — и «заполняет» его. После этого бот блокируется скриптом. Против «умных» ботов такая защита срабатывает не всегда, но отбросить часть ненужного трафика она точно поможет. Также можно установить таймер на заполнение полей (сообщения, комментарии и т.д.). Боты обычно вносят данные в поля моментально, в отличие от живых людей — это помогает идентифицировать их и блокировать их дальнейшие действия. С ловушками можно экспериментировать и адаптировать их к своему сервису. Этот способ борьбы с ботами даст возможность снизить их активность на ресурсе, но, увы, не избавит вас от них: если кто-то будет целенаправленно атаковать именно ваш сервис, он сможет просто проанализировать вашу форму и алгоритмы и внести изменения в действия своего бота.
Также существуют специализированные решения от таких производителей как Akamai, Imperva, Radware, PeremeterX и др., которые применяют подходы на основе анализа данных. Машинное обучение направлено на поведенческий анализ для обнаружения аномалий в трафике веб-сервиса. Анализируя трафик огромного количества интернет-ресурсов, такие инструменты оценивают каждый запрос и определяют вероятность того, что он поступает от бота. При этом учитывается структура защищаемого приложения. Со временем система адаптируется к каждому веб-сервису, и вероятность ложных срабатываний (отклонений запросов настоящих пользователей) минимизируется. Легитимный трафик отделяют от вредоносного в том числе и на основе отпечатка, состоящего из IP адреса, геолокации, браузеров и ряда других идентификаторов. Некоторые решения — весьма эффективные, по мнению аналитиков Gartner — умеют тестировать структуру сервиса на проникновение ботов, показывая все области, где присутствуют риски для сайта (и, соответственно, бизнеса). Такую защиту уже действительно сложно обойти, но все же возможно — если долго и упорно в ней разбираться. Ключевой минус подобных решений — высокая цена.
Сложно сказать заранее, какой из способов защиты подойдет для конкретной задачи. Нужно учесть технические нюансы архитектуры сервиса, ценность контента, потенциальные последствия воздействия ботов…
А теперь — небольшой инсайт. Мы в AGIMA создаем десятки веб-сервисов в год. И каждому второму проекту, который мы разрабатываем, нужна настройка «обороны» от вредоносных программ. В нашей практике встречались случаи, когда после внедрения определенных мер количество нежелательного трафика на сервис сокращалась на 20-40%, а нагрузка на серверные платформы и бэкенд — на 15-30%. Это достаточно ощутимый результат для высоконагруженных веб-сервисов.
В заключение еще раз скажем, что вредоносные боты — серьезная угроза для бизнеса, и мы настоятельно рекомендуем обратить внимание на этот вектор атак. Программа-минимум — анализ рисков, который даст представление о текущем состоянии сервиса и ценности информации, находящейся и обрабатываемой на нем. Кроме того, анализ позволит определить наиболее критичные векторы атак и оценить текущую эффективность защиты от них. Дальнейшие действия — по обстоятельствам.
Затягивать с поиском решения не стоит, промедления могут обернуться существенными потерями. Вот пример: по данным Financial Times, на сегодняшний день из-за активности ботов ведущие стриминговые сервисы (Spotify, Amazon, Universal Music Group, Warner Music и др.) теряют в общей сложности около 300 миллионов долларов в год! Кто знает, возможно, своевременный анализ рисков помог бы этого избежать. Так что угрозу вредоносных ботов никак нельзя игнорировать. Но не стоит и паниковать — варианты защиты найдутся в любом случае!
Статья написана совместно с Алексеем Клиновым, Ex-Head of Information Security, AGIMA.