Как предотвратить атаки методом перебора / словаря?

В течение нескольких месяцев мы замечали попытки атак грубой силой на нашем сайте.

Злоумышленник запускает несколько попыток входа в систему с широкого диапазона IP-адресов (возможно, из ботнета) и нескольких имен пользователей и паролей. Некоторые из имен пользователей не существует в нашей базе данных, некоторые другие да. Так что я думаю, что они пытаются с известными учетными записями электронной почты.

Мы должны предотвратить эти атаки, потому что наш сервер баз данных увеличивает загрузку процессора.
Итак, наши варианты (после прочтения других ответов):

  • Блокировка учетных записей после Х числа неудачных попыток входа
  • Добавление капчи после Х числа неудачных попыток входа
  • Блокировка IP-адресов

Тем не менее, я думаю, что эти опции не решат проблему, потому что они пытаются с несколькими именами пользователей и IP-адресами.

Наш стек — это сервер Debian с Apache и PHP.

Есть ли эффективный способ избежать этого?

0

Решение

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

website.com/login

website.com/admin

-1

Другие решения

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

это статья объясняет алгоритмы безопасного входа и возможные угрозы безопасности, включая Brute Force атака.

-1