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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-15409 — Эксплойт Proof-of-Concept для CVE-2026-15409 (SonicWall SMA 1000 RCE) через распределение Erlang поверх WebSocket. Обеспечивает неаутентифицированное удалённое выполнение кода от имени пользователя couchdb. | Kitploit
Инструменты/GitHubGitHub/ch4120n/cve-2026-15409
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийЭксфильтрация данныхПост-эксплуатацияТестирование на ПроникновениеRed Teaming
GitHubch4120n/cve-2026-15409

CVE-2026-15409

Эксплойт Proof-of-Concept для CVE-2026-15409 (SonicWall SMA 1000 RCE) через распределение Erlang поверх WebSocket. Обеспечивает неаутентифицированное удалённое выполнение кода от имени пользователя couchdb.

Репозиторий
1121 месяц назадЕщё не проверено

Популярное

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

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

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

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

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

🚀 CVE-2026-15409 – SonicWall SMA 1000 Erlang RCE через WebSocket-прокси

Python Exploit CVE

GitHub stars GitHub issues License

Эксплойт Proof-of-Concept для CVE-2026-15409 – неаутентифицированное удалённое выполнение кода на устройствах серии SonicWall SMA 1000 через протокол распределения Erlang, туннелируемый через WebSocket.


📖 Обзор

CVE-2026-15409 – это критическая уязвимость, затрагивающая устройства SonicWall SMA 1000 (версии до июньского исправления 2026 года). Недостаток кроется в службе WorkPlace (обычно доступной на порту 443), которая проксирует WebSocket-соединения к внутренним узлам Erlang. Подделав действительный параметр bmID и используя жёстко заданный cookie Erlang, атакующий может установить аутентифицированный канал распределения и выполнять произвольные системные команды от имени пользователя couchdb (или других учётных записей с низкими привилегиями) через RPC-вызовы к os:cmd/1.

Этот репозиторий предоставляет полностью функциональный PoC, автоматизирующий всю цепочку эксплуатации – от WebSocket-рукопожатия до выполнения произвольных команд – с чистым интерфейсом, расширенной обработкой ошибок и наглядным логированием.

🔍 Ключевые возможности

  • Туннелирование через WebSocket – работает напрямую по wss:// с использованием конечной точки wsproxy.
  • Протокол распределения Erlang – полностью реализует рукопожатие и ETF (Erlang External Term Format).
  • Удалённое выполнение кода – через os:cmd/1; можно читать файлы через file:read_file/1 или проверять связь с помощью erlang:node/0.
  • Интеллектуальное обнаружение – поддерживает произвольные значения bmID (при условии, что они начинаются с -3389) и различные значения serviceType.
  • Подробное логирование – цветные сообщения с символами [+], [*], [-], [!] для удобного мониторинга.

🧬 Детали уязвимости

Уязвимость обусловлена следующими недостатками проектирования в SMA 1000:

  1. Неограниченное проксирование WebSocket – конечная точка /wsproxy пересылает бинарные WebSocket-сообщения на локальный порт распределения Erlang (по умолчанию localhost:1050) без надлежащей аутентификации или авторизации.
  2. Предсказуемый/жёстко заданный cookie Erlang – cookie, используемый для аутентификации распределения, одинаков на всех устройствах SMA (по крайней мере, в протестированной версии). Это позволяет внешнему атакующему завершить рукопожатие.
  3. Открытый узел Erlang – узел Erlang [email protected] прослушивает порт 1050 и принимает соединения от WebSocket-прокси, что делает его доступным из сети.
  4. Мощный RPC-интерфейс – узел Erlang предоставляет стандартную службу rex, которая может выполнять произвольные функции на узле, включая os:cmd/1.

Затронутые версии

  • Серия SonicWall SMA 1000 с прошивкой до июньского исправления 2026 года (например, ex_sra_vm_12.5.0-02002.ova).
  • Служба WorkPlace должна быть включена (конфигурация по умолчанию).

Воздействие

  • Удалённое выполнение кода от имени пользователя couchdb (UID 1010, группа daemon).
  • Латеральное перемещение – атакующий может использовать CVE-2026-15410 (XML‑RPC path traversal) для повышения привилегий до root.
  • Эксфильтрация данных – чтение произвольных файлов через file:read_file/1.
  • Закрепление в системе – установка бэкдоров или изменение системных файлов.

