Блог ITSE

Многоуровневая защита сайта от ботов: как работают PoW и JavaScript Challenge

Источник изображения: freepik

Многоуровневая защита сайтов: как сочетание JavaScript-проверок и Proof of Work останавливает ботов

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

Какой принцип работы нашей защиты?

Система работает по многоуровневой схеме, последовательно отсеивая нежелательный трафик.
  1. Белый список. На первом этапе проверяются IP-адрес и DNS-записи (PTR) посетителя. Известные поисковые боты (Google, Yandex, Bing) попадают в белый список и пропускаются сразу.
  2. Верификация по cookie. Обычные пользователи, которые уже прошли проверку ранее, получают специальную cookie. Она действует как временный пропуск (обычно в течение часа) и позволяет избежать повторных проверок.
  3. JavaScript Challenge. Если cookie отсутствует, браузер пользователя получает задание на выполнение фоновых проверок. Система анализирует наличие реального браузера, работу JavaScript, разрешение экрана и другие параметры (например, Canvas fingerprint) для выявления эмуляции.
  4. Proof of Work (PoW). Ключевой и самый ресурсоемкий для ботов этап. Браузер должен решить вычислительную задачу, например, подобрать nonce так, чтобы хеш SHA-256 начинался с заданного числа нулей. Для обычного компьютера это занимает 1-3 секунды, но делает массовые автоматические запросы крайне дорогими.

В чем эффективность?

Такая архитектура обеспечивает защиту от широкого спектра угроз: DDoS-атак, скрейперов, спам-ботов, брутфорса и накрутки метрик. Для злоумышленников массовые атаки становятся экономически невыгодными из-за высокой стоимости вычислений PoW для каждого запроса. Например, автоматизированный запуск поиска уязвимостей становится затруднителен, поэтому малоэффективен, если включить нашу защиту.

Для реальных пользователей процесс практически незаметен: основная проверка происходит один раз в час и длится несколько секунд. Система дополняется кешированием результатов, использованием Redis для скорости и блокировкой подозрительных IP-адресов.
Наша система защиты использует комплексный подход, избирательно усложняя доступ для нежелательного трафика. Она максимально удобная для пользователей и поисковых систем, при этом является серьёзным препятствия для автоматизированных атак. Это делает наше решения одним из эффективных инструментов в борьбе с нежелательным трафиком на проектах.

Сколько стоит?

Нашу готовую авторскую защиту мы устанавливаем за 4 часа технической поддержки на VDS.
Поддержка