Содержание статьи
Наша конечная цель — получение прав суперпользователя на машине Dog с учебной площадки Hack The Box. Уровень ее сложности — легкий.
warning
Подключаться к машинам с HTB рекомендуется с применением средств анонимизации и виртуализации. Не делай этого с компьютера, где есть важные для тебя данные, так как ты окажешься в общей сети с другими участниками.
Разведка
Сканирование портов
Добавляем IP-адрес машины в /
:
10.10.11.58 dog.htb
И запускаем сканирование портов.
Справка: сканирование портов
Сканирование портов — стандартный первый шаг при любой атаке. Он позволяет атакующему узнать, какие службы на хосте принимают соединение. На основе этой информации выбирается следующий шаг к получению точки входа.
Наиболее известный инструмент для сканирования — это Nmap. Улучшить результаты его работы ты можешь при помощи следующего скрипта:
#!/bin/bashports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr '' ',' | sed s/,$//)nmap -p$ports -A $1
Он действует в два этапа. На первом производится обычное быстрое сканирование, на втором — более тщательное сканирование с использованием имеющихся скриптов (опция -A
).

Сканер нашел два открытых порта:
- 22 — служба OpenSSH 7.9p1;
- 80 — веб‑сервер Apache 2.4.38.
Из отчета nmap видно, что на веб‑сервере есть файл robots.
, а также репозиторий Git.

Точка входа
Первым делом попробуем выкачать весь репозиторий с помощью git-dumper.
git-dumper http://dog.htb dog
Затем просмотрим историю коммитов через VSCodium.

В истории коммитов ничего интересного нет, однако мы узнаем, что используется Backdrop CMS. Быстрый поиск по слову version позволяет найти версию CMS.

Первым делом стоит проверить, есть ли для обнаруженной системы готовые эксплоиты. С этим вопросом отправляемся в Google.

По первой ссылке находим инструкцию о том, как загрузить свой модуль и получить RCE (возможность удаленного выполнения кода). Однако для этого нам нужно сначала как‑то попасть в админку. Поищем учетные данные в файле settings.
, где содержатся настройки для подключения к базе данных MySQL.

Находим пароль, но у нас нет логина. Поищем по домену — и находим e-mail пользователя.

Продолжение доступно только участникам
Материалы из последних выпусков становятся доступны по отдельности только через два месяца после публикации. Чтобы продолжить чтение, необходимо стать участником сообщества «Xakep.ru».
Присоединяйся к сообществу «Xakep.ru»!
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее