Различные методы брутфорс атак CMS WordPress и выбор хостинга

В этой расскажу о том, как взламывают учетные данные сайтов на CMS WordPress с помощью брутфорс атак.

Содержание:

  • Предварительные требования
  • WPscan
  • Metasploit
  • Люкс Burp
  • Как обезопасить сайт от брутфорса?

Предварительные требования

  • Сайт на WordPress. Здесь мы будем использовать собственную лабораторию для пентеста, о созданию которой был посвящен наш предыдущий пост.
  • Kali Linux (WPscan). Более подробно о WPScan и его возможностях мы уже писали, а вместо Kali Linux можно использовать любую другую из ОС для белого хакинга.
  • Burp Suite (Intruder). Более подробно о данном инструменте можно узнать здесь.

WPscan

WPscan – это фреймворк, который используется в качестве сканера уязвимостей методом «черного ящика». WPscan предустановлен в большинстве дистрибутивов Linux, ориентированных на безопасность, а также доступен в виде подключаемого модуля.

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

Во время перебора можно использовать:

  • Собственные общие списки логинов и паролей
  • Базы логинов и паролей, которые уже есть в Kali Linux

В данном случая был использован файл паролей rockyou.txt, который предоставляется со стандартной Kali Linux и содержит 14 341 564 уникальных пароля.

wpscan --url http://192.168.1.100/wordpress/ -U users.txt -P /usr/share/wordlists/rockyou.txt
  • –URL — это параметр URL-адреса, за которым следует URL-адрес веб-сайта WordPress для сканирования.
  • -U будет перебирать только указанные имена пользователей, в нашем случае это users.txt
  • -P перебор паролей из предоставленного списка rockyou.txt

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

Атака прошла успешно и на экране видим совпадение логина admin и пароля flower.

Metasploit

Metasploit также идет предустановленным в Kali Linux. Первым делом нужно попасть в консоль Metasploit, а затем запустить модуль WordPress. Этот модуль msf будет запускать проверку логинов и паролей. Сначала будут проверены имена пользователей, а затем с ними будут сопоставлены пароли.

msf > use auxiliary/scanner/http/wordpress_login_enum
msf auxiliary(wordpress_login_enum) > set rhosts 192.168.1.100
msf auxiliary(wordpress_login_enum) > set targeturi /wordpress
msf auxiliary(wordpress_login_enum) > set user_file user.txt
msf auxiliary(wordpress_login_enum) > set pass_file pass.txt
msf auxiliary(wordpress_login_enum) > exploit

Как и в предыдущем случае атака прошла успешно, в результате которой были полчены:

  • Логин: admin
  • Пароль: flower

Burp Suite

Можно опять использовать предустановленную в Kali версию или скачать Burp Suite Community Edition. Далее запускаем Burp Suite и открываем страницу входа в WordPress. Затем включаем вкладку перехвата в Burp Proxy. Далее вводим любое имя пользователя и пароль по вашему выбору для входа на сайт WordPress. Это перехватит ответ текущего запроса.

Посмотрите на изображение ниже и обратите внимание на последнюю строку перехваченного сообщения, где указаны учетные данные для входа как raj: raj, которые были использованы для входа в систему. Теперь нужно отправить эти данные в Intruder, что можно сделать с помощью сочетания клавиш ctrl + I или выбрав опцию Send to Intrude в контекстном меню.

Теперь открываем вкладку Intruder и видим запрос базового шаблона, который был сюда отправлен. Выбираем Positions, где по умолчанию активно несколько позиций, которые помечены символами §. Все, что находится между двумя символами §, заменяется полезной нагрузкой. Но сейчас все они нам не нужны, поэтому нажмите кнопку очистки в правом нижнем углу окна редактора.

Выбираем позиции, как показано на скриншоте, а также нажимаем кнопку add справа. Это настроит выбранные позиции как точки вставки полезной нагрузки. Теперь выбираем тип атаки.
Поскольку у нас есть 2 позиции полезной нагрузки, то выберем cluster bomb. Этот метод брутфорса очень эффективен в нашем случае. Он помещает первую полезную нагрузку в первую позицию, а вторую полезную нагрузку во вторую позицию. Но когда он проходит через наборы полезных данных, то пробует все комбинации. Например, когда есть 1000 логинов и 1000 паролей, тогда будет выполнено 1 000 000 запросов.

