Проверка надежности пароля пользователей WordPress с помощью WPScan

WordPress

Есть много вещей, которые вы можете сделать, чтобы ваш сайт WordPress был защищен. Вот несколько примеров: поддержание плагинов и тем в актуальном состоянии или внедрение брандмауэра на вашем сайте.

Однако если у вас слабые пароли и ненадёжная система входа в систему, это вряд ли помешает злоумышленникам получить доступ к вашему сайту.

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

Один из шагов, которые вы можете предпринять, — это принудительное использование надежных паролей с помощью плагина политики паролей, например, Melapress Login Security. Тем не менее, все равно хорошей идеей будет регулярно проверять надежность паролей учетных записей пользователей на вашем сайте WordPress. После того, как вы определили пользователей, которые используют слабые пароли, вы можете попросить их сбросить свои пароли.

В этом руководстве мы предоставим пошаговые инструкции по проверке надежности паролей пользователей WordPress с помощью WPScan.

Содержание
  1. Что такое WPScan и как он работает?
  2. Найти версию WordPress
  3. Список активных плагинов и тем
  4. Перечислить пользователей
  5. Атаки методом перебора для определения паролей
  6. Как проверить надежность пароля с помощью WPScan
  7. Получить файл паролей
  8. Проверка надежности пароля отдельного пользователя
  9. Проверка надежности паролей нескольких пользователей
  10. Ускорьте сканирование паролей
  11. Как гарантировать, что пользователи используют надежные пароли?
  12. Используйте надежные пароли
  13. Рекомендовать пользователям менеджеры паролей
  14. Обеспечить соблюдение политик входа в систему
  15. Настройте политики паролей для каждой роли
  16. Измените URL-адрес входа в WordPress по умолчанию
  17. Внедрите 2FA для большей безопасности
  18. Сделайте процесс настройки 2FA простым
  19. Позвольте пользователям выбирать из нескольких методов 2FA
  20. Разрешить пользователям добавлять доверенные устройства
  21. Предоставьте резервные методы аутентификации
  22. Заключение

Что такое WPScan и как он работает?

WPScan — популярный, бесплатный инструмент командной строки с открытым исходным кодом, который помогает людям выявлять уязвимости на своих сайтах WordPress.

Он работает, активно сканируя сайт WordPress, чтобы найти информацию, такую ​​как версия WordPress, активные плагины и темы, имена пользователей и т. д. Давайте посмотрим, как WPScan это делает:

Найти версию WordPress

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

Одним из способов, с помощью которых WPScan определяет версию WordPress на вашем сайте, является просмотр заголовка ответа HTTP Etag для файла /wp-admin/load-styles.php.

Найдите версию WordPress с помощью WPScan

В нашем случае версия WordPress — 6.4.3, что является последней версией на момент сканирования.

Список активных плагинов и тем

Плагины и темы веб-сайтов также могут иметь уязвимости.

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

Список активных тем и плагинов с помощью WPScan

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

WPScan поддерживает актуальную базу данных известных уязвимостей в ядре WordPress, плагинах и темах. Если WP Scan обнаружит уязвимую тему или плагин, он укажет ее здесь.

Перечислить пользователей

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

Перечисление пользователей WPScan

Давайте разберемся, как это делает WPScan.

Вы можете легко просмотреть все записи, связанные с определенным автором на сайте WordPress, если вы знаете его имя пользователя. Все, что вам нужно сделать, это посетить URL http://domain.com/author/nitish.

Здесь «nitish» — это имя пользователя автора, чьи посты вы хотите видеть.

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

Например, если автор с именем пользователя «nitish» имеет идентификатор пользователя 5, WordPress перенаправит URL-адрес http://domain.com/?author=5 на http://domain.com/author/nitish.

Как видите, перечисление идентификаторов пользователей по одному за раз предоставит WPScan имена пользователей соответствующих учетных записей.

Есть еще одна проблема.

Перенаправление с http://domain.com/?author=5 на http://domain.com/author/nitish произойдет независимо от того, является ли «nitish» фактическим автором или нет. Это означает, что этот метод также раскроет имена пользователей учетных записей, которые даже не являются авторами.

Злоумышленники могут использовать этот метод, чтобы получить имена пользователей всех учетных записей.

