
Эксплойт на Python для CVE-2023-32315, нацеленный на серверы Openfire. Обходит аутентификацию панели администратора с помощью обхода пути через Unicode, чтобы создать административного пользователя, что позволяет загружать вредоносные плагины и получать доступ к веб-оболочке.
Уязвимость CVE-2023-32315 затрагивает серверы Openfire, позволяя атакующему обойти вход в веб-панель администратора без действительных учетных данных. Эксплойт добавляет административного пользователя, позволяя атакующему загрузить вредоносный плагин и получить веб-оболочку.
CVE-2023-32315 — это уязвимость в Openfire, которая позволяет получить доступ к JSP мастера начальной настройки (/setup/setup-s/...) даже после её завершения, используя недостаточную проверку путей с помощью path traversal с кодировкой Unicode/"best-fit" (%u002e%u002e, эквивалент ../), вместо буквенных символов. Это позволяет получить доступ к user-groups.jsp и user-create.jsp без аутентификации, как если бы сервер был только что установлен, и создать нового администратора. Скрипт проверяет результат двумя способами: проверяя, отображается ли пользователь в user-summary.jsp, и подтверждая, что созданные учетные данные работают в login.jsp. После входа в панель следующим шагом (выходящим за рамки этого скрипта) будет загрузка вредоносного плагина для выполнения произвольных команд.
git clone https://github.com/pulentoski/Explotacion-CVE-2023-32315-Openfire.git
cd Explotacion-CVE-2023-32315-Openfire
Не требует внешних зависимостей — используется только стандартные библиотеки Python 3 (http.client, re, time, urllib.parse).
Скрипт интерактивный, без флагов командной строки:
python3 exploit.py
Он попросит выбрать режим:
[1] Одиночная цель → вы вводите URL напрямую (например: http://127.0.0.1:9090)
[2] Список целей → вы вводите путь к .txt с одной URL на строку
Имя пользователя/пароль, которые создаются (pepe2/pepe2), жестко закодированы в начале скрипта — измените их там, если необходимо.
📄 Результаты: подтвержденные цели сохраняются в exito.txt; если цель не проходит проверку, HTML ответа сохраняется в debug_<usuario>.html для ручного просмотра.
("openfire") && icon_hash=="1211608009"
Этот скрипт предназначен для контролируемых сред и авторизованных аудитов. Автор не несет ответственности за неправомерное использование.