LIMB
Вход Регистрация

тема

Сертификация Penetration Tester на платформе Hack The Box Academy

mike_vazovski · · 6 ответов · 752 просмотров

Приветствую всех неравнодушных пацанов и девчуль, вещает Майк Вазовски.​

​

    Сегодня на обзоре 140 листовый отчет настоящего пентестера (игрушечного задрота) который проходил экзамен на международную сертификацию HTB Certified Penetration Testing Specialist (CPTS).​

Целью данной статьи будет не столько показать не стандратные (а может быть и стандартные) решения или подходы, а просто эталонный пример того, как не надо тратить деньги на всякую бумажную шелуху . Просто внести ясность тем, кому возможно это будет полезным или он захочет пройти данную историю.​

И так, начнем.​

Введение​

Этот отчет о тестировании на проникновение trilocor.local проводится в рамках экзамена на получение сертификата Certified Penetration Testing Specialist (CPTS) от Hack The Box. Отчет демонстрирует профессиональный подход к анализу уязвимостей, начиная с этапа разведки и заканчивая эскалацией привилегий и перемещением внутри сети. Каждый этап содержит четкие команды, что делает результаты воспроизводимыми и документированными.​

Дисклеймер: обратился ко мне фрикадельковый чипинкос с просьбой оценить стоимость моей помощи на экзамене. Ранее, я слушал про подобного рода телодвижения, но руками не притрагивался. В процессе обсуждения гангстер сказал, мол, смотри, в прошлом году мой кент xzibit проходил данное испытание, вот отчет.​
Второй дисклеймер: не договорились мы с ним от слова НИ-ху... ну вы поняли, но старина майк ведь не промах, вытянул с лоха халяву)))

Проведя анализ содержимого я решил поделиться данной информацией по следующим причинам:​

  1. Не думаю что такое валяется где попало
  2. Форум duty-fre не является "Чем попало"
  3. Специалисты веба всегда испытывают потребность в новых идеях, схемах и фокусах, а тут - как раз расширение кругозора.
  4. Халява
  5. Еще раз, качественная халява
  6. Построчное и поэтапное описание вектора атаки

1. После подтверждения внешнего периметра мы приступили к активному сканированию инфраструктуры с использованием внешнего IP-адреса. В то время динамический IP-адрес, связанный с доменом trilocor.local, был указан как 10.129.x.x (периодически сообщалось о его изменениях). Сначала мы просканировали первые 1000 портов, а затем провели комплексное сканирование всех портов.​


Не удалось прогрузить медиа
​


2. После перечисления сервисов мы решили расширить область поиска. Наш подход заключался в попытке передачи зоны DNS для получения дополнительной информации, что расширило нашу поверхность атаки. В результате мы получили ещё 7 виртуальных хостов. Попытка передачи зоны DNS с запросом AXFR​

​
Не удалось прогрузить медиа


3. Все эти виртуальные хосты отвечали на один и тот же IP-адрес, что побудило нас обновить файл /etc/hosts. Эта настройка позволила нам разрешить их и получить к ним доступ через браузер. (скриншот с обновленным IP-адресом). Сохранение в /etc/hosts​


Не удалось прогрузить медиа


4. После того, как мы некоторое время сканировали домен, пытаясь найти больше поддоменов и более интересные каталоги, нам удалось найти интересный каталог на dev.trilocor.local, который отвечал на запросы по адресу dev.trilocor.local/transfer.​


Не удалось прогрузить медиа


5. Доступ к этому каталогу позволил нам обнаружить новый поддомен, который мы затем добавили в список хостов. securetransfer-dev.trilocor.local​


Не удалось прогрузить медиа
Не удалось прогрузить медиа


6. После перехода на этот новый домен нам предложили войти в систему и зарегистрироваться. Не имея учётных записей, мы зарегистрировались и вошли в систему, после чего оказались на платформе, где могли загружать файлы.​


Не удалось прогрузить медиа


7. После некоторого поиска и обнаружения там нескольких PHP-файлов мы попытались проверить их на наличие SQL-инъекций, загрузив какой-нибудь файл, а затем пропустив наш запрос через Burp Suite. В запросе на загрузку нам удалось получить имя файла в качестве параметра, который, вероятно, был уязвим для SQL-инъекций. Поэтому мы получили PHP-обратную оболочку с https://github.com/pentestmonkey/php-reverse-shell, изменили IP-адрес и порт на нашем атакующем компьютере и загрузили её.​


Не удалось прогрузить медиа



8. После отправки запроса на ретранслятор Burp мы скопировали результат в локальный файл, попытались выполнить атаку с внедрением SQL-кода с помощью sqlmap и смогли получить доступ к некоторым доступным базам данных.​


