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

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

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

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

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

Категории

Все категории
Loading categories
POC_CVE-2024-12537 — Локальная изолированная лаборатория и шаблон nuclei для CVE-2024-12537 — неаутентифицированной уязвимости типа «отказ в обслуживании» в конечной точке форматирования кода Open WebUI. Проверяет логику обнаружения на уязвимых и исправленных версиях. | Kitploit
Инструменты/GitHubGitHub/fineman999/poc_cve-2024-12537
Анализ уязвимостейЭксплуатацияВеб-безопасностьТестирование на ПроникновениеОбучение и ОбразованиеЛаборатории и Практика
GitHubfineman999/poc_cve-2024-12537

POC_CVE-2024-12537

Локальная изолированная лаборатория и шаблон nuclei для CVE-2024-12537 — неаутентифицированной уязвимости типа «отказ в обслуживании» в конечной точке форматирования кода Open WebUI. Проверяет логику обнаружения на уязвимых и исправленных версиях.

Репозиторий
24 месяцев назадЕщё не проверено

Популярное

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

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

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

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

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

CVE-2024-12537 Лаборатория DoS-уязвимости Code Format в Open WebUI

Этот репозиторий содержит локальную изолированную лабораторию для воспроизведения уязвимости и кандидат шаблона nuclei для CVE-2024-12537 — неаутентифицированной уязвимости типа «отказ в обслуживании» в конечной точке форматирования кода Open WebUI.

Лаборатория не отправляет крупные DoS-нагрузки. Она проверяет логику обнаружения nuclei через неаутентифицированную конечную точку идентификации /api/version и минимальный запрос {"code":"x"} к /api/v1/utils/code/format, после чего сравнивает уязвимую версию с исправленной/более новой версией.

Сводка

  • Продукт: open-webui/open-webui
  • Уязвимость: неаутентифицированное неконтролируемое потребление ресурсов / отказ в обслуживании
  • CVE: CVE-2024-12537
  • GHSA: GHSA-chf7-q7m5-fq92
  • Затронутая конечная точка: POST /api/v1/utils/code/format
  • Конечная точка идентификации, используемая в этой лаборатории: GET /api/version
  • Проверенная уязвимая версия: v0.5.10
  • Проверенная исправленная/более новая версия: v0.6.14
  • Используемый здесь порог nuclei: < 0.5.14 для неаутентифицированной модели угроз

Ссылки:

  • https://nvd.nist.gov/vuln/detail/CVE-2024-12537
  • https://github.com/advisories/GHSA-chf7-q7m5-fq92
  • https://huntr.com/bounties/edabd06c-acc0-428c-a481-271f333755bc

Файлы

  • docker-compose.yml: запускает Open WebUI с выбираемым Docker-тегом
  • verify-cve-2024-12537.sh: ожидает готовности, выводит /api/version и запускает nuclei при наличии
  • nuclei/CVE-2024-12537.yaml: кандидат шаблона nuclei

Требования

  • Docker Engine или Docker Desktop
  • curl
  • Необязательно: nuclei

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

Воспроизведение обнаружения уязвимой версии

Запустите Open WebUI v0.5.10:

WEBUI_TAG=v0.5.10 docker compose up -d

Запустите проверочный скрипт:

sh verify-cve-2024-12537.sh

Наблюдаемый ответ уязвимой версии:

HTTP/1.1 200 OK
content-type: application/json

{"version":"0.5.10"}

Наблюдаемый вывод nuclei для уязвимой версии:

[CVE-2024-12537:dsl-1] [http] [high] http://127.0.0.1:3010/api/v1/utils/code/format ["0.5.10"]

Очистка:

docker compose down -v

Воспроизведение контрольного сценария с исправленной/более новой версией

Запустите Open WebUI v0.6.14:

WEBUI_TAG=v0.6.14 docker compose up -d

Запустите проверочный скрипт:

sh verify-cve-2024-12537.sh

Наблюдаемый ответ исправленной/более новой версии:

HTTP/1.1 200 OK
content-type: application/json

{"version":"0.6.14"}

Наблюдаемый вывод nuclei для исправленной/более новой версии:

No results found

Очистка:

docker compose down -v

Nuclei

Проверьте шаблон:

nuclei -validate -t nuclei/CVE-2024-12537.yaml

Запустите против локальной лаборатории:

nuclei -silent \
  -t nuclei/CVE-2024-12537.yaml \
  -include-templates nuclei/CVE-2024-12537.yaml \
  -u http://127.0.0.1:3010

Ожидаемое поведение:

  • v0.5.10: совпадение
  • v0.6.14: без совпадения

Примечания

  • Шаблон намеренно не отправляет большое тело запроса к /api/v1/utils/code/format.
  • Проверка конечной точки использует только {"code":"x"}, который возвращал {"code":"x\n"} на Docker v0.5.10 и {"detail":"Not authenticated"} на Docker v0.6.14.
  • Пример команды nuclei включает -include-templates, поскольку шаблоны с тегом dos могут исключаться по умолчанию.
  • Некоторые версии Open WebUI кратковременно возвращают curl: (52) Empty reply from server, пока приложение ещё запускается. Проверочный скрипт ожидает ответа от /api/version.
  • В docker-compose.yml заданы RAG_EMBEDDING_MODEL="" и RAG_EMBEDDING_MODEL_AUTO_UPDATE=False, чтобы лаборатория не блокировалась на инициализации эмбеддинг-модели.
  • GitHub Advisory в настоящее время указывает затронутые версии пакета как <= 0.3.32; в этой лаборатории используется порог неаутентифицированного кодового пути < 0.5.14, определённый путём анализа коммитов. Соответствующая последовательность коммитов: d3d161f72 (без аутентификации, v0.5.0-v0.5.13), 2f75eef49 (добавляет get_verified_user, v0.5.14+), и 4fe45d443 (ужесточает защиту до get_admin_user, v0.6.14+).
  • Реальные цели не использовались.
Скачать инструмент