Теперь нажимаем кнопку start attack.

На вкладке payloads в раскрывающемся списке можно увидеть числа 1 и 2. Выберите 1 для первой позиции полезной нагрузки и установите для него простой список. В простой список можно вручную добавлять элементы с помощью кнопки add , а также вставлять список с помощью буфера обмена или загрузки из файла.

Аналогично ставим цифру 2 для другой позиции и выбираем для нее Runtime file, что полезно при работе с большими списками. Указываем путь к любому файлу-словарю, который содержит только список паролей. Нажимаем start attack.

Обратив внимание на статус и длину полезных данных, где видно, что учетные данные admin и flower имеют статус 302 и длину 1203, что отличается от всех других комбинаций. Это значит, что логин: admin и пароль flower – именно то, что мы хотели получить.

Как избежать брутфорса?

Конечно, этих атак можно избежать, используя следующие меры предосторожности:

Длина пароля

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

Сложность пароля

Надежный пароль должен состоять из:

  • Символов верхнего регистра (A)
  • Символов нижнего регистра (a)
  • Цифр
  • Специальных символов

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

Ограничение попыток входа в систему

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

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

Двухфакторная аутентификация

Следующий способ защиты от брутфорса – двухфакторная аутентификация или 2FA. Обычно в качестве второго подтверждения используют телефон или почту.

Captcha

Установить капчу на WordPress довольно просто, например, с помощью многочисленных плагинов. Капча поможет предотвратить ботами выполнение автоматических скриптов для входа в вашу учетную запись.

Плагин брандмауэра WordPress

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

Подключить СDN сервис

CDN (Content Delivery Network) — сеть доставки и дистрибуции контента, более подробно о которой можно узнать здесь. Для нас главное, что CDN обеспечивают надежную защиту от брутфорса.

Топ 6 CDN c бесплатными решениями для WordPress:

  • Cloudflare
  • Jetpack
  • Swarmify
  • Amazon CloudFront (1 год бесплатного доступа)
  • Incapsula
  • JS Deliver

Установить и настроить бэкап плагин

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

Отключение просмотра каталогов и автоматических обновлений

Еще один способ снизить риск брутфорс атаки для сайта на WordPress.

Хостинг

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

  1. SpaceWeb. Оптимален по цене, очень хорош его базовый тариф “Взлет”, 5 сайтов за 200 рублей в месяц, и со скидкой при оплате за год выйдет в районе 160р. Также, есть удобное мобильное приложение под андроид и айос, удобно контролировать нагрузку на железо и БД, обращаться в поддержку (которая реально помогает) и оплачивать сам хостинг. Перенос сайтов на их хостинг у них есть и услуга бесплатная. Ссылка на тарифы. Промокод: bieriteh

  1. Beget. Один из аксакалов российского мира веб-хостинга. Очень надежен. Поддержка такая же быстрая и адекватная, как у спейс, но тарифы чуть подороже. Базовый тариф “Блог” стоит 280 рублей в месяц, при оплате за год будет 220р. выходить. Так же есть удобное мобильное приложение. Огромный список доступных доменов для регистрации и самые оптимальные цены на продление доменов. Например, я держу хостинг на спейсе, а все домены на бегете, которые новые завожу, все остальное у меня пока на рег.ру. Тоже крайне рекомендую. Ссылка на тарифы. Промокод: отсутствует

  1. Reg.ru. Один из самых старых и самых популярных провайдеров хостинга и доменов. Многие туда идут, потому что не хотят долго вникать в вопрос. Цены на домены выше, чем у вышеупомянутых конкурентов, за то базовый тариф виртуального хостинга очень даже ничего: Host-A от 186 рублей в месяц. личный кабинет не нагружен, все понятно даже новичку. Рекомендую тем, у кого мало сайтов и доменов, кто не хочет заморачиваться и кому не понравились первые два варианта. Мобильного приложения, к сожалению, нет, но часто ли мы им пользуемся? 😉 Ссылка на тарифы. Промокод на скидку 5%: 7D39-7452-50CF-3055

У всех трех хостеров есть защита от DDoS.

Источник: habr.com

Добавить комментарий