Не удалось прогрузить медиа

Не удалось прогрузить медиа


9. После долгих поисков и получения не очень полезной информации нам удалось найти абсолютный путь загрузки обратной оболочки, которую мы загрузили ранее и сохранили в базе данных securetrasnfer в таблице файлов. Мы выгрузили столбцы и получили абсолютные пути. Затем мы перешли по этому пути, запустили наш прослушиватель netcat и получили обратную оболочку!​


Не удалось прогрузить медиа

Не удалось прогрузить медиа


10. Мы получили флаг в папке /home, обновили сеанс meterpreter, а затем начали искать полезную информацию или способы получить права суперпользователя. Не имея возможности получить права суперпользователя, мы нашли интересный файл в каталоге /apps под названием osticket_data.zip и загрузили его локально​


Не удалось прогрузить медиа

Не удалось прогрузить медиа


11. Мы распаковали архив и начали искать конфиденциальные данные в zip-файле. Мы нашли новый поддомен и учётные данные пользователя-администратора (имя пользователя: administrator, хэш). Мы определили хэш, найдя в hashcat первые символы, а затем попытались взломать хэш. Из-за недостаточной сложности пароля нам удалось взломать его. Мы использовали учётные данные и прошли аутентификацию на ossticketapp.trilocor.local (хосты обновлены). Поиск учётных данных​


Не удалось прогрузить медиа

Не удалось прогрузить медиа


Идентификация типа хэша​


Не удалось прогрузить медиа


Взлом с помощью hashcat​


Не удалось прогрузить медиа


После аутентификации мы начали поиск конфиденциальной информации и прочитали несколько сообщений в текущих открытых тикетах, а также на новой тестовой платформе (gogsusdev01.trilocor.local), которая разрабатывалась разработчиками. Мы следовали указаниям, которые были даны в деталях тикета, и выдавали себя за разработчиков.​

Enumeration - значит перечисление​


Не удалось прогрузить медиа

Не удалось прогрузить медиа

13. Итак, мы выполнили шаги, создали учётную запись, получили доступ и начали поиск на платформе, где нашли репозиторий с кодом​

Создание аккаунта​

Не удалось прогрузить медиа

Не удалось прогрузить медиа

Не удалось прогрузить медиа

Студенческая документация​


Не удалось прогрузить медиа

14. Изучив репозиторий, мы заметили, что там есть инструкции по созданию учётных записей, обновлению ролей, созданию, обновлению и экспорту заявок, а также другая информация. Поэтому мы попытались следовать логической цепочке атак и сначала зарегистрировались с помощью вызовов API. Вошли в систему с помощью вызовов API, которые дали нам токен, необходимый для других операций. Попытались обновить нашу роль до роли администратора. Попытались создать заявку, содержащую вредоносный код, а затем экспортировать эту заявку с помощью расширения PHP и получить обратную оболочку.​


Регистрация​

Не удалось прогрузить медиа

 Вход (сгенерированный токен): (токен меняется при каждом входе в систему)​

Не удалось прогрузить медиа

c. Изменение нашей роли на роль администратора: (токен меняется при каждом входе в систему)​

Не удалось прогрузить медиа

d. Повторите аутентификацию, чтобы получить токен администратора:​

Не удалось прогрузить медиа

e. Проверка изменений:​

Не удалось прогрузить медиа

f. Заметили примечание по безопасности, указывающее на возможную атаку. Затем мы создали несколько заявок, пытаясь понять, как работает цепочка.​

Не удалось прогрузить медиа

Не удалось прогрузить медиа

Не удалось прогрузить медиа

Не удалось прогрузить медиа

Не удалось прогрузить медиа

Не удалось прогрузить медиа

g. Затем мы попытались создать вредоносную программу. И мы экспортировали её.​

Не удалось прогрузить медиа


h. Мы посетили абсолютный путь и убедились, что у нас есть RCE, а затем проксировали запрос через burpsuite, чтобы нам было проще работать.​

Медиа заблокировано
Этот домен не входит в список разрешённых для медиа.
Формат: изображения / GIFДомен: forum.LIMB.cc
Разрешённые домены
  • imgur.com
  • ru.imgbb.com
  • prnt.sc
  • imgbb.com
  • ibb.co
  • i.imgur.com
  • i.ibb.co
  • darklimb.vip
  • i.pinimg.com
  • img3.teletype.in
  • img4.teletype.in
  • teletype.in
  • pikabu.ru
  • cs15.pikabu.ru
  • img2.teletype.in
  • lh7-rt.googleusercontent.com
  • duty-files.cc
  • blogger.googleusercontent.com

Не удалось прогрузить медиа

