Grav-plugin-admin: Страница входа уязвима для атаки грубой силы

Созданный на 3 нояб. 2016  ·  14Комментарии  ·  Источник: getgrav/grav-plugin-admin

Панель администратора уязвима для атак методом перебора. Страница входа (/admin) возвращает код, если пользователь существует, и другой код, если пользователь не существует, и нет препятствий, мешающих автоматизированным системам пытаться это сделать. Мне не очень нравится эта идея, но я думаю, что самый простой способ немедленно исправить это — вставить капчу. Другой альтернативой (не знаю, насколько эффективной) может быть ограничение количества попыток с одного и того же IP-адреса в день.

Страница забытого пароля также уязвима... Когда вы пытаетесь запросить ссылку на забытый пароль, система подтверждает, зарегистрирован ли адрес электронной почты или нет. Я бы предложил изменить его на более общее сообщение, такое как «Если это зарегистрированный адрес электронной почты, на него была отправлена ​​ссылка для восстановления. Если вы не получили ссылку, обратитесь к администратору вашего сайта» или что-то в этом роде. .. но я не совсем уверен, что этого будет достаточно. Может быть, кто-то с большим опытом может захотеть изучить это.

enhancement

Самый полезный комментарий

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

Все 14 Комментарий

Я бы просто использовал одно сообщение об ошибке, указывающее что-то вроде: Incorrect username or password. Эти изменения (включая изменение строки забытого пароля) сделают невозможным угадывание имен пользователей в любой из форм.

Я бы не стал ограничивать доступ по IP-адресам, но добавление капчи в качестве опции — неплохая идея.

Мне не очень нравится опция капчи, но если она должна быть добавлена, можем ли мы, по крайней мере, активировать ее только после нескольких неудачных попыток (например, 3 или что-то в этом роде)?

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

Функция забытого пароля была изменена в бета-версии плагина входа в систему. Теперь он принимает только адреса электронной почты.

Кроме того, отредактировано для печати одного и того же сообщения независимо от того, существует ли электронное письмо или нет, в https://github.com/getgrav/grav-plugin-login/commit/3e7c20fd66639123cfb2894d9298d4ccfb861af9 .

Регистрация неудачных попыток также была бы хороша для fail2ban и т. Д. :)

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

Плагин входа теперь имеет раздел безопасности в своей конфигурации для управления этим: https://github.com/getgrav/grav-plugin-login/commit/590f188189c8453afb5992e7ec385795336ee711 .

Еще было бы неплохо иметь ВАРИАНТ для капчи. Кроме того, защита от флуда, похоже, вообще не работает.
Grav никогда не мешает вам вводить пароли даже при включенных функциях безопасности. Он также не увеличивает время между попытками входа в систему.

Я что-то не так делаю или плагин просто сломался?

На самом деле защита от грубой силы плагина входа в систему не распространяется на администратора (моя ошибка в написании противоположного здесь). В Admin у вас есть возможность добавить защиту на уровне веб-сервера (например, htaccess/htpasswd в Apache), а также ограничить диапазон IP-адресов, пока эта функция не появится и в Admin.

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

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

Надеюсь на скорое обновление по этому поводу :)

РЕДАКТИРОВАТЬ: решение .htaccess в значительной степени убивает все css на странице администратора. Что более или менее делает его непригодным для использования.

В настоящее время лучшее, что вы можете сделать для повышения безопасности администратора, — это скрыть страницу администратора, переименовав ее, например:
https://learn.getgrav.org/admin-panel/faq#custom-admin-url
Я очень надеюсь, что скоро появится защита входа для администратора, так как это не позволяет мне использовать ее на корпоративном сайте.

На самом деле защита от грубой силы плагина входа в систему не распространяется на администратора (моя ошибка в написании противоположного здесь). В Admin у вас есть возможность добавить защиту на уровне веб-сервера (например, htaccess/htpasswd в Apache), а также ограничить диапазон IP-адресов, пока эта функция не появится и в Admin.

Защита от грубой силы, похоже, работает на моей странице входа в систему администратора. Он также есть в документах . Комментарий устарел или я чего не понимаю?

Также кто-нибудь знает, как заставить Grav работать с fail2ban?

Мое альтернативное решение работает, только если у вас есть FTP-доступ ко всем вашим серверам/хостингу.

Вы можете отредактировать .htaccess, чтобы только ваш конкретный IP-адрес мог читать папку /admin/. Любой другой IP-адрес (и последующие боты) не смогут загрузить содержимое папки.

Раньше я использовал этот метод, чтобы запретить все, кроме моего собственного IP-адреса... чтобы проверить, работает ли сайт сборки, перед его запуском. Это было до того, как вы смогли запустить локальный веб-сервер. Возможно, это все еще работает для тех немногих пользователей, которые боятся и хотят полного контроля только со своего IP.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги