В этой записи я подробно покажу вам, как искать скрытые данные на сайте, затем мы углубимся в их источники и получим RCE при использовании Race Condition. Для полного захвата хоста мы используем баг в программе Python и применяем одну из методик GTFOBins.

Наша цель — захватить тренировочную машину UpDown с сайта Взломать коробку. Уровень сложности отмечен как средний.

предупреждение

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

разведка

Сканирование портов

Добавьте IP-адрес машины /etc/hosts: :

И запус­каем ска­ниро­вание пор­тов.

Справка: сканирование портов

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

На­ибо­лее извес­тный инс­тру­мент для ска­ниро­вания — это Nmap. Улуч­шить резуль­таты его работы ты можешь при помощи сле­дующе­го скрип­та:

#!/bin/bash

ports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)

nmap -p$ports -A $1

Он работает в два этапа. Первый выполняет обычное быстрое сканирование, второй — более тщательное сканирование с использованием доступных скриптов (опция -A).

Результат скрипта

Мы нашли два открытых порта: 22 — сервис OpenSSH 8.2p1 и 80 — веб-сервер Apache 2.4.41. На веб-сервере нас встречает чекер сайта.

Главная страница сайта updown.htb
Главная страница сайта updown.htb

На главной странице указан настоящий домен - siteisup.htb. Итак, добавим запись в файл /etc/hosts: :

10.10.11.177 updown.htb siteisup.htb

Поэтому я попытался отправить запрос на свой простой HTTP-сервер, который можно запустить с помощью команды python3 -m http.server 80. В результате я получил ответ, содержащий HTML-страницу в текстовом виде, а в логах своего сервера увидел следующий GET-запрос.

Результат проверки хоста
Результат проверки хоста

Больше ничего интересного на сайте мы не нашли, поэтому начали сканирование.

Справка: веб-сканирование с помощью ffuf

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

Я предпочитаю легкий и очень быстрый фу. В начале укажите следующие параметры:

  • -w - словарь (я использовал словари из набора Списки сек);
  • -t - количество потоков;
  • -u - URL.

Мы начинаем фу: :

ffuf -u 'http://siteisup.htb/FUZZ' -w directory_2.3_medium_lowercase.txt -t 256

Результат сканирования каталога с помощью ffuf
Результат сканирования каталога с помощью ffuf

Находим интересный каталог dev и повторите сканирование уже в нем.

ffuf -u 'http://siteisup.htb/dev/FUZZ' -w files_interesting.txt -t 256

Результат сканирования файлов с помощью ffuf
Результат сканирования файлов с помощью ffuf

И мы находим репозиторий Git, а это явная точка входа.

Входная точка

Теперь нам нужно сделать дамп найденного репозитория, для чего есть набор скриптов dvcs-риппер или специальные средства git-дампер. На этот раз воспользуемся вторым.

git-dumper http://siteisup.htb/dev/ dev

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

Представление репозитория в gitk
Представление репозитория в gitk

Найдите файл в репозитории admin.php, которого нет на самом сайте, а значит надо найти новый сайт. Для этого используйте ffuf для сканирования поддоменов. В начале добавьте параметр -H - HTTP-заголовок.

ffuf -u http://siteisup.htb/ -t 256 -w subdomains-top1million-110000.txt -H 'Host: FUZZ.siteisup.htb'

Результат сканирования поддоменов с помощью ffuf
Результат сканирования поддоменов с помощью ffuf

Находим поддомен dev и добавляем в файл /etc/hosts.

10.10.11.177 updown.htb siteisup.htb dev.siteisup.htb

Но сайт недоступен.

Ошибка доступа к сайту
Ошибка доступа к сайту

Source

ЧИТАТЬ  грустный охранник Найти и использовать уязвимость в драйвере AdGuard для Windows

от admin