15. В одном случае, когда у нас было удаленное выполнение кода, мы использовали веб-сайт с кодирующим URL-адресом https://www.w3schools.com/tags/ref_urlencode.ASP для кодирования наших команд, и мы прочитали флаг. Загрузили обратную оболочку, сделали ее исполняемой, а затем запустили обратную оболочку с помощью metasploit. URL-кодировка наших команд​

Не удалось прогрузить медиа

Не удалось прогрузить медиа

Создание обратной оболочки php  - БАБАХ, Ашалел даже Стетхем!!!​

Не удалось прогрузить медиа

Загрузка и выполнение​


Не удалось прогрузить медиа

16. После некоторого перебора мы получили некоторые учетные данные, которые на данный момент не могли использовать (api-db- admin: 4S8ITCNG3sn0). Мы попытались повысить уровень привилегий с помощью программы know linux vulnerabilities и программы metasploti, предлагающей локальные эксплойты, но безуспешно. Поэтому мы решили пойти дальше. Но мы заметили, что у этого сервера был доступ к внутренней сети через некоторое сетевое перечисление, которое мы провели. (Подсеть, предоставленная клиентами в scope). Сначала мы пытались выполнить внутреннюю сводку, и нам это удалось, но нам нужны были права суперпользователя, чтобы быть более скрытными и упростить сводку. Мы хотели использовать поворотный сервер для переноса, загрузки, выполнения и монтирования, но с помощью только стандартного пользователя мы не смогли этого сделать, поэтому продолжили.​

Не удалось прогрузить медиа

​

17. После недолгих поисков мы наткнулись на уязвимое приложение, работающее с портом 7777. Мы зашли на страницу и, немного погуглив, также  нашли подкаталог console, защищенный pin-кодом. - прям как Кунгфу Панда!​


┌──(bmiadmin㉿bmi-pt)-[~/Desktop/cptsExam/tools]
└─$ nmap -sT -Pn -A 10.129.244.96 -p7777 --disable-arp-ping
​
Starting Nmap 7.94 ( https://nmap.org ) at 2023-12-17 17:54 EST Nmap scan report for trilocor.local (10.129.244.96) Host is up (0.041s latency).
PORT STATE SERVICE VERSION​
7777/tcp open http Werkzeug httpd 2.2.1 (Python 3.8.10)
​
|_http-server-header: Werkzeug/2.2.1 Python/3.8.10
​
|_http-title: Site doesn't have a title (text/html; charset=utf-8).​
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 17.87 seconds
┌──(bmiadmin㉿bmi-pt)-[~/Desktop/cptsExam/tools] └─$


OSINT для получения общедоступной информации о приложении​


Не удалось прогрузить медиа


Поиск страницы консоли через перечисление osint

Не удалось прогрузить медиа

​

18.После некоторого поиска в Google мы нашли множество руководств по yotube, которые освещали эту уязвимость здесь 
Не удалось прогрузить медиа
 и статью здесь, по которой мы подписались, чтобы получить доступ https://book.hacktricks.xyz/network-services-pentesting/pentesting-web/werkzeug#get_machine_id-code . С предыдущим доступом, который у нас был на сервере, нам удалось получить всю необходимую информацию и попытаться локально запустить публичный эксплойт PoC, чтобы сгенерировать себе пин-код доступа. Для получения требуется информация для работы скрипта dxploit.
​


Не удалось прогрузить медиа
​

Не удалось прогрузить медиа


19. Как только мы получили всю необходимую информацию, мы выполнили пошаговое руководство и вставили всю информацию в готовый к работе эксплойт, а затем выполнили его, чтобы получить пин.​


Не удалось прогрузить медиа


Добавление необходимой информации в эксплойт - бомардир бомбит полезную нагрузку ША-ТА-ТА-ТА​


Не удалось прогрузить медиа
​

​

Выполнение скрипта и закрепление обтана​

На этом этапе объявляю конец первой части этого замечательного путешествия, так как достигнуто ограничение по загруженному контенту на одну исполняемую единицу читаемой статьи. Если данный анекдот соберет хотя-бы какую-то здравую респектуру в адрес Майка, то будет COMING SOON.​


До встречи. Люблю, целую, Пух!​


​
👍54 ❤️9 😁7 😮8 😢6 💯11
Не удалось прогрузить медиа
Blya krasava, vostorg!4
Супер материал,а есть что-то подобное о СBBH от HTB?
👍1
сложно но понятно, это уровень OSCP?
Ответentitycry

сложно но понятно, это уровень OSCP?

уровень OSCP ето пароли типа admin, password, 123
👍1
Ответentitycry

сложно но понятно, это уровень OSCP?

Это на джуна :joy:

Гостевой просмотр. Чтобы отвечать и ставить реакции, войдите или зарегистрируйтесь.