🔧 Требования для эксплуатации

  • Сетевой доступ к службе WorkPlace устройства SMA (обычно TCP/443).
  • Действительные учётные данные не требуются – эксплойт работает без аутентификации.
  • Python 3.8+ с библиотекой websockets (установка через pip install websockets).

🚀 Использование

Установка

git clone https://github.com/Ch4120N/CVE-2026-15409.git
cd CVE-2026-15409
pip install -r requirements.txt   # websockets

Базовая команда

python3 cve-2026-15409.py \
  --ws-url 'wss://TARGET_IP/wsproxy?bmID=-3389c1b25ccd&serviceType=SSH&host=0.0.0.0&port=1050' \
  --ws-user-agent 'SMA Connect Agent' \
  --ws-insecure-tls \
  --exec 'whoami && id && pwd && hostname'

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

  ░█▀▀░█░█░█▀▀░░░░░▀▀▄░▄▀▄░▀▀▄░▄▀▀░░░░░▀█░░█▀▀░█░█░▄▀▄░▄▀▄
  ░█░░░▀▄▀░█▀▀░▄▄▄░▄▀░░█/█░▄▀░░█▀▄░▄▄▄░░█░░▀▀▄░░▀█░█/█░░▀█
  ░▀▀▀░░▀░░▀▀▀░░░░░▀▀▀░░▀░░▀▀▀░░▀░░░░░░▀▀▀░▀▀░░░░▀░░▀░░▀▀░
                    [CVE-2026-15409]
         Erlang Distribution RCE via WebSocket Proxy
                     Owner: Ch4120N

[ * ] Connecting via WebSocket to wss://192.168.56.102/wsproxy?bmID=-3389c1b25ccd&serviceType=SSH&host=0.0.0.0&port=1050
[ * ] Preparing RPC: os:cmd('whoami && id && pwd && hostname')
[ + ] Authenticated to [email protected]
[ * ] Calling os:cmd/1 ...
[ + ] RPC call completed
[ * ] Peer name: [email protected]
[ * ] Peer flags: 0xd07df7fbd
[ * ] Peer creation: 1784069352
[ + ] Command output:
couchdb
uid=1010(couchdb) gid=1(daemon) groups=1(daemon)
/opt/couchdb
SMAAppliance.sma

Дополнительные параметры

АргументОписание
--host, --portTCP-запасной вариант (если WebSocket не используется)
--cookieПереопределить cookie по умолчанию
--nameПользовательское имя локального узла Erlang
--ws-originУстановить заголовок Origin для WebSocket
--ws-user-agentСтрока User‑Agent (по умолчанию: SMA Connect Agent)
--ws-insecure-tlsОтключить проверку TLS (самоподписанные сертификаты)
--read-fileПрочитать файл с целевого устройства (например, /etc/passwd)
--rpcПросто проверить соединение вызовом erlang:node/0

🧪 Технические детали для обнаружения и настройки

Жёстко заданный cookie

Cookie Erlang, используемый в эксплойте:

10ecad5b446e86864832904cd439b6b70262

Это значение одинаково на всех протестированных устройствах SMA и жёстко задано в процессе Erlang на localhost:1050. Оно не является тем же самым, что и пользовательский cookie для кластеризации.

Параметр bmID

Параметр bmID должен начинаться с -3389 (например, -3389c1b25ccd). Допускаются произвольные значения после префикса, поэтому сигнатурное обнаружение не должно полагаться на фиксированный хеш.

Типы служб

Хотя в примере используется serviceType=SSH, другие значения, такие как TELNET, также работают. Эксплойт не зависит от типа службы.

Выбор порта

Порт 1050 является внутренним портом по умолчанию, однако в реальных атаках наблюдалось нацеливание и на порт 8188. Эксплойт может быть адаптирован к любому порту, на котором доступен протокол распределения Erlang.

Повышение привилегий

После получения оболочки от имени couchdb атакующий может использовать CVE-2026-15410 – XML‑RPC path traversal, позволяющий удалить исправление и затем повысить привилегии до root.


🛡️ Обнаружение и смягчение последствий

Индикаторы компрометации (IoCs)

  • Необычные WebSocket-соединения к /wsproxy с bmID, начинающимся с -3389.
  • Неожиданные исходящие соединения от устройства SMA к внешним IP-адресам.
  • Процессы, запущенные пользователем couchdb (например, bash, python, nc).
  • Изменение или создание файлов в /var/tmp/ пользователем couchdb.
Скачать инструмент