Почему блокировка по странам почти не помогает
Самое соблазнительное правило в настройках защиты и одно из самых вредных. Объясняем на цифрах и примерах.
3 мин чтения
Логика понятна: мы работаем по России, значит, всё остальное можно закрыть. В интерфейсах защиты такая настройка обычно есть, и включают её часто.
Проблема в том, что она бьёт не туда.
Ботам это почти не мешает
Резидентные прокси стоят копейки и дают адреса обычных домашних и мобильных провайдеров — в том числе российских. Тот, кто всерьёз собрался парсить ваш каталог или скликивать рекламу, выйдет с российского адреса и даже не заметит вашего правила.
Отсекается только самый ленивый слой: скрипты, работающие напрямую с арендованного сервера. Их и без географии видно по User-Agent и по темпу.
Живым людям мешает заметно
Ваши же покупатели в поездках. Человек, который вчера сделал заказ из Москвы, сегодня открывает сайт из Турции и получает отказ.
Роуминг и мобильный интернет. Определение страны по адресу у мобильных операторов неточно в принципе: абонент физически в Ростове, а выход в интернет — через узел в другом регионе или даже стране.
VPN. Люди пользуются им из соображений приватности, из-за корпоративных политик или просто потому, что он включён по умолчанию в браузере.
Корпоративные сети. Сотрудник крупной компании может выходить в интернет через шлюз в другой стране.
Ошибки геобаз. Соответствие адресов странам — не точная наука. Диапазоны переезжают между операторами, базы обновляются с задержкой.
Что происходит на практике
Заблокированный человек не пишет в поддержку. Он видит отказ, пожимает плечами и уходит. Владелец сайта об этом не узнаёт никогда: в статистике такого визита нет, потому что счётчик не сработал.
Это общее свойство всех ошибок защиты, но у географии оно проявляется особенно ярко: правило работает молча и массово.
Когда это всё-таки уместно
Есть случаи, где ограничение по географии осмысленно.
Административная часть. Если в админку заходят только из офиса в одном городе — закрыть всё остальное разумно. Здесь цена ошибки низкая: пострадавший знает, куда написать.
Формы, а не весь сайт. Можно не блокировать просмотр, но требовать проверку при отправке заявки из неожиданной страны.
Точечный ответ на конкретную атаку. Идёт вал из одной сети — закрыли на сутки, дальше вернули. Временная мера, а не постоянная настройка.
Что вместо
Смотреть на поведение, а не на происхождение. Темп обращений, последовательность путей, признаки браузера, загружает ли клиент картинки. Эти признаки не зависят от того, откуда пришёл посетитель, и не задевают человека в отпуске.
Если очень хочется учесть географию — используйте её как один из доводов, а не как приговор. Странная страна плюс библиотека в User-Agent плюс сорок страниц в минуту — уже разговор. Одна странная страна — нет.
Решение по теме
Термины из статьи
Как это настроить в BotBan
Читайте также
- Сколько ботов приходит на сайты: данные 14 сайтов за 30 дней Месяц журнала 14 сайтов, 20,3 млн запросов к страницам: больше половины движок счёл подозрительными. Объясняем, откуда такая цифра, почему людей при этом не задевают и почему в рекламе ботов почти нет, а в формах — треть.
- Проверка сайта на ботов: бесплатные инструменты и что они на самом деле показывают Метрика не видит тех, кто не выполняет скрипт, лог не отличает Chrome от программы, назвавшейся Chrome, а проверка адреса ничего не знает о запросе. Разбираем пять бесплатных способов проверить сайт на ботов и слепое пятно каждого.
- Хостинг пишет о превышении нагрузки: как понять, что это боты, и что делать Процессорное время на хостинге кончается не от покупателей. Разбираем, как по логам за десять минут понять, кто грузит сайт, и почему переход на тариф дороже обычно ничего не решает.