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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2024-23724 | Kitploit
Инструменты/GitHubGitHub/youssefdds/cve-2024-23724
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийCTFТестирование на ПроникновениеОбучение и Образование
GitHubyoussefdds/cve-2024-23724

CVE-2024-23724

Репозиторий
1 год назадЕщё не проверено

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться

Установка

Автоматическая установка (рекомендуется)

Чтобы протестировать уязвимость, нам нужны две учётные записи: учётная запись с ролью администратора (владельца) и учётная запись с ролью участника (contributor). В Ghost CMS сначала необходимо зайти в панель администратора, чтобы создать учётную запись владельца, а затем из этой учётной записи пригласить участника, чтобы он создал собственную учётную запись. Однако в Ghost единственный способ пригласить участника — отправить приглашение по электронной почте, для чего требуется сервис доставки электронных писем, чтобы отправить письмо на адрес участника. Чтобы упростить задачу, мы создали учётную запись Mailgun, добавили участника в Ghost, а затем создали файл дампа базы данных в том состоянии, в котором она у нас была. В нашей конфигурации Docker Compose мы сначала восстанавливаем базу данных из дампа перед запуском Ghost, так что вам не нужен сервис доставки электронных писем для тестирования этой уязвимости. Однако если вы хотите начать с чистой установки и не использовать предоставленный дамп базы данных, вы можете использовать Docker Compose из папки manual-setup, чтобы запустить чистую установку Ghost. Ниже вы найдёте шаги по настройке Mailgun (сервиса доставки электронных писем, который мы использовали) и его интеграции с Ghost.

Для этой установки используйте следующие учётные данные администратора и участника для входа:

  • Администратор:
    • Эл. почта: [email protected]
    • Пароль: ZtXfMq2FaRHGm@!
  • Участник:
    • Эл. почта: [email protected]
    • Пароль: ZtXfMq2FaRHGm@!

Ручная установка с Mailgun

Для начала вам нужно создать учётную запись Mailgun. После создания учётной записи получите свои SMTP-учётные данные. Получив их, поместите их в файл config.development.json, следуя тому же формату, что показан в файле config.example.json.

Вот пошаговое руководство:

  1. Создайте учётную запись Mailgun на Mailgun.
  2. Перейдите в раздел SMTP-учётных данных на панели управления Mailgun.
  3. Скопируйте свои SMTP-учётные данные.
  4. Продублируйте файл config.example.json и переименуйте его в config.development.json.
  5. Заполните свои SMTP-учётные данные в файле config.development.json. Это гарантирует, что ваша среда разработки правильно настроена для отправки электронных писем через Mailgun.
  6. Если вы создали учётную запись Mailgun, домен Mailgun по умолчанию — это песочница (sandbox), а значит, вам нужно авторизовать адрес электронной почты участника, на который вы хотите получать приглашение. Это можно сделать на панели управления Mailgun в разделе (левая боковая панель) Send > Sending > Overview. Дело в том, что Mailgun отправляет письма только авторизованным получателям, когда вы используете домен-песочницу. Когда вы добавляете авторизованного получателя, вы получите письмо для подтверждения авторизации. После подтверждения авторизации Ghost сможет отправлять письма этому получателю через Mailgun.
  7. После создания учётной записи владельца в Ghost, посетив http://localhost:3001/ghost, и добавления адреса участника в список авторизованных получателей в Mailgun, вы теперь можете отправить участнику приглашение на этот адрес через Mailgun из http://localhost:3001/ghost/#/settings/staff.
  8. Теперь вы можете использовать ссылку-приглашение, полученную в письме, чтобы создать учётную запись участника. После этого у вас будет конфигурация, идентичная той, что мы используем при восстановлении базы данных.

Как протестировать атаку

Вы можете запустить выбранную установку с помощью следующей команды:

root@kitploit:~
docker-compose up

Чтобы протестировать атаку, выполните следующие шаги:

  1. Сгенерируйте вредоносный SVG-файл профиля с помощью скрипта generate-malicious-svg.py. Для этого выполните следующую команду, заменив [USERNAME] и [PASSWORD] на учётные данные созданной вами учётной записи участника:
root@kitploit:~
python generate-malicious-svg.py -u [USERNAME] -p [PASSWORD] -t http://localhost

Для автоматической установки команда следующая:

root@kitploit:~
python generate-malicious-svg.py -u [email protected] -p ZtXfMq2FaRHGm@! -t http://localhost

Эта команда создаёт вредоносный SVG-файл с именем tenant-takeover.svg в текущем каталоге.

  1. Войдите в административный интерфейс Ghost, используя учётные данные созданной вами учётной записи участника. Для этого посетите http://localhost:3001/ghost и войдите, используя учётные данные учётной записи участника.

  2. Перейдите на страницу редактирования своего профиля, нажав на свою фотографию профиля в левом нижнем углу экрана, а затем нажав кнопку «Your profile».

  3. Нажмите на значок профиля, чтобы изменить фотографию профиля. Выберите вредоносный SVG-файл, созданный на шаге 1.

  4. Сохраните изменения, нажав кнопку «Save & close». Вы можете обновить страницу, чтобы убедиться, что фотография профиля изменилась.

  5. Теперь вы можете выйти из учётной записи участника и войти в учётную запись администратора. На странице http://localhost:3001/ghost/#/settings/staff?tab=contributors вы можете увидеть, что фотография профиля участника изменилась. Если вы щёлкнете правой кнопкой мыши по фотографии профиля и откроете изображение в новой вкладке, это запустит атаку. Теперь вы можете вернуться на http://localhost:3001/ghost/#/settings/staff и увидите, что участник теперь является владельцем блога, а вы стали администратором.

🎥 Поясняющее видео

Мы создали видео, в котором подробно описан весь процесс и шаги, необходимые для реализации CVE. Это видео служит визуальным руководством, чтобы лучше понять наш подход и выполненные действия.

Ссылка на видео: Нажмите здесь, чтобы посмотреть видео

Не стесняйтесь посмотреть это видео для полного обзора проекта и выполненных технических шагов.

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