
Усовершенствованный PoC-эксплойт для CVE-2025-52691 (SmarterMail Arbitrary File Upload RCE) с функциями уровня APT, такими как скрытая обфускация, персистентность, эксфильтрация и интерактивный режим. Только для образовательных целей и авторизованного тестирования. Благодарности оригинальному PoC от yt2w/CVE-2025-52691.
Это улучшенный proof-of-concept (PoC) эксплойт для CVE-2025-52691 — критической уязвимости в почтовом сервере SmarterTools SmarterMail, позволяющей неаутентифицированную произвольную загрузку файлов, что потенциально приводит к удалённому выполнению кода (RCE). Данная версия включает техники уровня APT для повышения скрытности, устойчивости и операционных возможностей, что делает её пригодной для продвинутого пентеста и сценариев red team.
ВНИМАНИЕ: Этот инструмент предназначен только для образовательных целей и авторизованного тестирования. Несанкционированное использование против систем без явного разрешения незаконно и неэтично. Автор не несёт ответственности за неправомерное использование.
requests, uuid, base64, random, time, logging, re
pip install requestsДополнительные зависимости, кроме стандартных библиотек, не требуются.
Клонируйте репозиторий и запустите скрипт с помощью Python.
python exploit.py <target_url> [options]
<target_url>: Базовый URL сервера SmarterMail (например, https://mail.example.com).--targets-file <file>: Путь к файлу со списком URL целей (по одному на строку).-c, --command <cmd>: Команда для выполнения после загрузки шелла (например, whoami).-t, --timeout <seconds>: Таймаут запроса (по умолчанию: 30).--proxy <url>: URL прокси (например, http://127.0.0.1:8080).--no-verify: Отключить проверку SSL-сертификата.--check-only: Только проверить, активна ли цель и похожа ли она на SmarterMail.--persistence: Установить постоянство через запланированную задачу.--exfil <remote:local>: Эксфильтровать файл (например, C:\\path\\to\\file.txt:local_copy.txt).--interactive: Войти в интерактивный режим выполнения команд.--cleanup: Удалить загруженный шелл после использования.--log-level <level>: Установить уровень логирования (DEBUG, INFO, WARNING, ERROR; по умолчанию: INFO).Базовый эксплойт:
python exploit.py https://mail.vulnerable.com
Выполнение команды:
python exploit.py https://mail.vulnerable.com -c "systeminfo"
С прокси и постоянством:
python exploit.py https://mail.vulnerable.com --proxy http://127.0.0.1:8080 --persistence
Интерактивный режим с очисткой:
python exploit.py https://mail.vulnerable.com --interactive --cleanup
Пакетный эксплойт из файла:
python exploit.py --targets-file targets.txt
При успешной эксплуатации отображаются путь к шеллу, URL доступа (с паролем аутентификации) и любые результаты выполнения команд. Логи выводятся в консоль; для логирования в файл измените функцию setup_logging в скрипте по необходимости.
Эта улучшенная версия основана на оригинальном PoC от yt2w. Значительные изменения включают функции уровня APT, обфускацию и улучшения удобства использования. Спасибо оригинальному автору за фундаментальную работу.
Этот инструмент демонстрирует уязвимость в образовательных целях. Используйте его ответственно и только на системах, которыми вы владеете или на тестирование которых имеете явное разрешение. Убедитесь в соблюдении всех применимых законов и этических норм. Разработчики снимают с себя ответственность за любое неправомерное использование.
Если вы столкнулись с проблемами или у вас есть предложения, откройте issue на GitHub.
Лицензия MIT. Подробности см. в LICENSE.