Безопасен ли drupal от атак с использованием грубой силы?

9

Атака грубой силой - это попытка получить несанкционированный доступ к веб-сайту, постоянно генерируя и вводя различные комбинации пароля. Эта задача обычно выполняется программным обеспечением автоматизации («бот»), которое ищет сообщения об успехе или сбое и продолжает пробовать новые пароли, пока не получит сообщение об успехе.

Drupal 7 безопасен от него по умолчанию? что является более безопасной конфигурацией для него? Какой модуль может помочь мне для более безопасного входа?

Юсеф
источник
1
Ответ зависит от того, о какой атаке вы говорите. Вы имеете в виду грубую атаку, когда злоумышленник догадывается, что у пользователя «admin» есть пароль «Password1», а затем догадывается, что пароль «javagod»?
Григглс
да, в качестве заголовка вопроса брутфорс атакой при входе в систему :(
Юсеф

Ответы:

12

Как видно из кода, функция user_login_final_validate регистрирует событие потока. Это означает, что если один и тот же IP попытаться подключить пароль пользователя / логин много раз, мы будем «забанены» некоторое время.

Это одна из мер защиты, которые предлагает Drupal. Еще один, и я думаю, что если это произойдет с вашим веб-сайтом, вы заметите это очень быстро, это токен CSRF, который Drupal генерирует для каждой формы.

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

Айван
источник
Для имитации формы входа в систему вам просто нужно скопировать / вставить форму входа в drupal. Вы можете протестировать ее, если скопируете / вставите html другого сайта drupal в свой локальный тестовый файл (просто убедитесь, что действие формы абсолютно перенаправлено на domain.com/user/ войти в систему ), запустить его локально, заполнить его действительным пользователем и передать вы вошли в систему !!!!!
Юсеф
Эта форма будет работать до тех пор, пока Drupal будет кэшироваться в своей базе данных токеном (и формой). После истечения срока действия кэша ваша форма не будет работать.
Иван
Я очистил кеш, но работаю до сих пор
Юсеф
1
Защита CSRF может быть отключена и отключена в форме входа. Это также отключено в форме поиска. Но, как сказал Иван, защита от наводнений предотвращает атаки грубой силы на саму форму. Это не помешает распределенной атаке со стороны кого-либо, имеющего доступ к ботнету, но анализ журнала (что-то вроде Droptor), который ищет повторяющиеся неудачные входы в систему для одного и того же пользователя, исправит это.
Григглс
3

В дополнение к хорошим мерам, которые реализует Drupal 7 для прекращения попыток входа в систему, я бы предложил установить модуль Spambot , который конкретно занимается попытками регистрации новых пользователей.

При каждой новой регистрации пользователя этот модуль будет запрашивать сервер Stop Forum Spam, чтобы узнать, является ли пользователь, пытающийся зарегистрироваться, известным ботом.

При желании вы можете внести свой вклад в Stop Forum Spam с помощью попыток регистрации на вашем сайте.

ermannob
источник
3

Есть контроль потока

Этот проект предназначен для добавления интерфейса администрирования для скрытых переменных управления потоком в Drupal 7, таких как ограничители попыток входа в систему и любые будущие скрытые переменные.

Функции для определения и взаимодействия с основной системой контроля паводков

Система затопления предоставляет нам три функции:

flood_register_event($name, $window = 3600, $identifier = NULL)

Зарегистрируйте событие для текущего посетителя в механизме контроля паводков.

flood_clear_event($name, $identifier = NULL)

Заставьте механизм контроля наводнений забыть о событии для текущего посетителя.

flood_is_allowed($name, $threshold, $window = 3600, $identifier = NULL)

Проверяет, разрешено ли пользователю выполнять указанное событие. По сути, мы проверяем, есть ли у пользователя доступ, вызывая flood_is_allowed. Если он возвращает FALSE, бросьте «Отказано в доступе». Всякий раз, когда пользователь выполняет действие, мы вызываем flood_register_event.

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

Выше скопировано из игры с системой затопления Drupal

niksmac
источник
1
Пожалуйста, не копируйте и не вставляйте из Интернета без надлежащей ссылки на источник
Клайв
1
@Clive, я позабочусь об этом отныне. И это то, что я хочу передать, хотя.
Никсмак
0

Подумав (и имея) эту проблему, я написал модуль, который позволяет вам предотвращать подобные атаки: https://drupal.org/project/AntispammerBot

Вы можете выбрать, какие роли являются безопасными, сколько узлов пользователь может опубликовать, прежде чем считать это спам-атакой и т. Д ...

Алехандро Морено
источник