(Write-up) Ломаем машину Bizness на HTB

(Write-up) Ломаем машину Bizness на HTB

@zluukka (Egor Orshlet)

Всем привет, я начал потихоньку вкатываться в тему тестирования на проникновение и CTF. В дальнейшем буду выкладывать свои райт-апы на машинки , которые буду изучать и ломать. Сегодня хочу разобрать взлом одной тачки на HTB, которая называется Bizness.


Подключившись по VPN к сети HTB перейдем по данному серому айпишнику на веб-сайт "компании".


Интерфейс сайта bizness.htb

Внимательно просматриваем интерфейс веб-страницы на наличие полезной информации. Листая ниже обнаружим , название платформы на которой данный сайт работает.

Обратимся в гугл , чтобы узнать поподробнее про данную платформу.


Apache OFBiz — открытое программное обеспечение для планирования ресурсов предприятия (ERP). Предлагает набор приложений для интеграции и автоматизации множества бизнес-процессов предприятий. OFBiz является проектом высшего уровня в Apache Software Foundation. Apache OFBiz предоставляет функциональность для управления заказами, инвентарем, финансами, проектами и другими аспектами бизнеса. Этот фреймворк с открытым исходным кодом может быть использован для разработки и внедрения различных бизнес-приложений, что делает его популярным среди организаций, которые стремятся к автоматизации своих бизнес-процессов.

Apache OFBiz


Также проверим это фреймворк на наличие свежих уязвимостей.


Отлично! Теперь нам известно куда копать. Просмотрим данную страницу на GitHub и клонируем репозиторий на нашу линукс машину.

Как мы можем заметить , здесь есть подробное описание данной уязвимости, если вкратце , то CVE-2023-51467 предстваляет из себя это уязвимость, позволяющая удалённо выполнять код без аутентификации. CVE-2023-51467 активируется с помощью пустых или недействительных параметров USERNAME и PASSWORD в HTTP-запросе, что приводит к сообщению об успешной аутентификации. Это позволяет злоумышленникам получить доступ к внутренним ресурсам.

Атака зависит от того, что параметр «requirePasswordChange» установлен в положение «Y» (да) в URL, что позволяет обойти аутентификацию независимо от предоставленных данных пользователя и пароля.

Участок кода который позволяет нам впоследствии эксплуатировать SSRF

После успешного клонирования мы видим содержимое репозитория.

Начнем слушать 6666 порт с помощью утилиты netcat.

Слушаем 6666 порт

Теперь вернемся к нашему скрипту , который написан на python и пробросим туда наш код, который позволит создать reverse shell.

После успешного соединения с нашей машиной , будет выполнена команда /bin/bash, которая предоставит доступ к терминалу жертвы.

Все работает , но нет привычного нам интерфейса. Используем модуль pty, python и следующую команду: python3 -c 'import pty; pty.spawn("/bin/bash")'. Модуль pty определяет операции для обработки концепции псевдотерминала: запуск другого процесса и возможность программной записи и чтения с его управляющего терминала



После исследования доступных каталогов находим флаг юзера =)

Повышение привилегий

В этой машине тяжело найти повышение, если не знать, где искать. Воспользуемся подсказкой и сделаем вот такой поиск:


$ find /opt/ofbiz -name "*.dat"

...

/opt/ofbiz/runtime/data/derby/ ...

...

Запомним каталог, перейдем в него и запустим хитрый grep:

cd /opt/ofbiz/runtime/data/derby/

grep -arin -o -E '(\w+\W+){0,5}password(\W+\w+){0,5}' .


Среди строчек найдем наш хэш:

С помощью CyberChef декодируем:

  • From Base64 (алфавит URL Safe)
  • To HEX (без разделителей)

https://hashcat.net/wiki/doku.php?id=example_hashes


Нам нужен режим SHA1 и солью (в нашем случае соль d), это будет режим 120 из примеров hashcat.


Файл hash.txt:

hash:salt


Брутфорс:

hashcat -a 0 -m 120 -O hash.txt rockyou.txt

Залогинемся под рутом и заберем наш флаг!

Машина взломана, конец=)


Report Page