# Машина 1 ## Точка опоры После сканирования находим ряд открытых портов: 80 - http apache 22 - ssh Заходим на сайт - видим сообщение что сервер был взломан и требование выкупа, ничего интересного. Определяем версию CMS, видим известный [эксплоит](https://www.opencve.io/cve/CVE-2022-41544), но попытки его эксплуатации не приводят к успеху (выскакивает 500 ошибка). Пробуем просканить директории и файлы, например через [wfuzz](https://www.google.com/search?client=safari&rls=en&q=wffuz&ie=UTF-8&oe=UTF-8), находим файл backup.tgz. Внимательно его изучаем, находим оставленный backdoor в файле /plugins/InnovationPlugin/lang/encoding.php (можно сравнить с оригинальными файлами CMS). В исходном коде видим что есть проверка на некоторый пароль через password_verify и есть хэш пароля. Так же можно посмотреть версию php. Брутить пароль нет необходимости - наша версия php [уязвима](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-0567), можно подставить любой пароль и выполнить произвольный код в системе через бекдор. Забираем первый флаг по пути /var/www/flag.txt: **d5d7f5c21f5a7a5e9a9f7d9c1e2e2a2f** ## LPE (Локальное повышение привелегий) 1. Попытки найти что то интересное через стандартные средства по типу LinPeas не увенчаются успехом, пробуем посмотреть на последние измененные файлы и замечаем что один из таких файлов - это lib/x86_64-linux-gnu/security/pam_unix.so 2. Данный модуль представляет из себя PAM модуль с бекдором, позволяющий нам авторизоваться с правами пользователя root через еще один пароль, который хранится внутри. 3. Реверсим его и находим следующую строку: ```c= eax = strcmp(r15, "s43wfesfsdfds_sdfsf34wfvghbjn"); ``` Что представляет из себя нужный нам пароль. Авторизуемся под пользователем root и забираем второй флаг: **f6c3f6a7e9b8c1d4a6f3b0d4e0f8d4d2** # Машина 2 ## Точка опоры После сканирования находим ряд открытых портов: 1337 - http 22 - ssh Проверяем функционал сайта - он позволяет разбирать текст с картинок и выводить его на страницу (плюс показывается разная статистика и можно скачать разобранный текст в файле). Пробуем отправить любую картинку с пейлоадом типа __{{config}}__ и увидим, что на странице отрендериться как текст, а внутри файла уже будет информация о переменных фласка, что позволяет нам эксплуатировать SSTI уязвимость. Подгружаем в картинку текстом любой удобный reverse_shell и забираем первый флаг: **8A2A2E7D2A8909A40A8D8A4B4E4A4C4A** ## LPE (Локальное повышение привелегий) Запускаем любой инструмент по типу linenum.sh и видим что на бинарнике /usr/bin/find установлен SUID бит, что позволяет нам с легкостью провернуть LPE: ```bash= $ find /usr/bin -name find -exec /bin/bash -ip /; $ cat /root/flag.txt ```