Содержание статьи
cap_setuid
. И все это ради прохождения легкой машины Cap с площадки Hack The Box.warning
Подключаться к машинам с HTB рекомендуется только через VPN. Не делай этого с компьютеров, где есть важные для тебя данные, так как ты окажешься в общей сети с другими участниками.
Разведка. Сканирование портов
Добавляем IP-адрес машины в /
:
10.10.10.245 cap.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-сервер vsftpd 3.0.3), 22 (служба SSH 8.2p1) и 80 (веб‑сервер gunicorn).
Справка: брутфорс учеток
Поскольку в начале прохождения у нас нет учетных данных, нет и смысла изучать службы, которые всегда требуют авторизации (например, SSH). Единственное, что мы можем делать здесь, — это перебирать пароли брутфорсом, но у машин с HTB почти всегда есть другое прохождение. В жизни таких вариантов может не быть, к тому же есть шансы подобрать пароль или получить его при помощи социальной инженерии.
Посмотрим, не доступно ли что‑то на FTP анонимным пользователям.
Ничего не получилось, поэтому нам нужно «пробивать» веб.
Точка входа. Сканирование веб-контента
Поищем, нет ли чего‑нибудь интересного на сайте. Наша цель — определить вектор дальнейшей атаки, но по дороге нужно собирать и другую информацию: имена пользователей, используемые технологии и прочее.
На сайте нас встречает какая‑то статистика, а также есть следующие страницы:
- Security Snapchat — показывает протоколы и количество сетевых пакетов;
- IP Config — на этой странице отображается информация о сетевых интерфейсах;
- Network Status — показаны конфигурации сети.
Давай перейдем к странице Security Snapchat. Нам предоставлена возможность что‑то скачать, сделаем это.
Открыв файл (я для этого использовал Wireshark), обнаружим, что он пуст. Видимо, статистика по сетевым пакетам, которая отображается на странице, собрана именно по этому файлу.
Больше всего меня заинтересовал URL, по которому был получен файл, — http://
. У меня возникла идея перебрать подобные страницы, чтобы найти файл с трафиком. Сначала сгенерируем словарь, содержащий числа 0–99 и 00–09. Это можно сделать с помощью известного приложения для генерации словарей crunch. В параметрах указываем минимальную длину последовательности, максимальную длину последовательности и набор символов.
crunch 1 2 0123456789 > list.txt
Теперь просканируем содержимое директории /
, к примеру с помощью ffuf, которому в качестве параметров нужно передать список для перебора (опция -w
) и URL (опция -u
). Место, куда будут подставляться слова из списка, пометим последовательностью FUZZ
. Так как интересны адреса, которые вернут код 200, укажем это в параметре -mc
.
ffuf -w list.txt -u http://cap.htb/data/FUZZ -mc 200
Заходя на разные страницы, мы видим число пакетов в том или ином дампе трафика. Так можно определить, что если размер ответа равен 17 144 байтам, то соответствующий дамп будет пуст. Наша теория подтвердилась после того, как мы открыли страницу номер 22, размер которой составляет 17 154 байта. С нее мы можем скачать непустой дамп трафика.
Но в этом дампе ничего существенного найти не удалось. Он всего лишь содержал различные HTTP-запросы. Чтобы не просматривать каждую страницу отдельно и не искать что‑то интересное в каждом скачанном дампе, я решил посмотреть, как организована загрузка, файла через Burp Pro. Каждый файл загружается при обращении к соответствующей странице в каталоге /
.
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»