Атаки методом перебора для определения паролей

В предыдущем разделе мы обсудили, как WPScan может попытаться определить имя пользователя различных учетных записей WordPress.

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

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

Атака по словарю обычно так же проста, как попытка злоумышленника подобрать список распространенных паролей к имени пользователя. Если им повезет, они попадут на нужный и им разрешат войти.

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

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

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

Как проверить надежность пароля с помощью WPScan

Теперь мы обсудим, как можно проверить надежность паролей различных учетных записей пользователей, выполнив атаки методом перебора по словарю с помощью WPScan.

Получить файл паролей

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

Вместо того, чтобы самим создавать список случайных паролей, мы напрямую возьмем один из доступных в Интернете. У злоумышленников есть много таких списков паролей, доступных в их распоряжении, в результате всех утечек данных, с которыми крупные веб-сайты сталкивались на протяжении многих лет. Например, 15 миллионов записей клиентов были раскрыты в результате утечки данных на 000webhost.

Мы будем использовать список паролей из репозитория SecLists на GitHub. В репозитории есть несколько файлов паролей, которые вы можете использовать. Для нашего примера мы будем использовать файл словаря паролей Lizard-Squad.txt. В этом файле содержится список из примерно 12 000 наиболее часто используемых паролей.

Проверка надежности пароля отдельного пользователя

Мы можем смоделировать атаку методом подбора для проверки надежности пароля с помощью WPScan, выполнив следующую команду в терминале:

wpscan --url http://domain.com --passwords PASSWORD_FILE_PATH --usernames COMMA,SEPARATED,USERNAME,LIST

Эта команда имеет три параметра.

1: –url: этот параметр указывает URL-адрес веб-сайта, на котором мы хотим выполнить наши атаки методом перебора.

2: –passwords: Этот параметр указывает путь к файлу нашего словаря паролей. Это текстовый файл, который содержит каждый пароль на отдельной строке.

3: –usernames: Мы можем использовать этот параметр, чтобы указать список имен пользователей, разделенных запятыми, пароли которых мы хотим взломать.

В нашем случае точная команда WPScan для атаки методом перебора будет выглядеть так:

wpscan --url http://localhost/nit-wordpress/ --passwords Lizard-Squad.txt --usernames gary

Мы используем WPScan для подбора пароля только одного пользователя. Вы можете вспомнить, что нам удалось получить имя пользователя «gary» после перечисления пользователей с помощью WPScan.

Даже если файл паролей содержит действительный пароль, WPScan может потребоваться некоторое время, чтобы найти его.

Вот как должен выглядеть наш терминал после успешной атаки методом перебора.

Атака пароля WPScan

WPScan потребовалось около 3 минут, чтобы успешно угадать пароль входа. Как вы видите, WPScan пришлось перепробовать 810 паролей из примерно 12 000, перечисленных в файле паролей.

Проверка надежности паролей нескольких пользователей

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

Вот пример:

wpscan --url http://localhost/nit-wordpress/ --passwords Lizard-Squad.txt --usernames amanda,billy,paul

Выполнение указанной выше команды в терминале дало нам следующий вывод.

Результат атаки пароля WPScan

Для этой демонстрации мы намеренно создали фиктивные учетные записи со слабыми/распространенными паролями, чтобы WPScan мог взломать их довольно быстро. Проверка надежности паролей учетных записей пользователей вашего веб-сайта, скорее всего, займет больше времени.

Ускорьте сканирование паролей

Длительность взлома паролей зависит от нескольких факторов.

Если пароль находится где-то в начале файла паролей, его взлом займет всего пару минут. Однако время, необходимое для успешного взлома пароля учетной записи, может значительно увеличиться, если файл паролей большой, а правильный пароль находится в конце.

Один из способов ускорить этот процесс — увеличить количество запросов, которые WPScan делает за один раз.

По умолчанию WPScan делает 5 запросов за раз. Вы можете увеличить количество запросов до 50, используя параметр –max-threads.

Вот пример команды WPScan, которая выполняет 50 потоков одновременно:

wpscan –url http://localhost/nit-wordpress/ –пароли Lizard-Squad.txt –имена пользователей gary –макс-потоки 50

При увеличении количества потоков следует помнить о двух важных вещах:

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

2: Выполнение 50 потоков одновременно также может привести к перегрузке сервера, если у него недостаточно ресурсов.

Как гарантировать, что пользователи используют надежные пароли?

В предыдущем разделе мы увидели, как WPScan может взламывать пароли пользователей.

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

Одним из способов борьбы с проблемой слабых паролей является внедрение надежной политики паролей WordPress с помощью плагина MelaPress Login Security.

Используйте надежные пароли

Используйте надежные пароли в WordPress

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

Рекомендовать пользователям менеджеры паролей

Пользователям будет сложно запомнить надежные пароли. Использование менеджера паролей поможет пользователям легко управлять своими учетными данными для входа на нескольких веб-сайтах.

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

1Password и KeePass — некоторые популярные примеры менеджеров паролей.

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

Обеспечить соблюдение политик входа в систему

Настройте политики для ограничения попыток входа в WordPress

Другой способ снизить угрозу атак методом подбора пароля — ограничить попытки входа в систему. MelaPress Login Security позволяет блокировать учетные записи пользователей после того, как пользователь вводит неправильный пароль определенное количество раз.

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

Настройте политики паролей для каждой роли

WordPress позволяет учетным записям пользователей иметь различные роли, такие как Администратор, Редактор и Подписчик среди прочих. Различные роли пользователей имеют различные уровни доступа. Уровень доступа определяет, что они могут делать на веб-сайте.

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

К счастью, MelaPress Login Security позволяет вам настраивать правила политики паролей на основе ролей пользователей. Вы можете установить другое значение для длины пароля, требуемых символов и даты истечения срока действия паролей среди прочего.

Таким образом, пользователи, не имеющие широких прав доступа, могут иметь несколько более мягкие требования к паролям.

Политики безопасности входа на основе ролей

Измените URL-адрес входа в WordPress по умолчанию

Измените URL-адрес входа в WordPress по умолчанию

Автоматизированные атаки обычно работают, предполагая, что веб-сайт использует страницу входа WordPress по умолчанию для аутентификации пользователей. Чтобы обеспечить дополнительный уровень безопасности, вы можете использовать плагин MelaPress Login Security, чтобы позволить пользователям входить через другую страницу.

Внедрите 2FA для большей безопасности

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

Но вы можете сделать больше.

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

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

Использование двухфакторной аутентификации, также называемой 2FA, поможет защитить учетные записи пользователей от несанкционированного доступа даже в случае кражи их учетных данных.

Это связано с тем, что любому, кто попытается войти в систему, придется подтвердить запрос, используя другой фактор аутентификации, например одноразовый пароль, полученный по электронной почте или по SMS. Вы можете использовать плагин WP 2FA для настройки двухфакторной аутентификации на своем веб-сайте WordPress.

Сделайте процесс настройки 2FA простым

2FA, без сомнения, повышает безопасность учетных записей пользователей. Однако пользователи могут не захотеть настраивать 2FA на своих учетных записях.

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

Есть несколько шагов, которые вы можете предпринять, чтобы сделать 2FA максимально удобной для пользователей, не ставя под угрозу безопасность.

Позвольте пользователям выбирать из нескольких методов 2FA

Пользователи, вероятно, будут иметь разные предпочтения относительно режима аутентификации 2FA. Хорошей идеей будет предоставить им возможность выбора из нескольких методов 2FA.

Несколько вариантов аутентификации 2FA в WordPress

Разрешить пользователям добавлять доверенные устройства

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

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

Вы можете задать некоторые условия, например, как долго устройство должно оставаться доверенным и когда оно должно снова запрашивать у пользователей код 2FA для повышения безопасности.

Доверенные устройства WordPress

Предоставьте резервные методы аутентификации

Обычно люди получают коды аутентификации на свои смартфоны через приложения, push-уведомления или SMS.

Однако они не всегда могут иметь телефон при себе или у них может разрядиться батарея.

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

Методы резервного копирования WordPress 2FA

Заключение

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

Если вы обнаружили учетную запись, использующую слабые пароли, хорошей идеей будет предупредить пользователя и побудить его использовать надежные пароли.

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

Наконец, внедрение 2FA гарантирует, что учетные записи пользователей останутся в безопасности даже в случае компрометации их учетных данных.

Оцените статью
Adblock
detector