BotBan

Семь ошибок при настройке защиты от ботов

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

3 мин чтения

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

1. Определять поисковых роботов по User-Agent

Строка подделывается одной строкой кода. Если вы пропускаете всех, кто написал «Googlebot», вы пропускаете всех подряд. Если блокируете — рано или поздно заблокируете настоящего и выпадете из выдачи.

Работает только одно: обратный DNS, а потом прямой запрос по полученному имени.

2. Ставить порог блокировки слишком низко

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

Правило простое: порог должен быть выше веса самого тяжёлого одиночного признака. Тогда для блокировки всегда нужны минимум два независимых довода.

3. Блокировать адреса мобильных операторов

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

Проверяйте принадлежность сети, прежде чем закрывать её насовсем. Максимум, что допустимо для таких адресов, — проверка браузера.

4. Забыть про служебные обращения

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

Заблокированный вебхук оплаты — это заказ, за который заплатили, а вы о нём не узнали. Обнаруживается обычно через несколько дней и через недовольного покупателя.

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

5. Включать блокировку в первый день

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

6. Блокировать по географии

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

7. Не оставить себе выключателя

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

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

Общий принцип

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

Поэтому все настройки стоит выбирать, задавая себе один вопрос: что случится, если это правило ошибётся? Если ответ «мы потеряем часть покупателей и не узнаем об этом» — правило надо смягчить.

Читайте также