Содержание статьи
Упражняться во всем этом мы будем на тренировочной машине MetaTwo с площадки Hack The Box. Уровень сложности — легкий.
warning
Подключаться к машинам с HTB рекомендуется только через VPN. Не делай этого с компьютеров, где есть важные для тебя данные, так как ты окажешься в общей сети с другими участниками.
Разведка
Сканирование портов
Добавляем IP-адрес машины в /
:
10.10.11.186 metatwo.htb
И запускаем сканирование портов.
Справка: сканирование портов
Сканирование портов — стандартный первый шаг при любой атаке. Он позволяет атакующему узнать, какие службы на хосте принимают соединение. На основе этой информации выбирается следующий шаг к получению точки входа.
Наиболее известный инструмент для сканирования — это Nmap. Улучшить результаты его работы ты можешь при помощи следующего скрипта:
#!/bin/bashports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)nmap -p$ports -A $1
Он действует в два этапа. На первом производится обычное быстрое сканирование, на втором — более тщательное сканирование, с использованием имеющихся скриптов (опция -A
).
Скрипт нашел три открытых порта:
- 21 — служба FTP;
- 22 — служба OpenSSH 8.4p1;
- 80 — веб‑сервер Nginx 1.18.0.
На SSH без учетных данных ничего не сделать, служба FTP анонимную авторизацию не разрешает, поэтому идем смотреть веб‑сайт. Притом, как видим из результата сканирования, выполняется редирект на сайт http://
. Новый домен добавляем в файл /
.
10.10.11.186 metatwo.htb metapress.htb
Точка входа
На самой странице находим упоминание CMS WordPress.
При тестировании сайтов на WordPress я рекомендую использовать утилиту wpscan. Программа позволяет получить информацию как о самой CMS, так и об установленных плагинах и темах, обнаружить действующих пользователей и даже пробрутить форму авторизации. Запускаем программу в режиме агрессивного сканирования всех плагинов в 128 потоков.
wpscan --url http://metapress.htb -e p --plugins-detection aggressive -t 128
Просканировать плагины у нас толком не вышло, так как процесс сильно замедляется, а словарь очень большой. Зато поиск эксплоитов к этой версии CMS дал результат. Правда, найденный мной эксплоит требует авторизованного доступа, поэтому отметим его на будущее.
Теперь составим карту сайта, чтобы понимать область тестирования. При этом можно найти интересные адреса, которых мы еще не видели. Сканировать и составлять карту можно прямо в Burp, достаточно выбрать в контекстном меню Engagement tools → Discover content.
По созданной карте сайта видно, что установлен плагин BookingPress версии 1.0.10. Как всегда, сразу проверяем, нет ли готовых эксплоитов для этой версии плагина.
Находим эксплоит, который работает без авторизации.
Точка опоры
SQL Injection
В описании к эксплоиту есть готовый запрос.
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»