Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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
stunner — Probar y explotar servidores STUN/TURN por configuraciones incorrectas, permitiendo el pivoteo de red interna a través de proxy SOCKS, ataques de fuga de memoria y escaneo de puertos internos. | Kitploit
Herramientas/GitHubGitHub/firefart/stunner
Análisis de VulnerabilidadesExplotaciónSeguridad de RedesPruebas de PenetraciónMala ConfiguraciónRed Teaming
GitHubfirefart/stunner

stunner

Probar y explotar servidores STUN/TURN por configuraciones incorrectas, permitiendo el pivoteo de red interna a través de proxy SOCKS, ataques de fuga de memoria y escaneo de puertos internos.

Ver Repositorio
85746125hace 20 díasRevisado por Kitploit

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

STUNNER

Stunner es una herramienta para probar y explotar servidores STUN, TURN y TURN sobre TCP. TURN es un protocolo usado principalmente en videoconferencias y chats de audio (WebRTC).

Si encuentras un servidor mal configurado, puedes usar esta herramienta para abrir un proxy socks local que retransmite todo el tráfico a través del protocolo TURN hacia la red interna detrás del servidor.

Desarrollé esta herramienta durante una prueba de Cisco Expressway que resultó en varias vulnerabilidades: https://firefart.at/post/multiple_vulnerabilities_cisco_expressway/

Para obtener el nombre de usuario y contraseña requeridos, debes obtenerlos usando un método fuera de banda como capturar la solicitud Connect desde un navegador web con Burp. Agregué un flujo de trabajo de ejemplo al final del readme sobre cómo probarías dicho servidor.

LICENCIA

Este trabajo está licenciado bajo la Licencia Creative Commons Atribución-NoComercial-CompartirIgual 4.0 Internacional. Para ver una copia de esta licencia, visita http://creativecommons.org/licenses/by-nc-sa/4.0/ o envía una carta a Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.

RFCs implementados

STUN: RFC 5389

TURN: RFC 5766

TURN for TCP: RFC 6062

TURN Extension for IPv6: RFC 6156

Comandos disponibles

info

Este comando imprimirá información sobre el servidor stun o turn, como los protocolos soportados y atributos como el software utilizado.

Opciones

--debug, -d                   enable debug output (default: false)
--turnserver value, -s value  turn server to connect to in the format host:port
--tls                         Use TLS/DTLS on connecting to the STUN or TURN server (default: false)
--timeout value               connect timeout to turn server (default: 1s)
--help, -h                    show help (default: false)

Ejemplo

./stunner info -s x.x.x.x:443

range-scan

Este comando prueba varios rangos privados y restringidos para ver si el servidor TURN está configurado para permitir conexiones a las direcciones IP especificadas. Si un rango específico no está prohibido, puedes enumerar este rango más a fondo con los otros comandos proporcionados. Si una IP es alcanzable, significa que el servidor TURN reenviará tráfico a esa IP.

Opciones

--debug, -d                   enable debug output (default: false)
--turnserver value, -s value  turn server to connect to in the format host:port
--tls                         Use TLS/DTLS on connecting to the STUN or TURN server (default: false)
--protocol value              protocol to use when connecting to the TURN server. Supported values: tcp and udp (default: "udp")
--timeout value               connect timeout to turn server (default: 1s)
--username value, -u value    username for the turn server
--password value, -p value    password for the turn server
--help, -h                    show help (default: false)

Ejemplo

Conexión TURN basada en TCP (conexión desde ti al servidor TURN):

./stunner range-scan -s x.x.x.x:3478 -u username -p password --protocol tcp

Conexión TURN basada en UDP (conexión desde ti al servidor TURN):

./stunner range-scan -s x.x.x.x:3478 -u username -p password --protocol udp

socks

Este es uno de los comandos más útiles para servidores TURN que admiten conexiones TCP a servidores backend. Iniciará un servidor socks5 local sin autenticación y retransmitirá todo el tráfico TCP a través del protocolo TURN (UDP vía SOCKS actualmente no es compatible). Si el servidor está mal configurado, reenviará el tráfico a direcciones internas, por lo que esto puede usarse para alcanzar sistemas internos y abusar del servidor como proxy hacia la red interna. Si eliges también realizar consultas DNS a través de socks, se resolverán usando tu servidor de nombres local, por lo que es mejor trabajar con direcciones IPv4 e IPv6 privadas. Ten en cuenta que este módulo solo puede retransmitir tráfico TCP.

Opciones

--debug, -d                   enable debug output (default: false)
--turnserver value, -s value  turn server to connect to in the format host:port
--tls                         Use TLS/DTLS on connecting to the STUN or TURN server (default: false)
--protocol value              protocol to use when connecting to the TURN server. Supported values: tcp and udp (default: "udp")
--timeout value               connect timeout to turn server (default: 1s)
--username value, -u value    username for the turn server
--password value, -p value    password for the turn server
--listen value, -l value      Address and port to listen on (default: "127.0.0.1:1080")
--drop-public, -x             Drop requests to public IPs. This is handy if the target can not connect to the internet and your browser want's to check TLS certificates via the connection. (default: true)
--help, -h                    show help (default: false)

Ejemplo

./stunner socks -s x.x.x.x:3478 -u username -p password -x

Después de iniciar el proxy, abre tu navegador, apunta el proxy en tu configuración a socks5 con una IP de 127.0.0.1:1080 (asegúrate de no activar la opción de omitir direcciones locales, ya que queremos alcanzar las direcciones locales remotas) y llama a la IP de tu elección en el navegador.

Ejemplo: https://127.0.0.1, https://127.0.0.1:8443 o https://[::1]:8443 (estos llamarán a los puertos en el servidor TURN probado desde las interfaces locales).

También puedes configurar proxychains para usar este proxy (pero será muy lento, ya que cada solicitud resulta en múltiples solicitudes para habilitar el proxy). Solo edita /etc/proxychains.conf e ingresa el valor socks5 127.0.0.1 1080 bajo ProxyList.

Ejemplo de nmap a través de este proxy socks5 con proxychains configurado correctamente (nota que es -sT para hacer TCP syns, de lo contrario no usará el proxy socks5)

sudo proxychains nmap -sT -p 80,443,8443 -sV 127.0.0.1

brute-transports

Esto probablemente no arrojará información utilizable, pero puede ser útil para enumerar todos los transportes disponibles (=protocolos hacia sistemas internos) soportados por el servidor. Esto podría mostrar algunas implementaciones de protocolo personalizadas, pero en su mayoría solo devolverá los valores predeterminados.

Opciones

--debug, -d                   enable debug output (default: false)
--turnserver value, -s value  turn server to connect to in the format host:port
--tls                         Use TLS/DTLS on connecting to the STUN or TURN server (default: false)
--protocol value              protocol to use when connecting to the TURN server. Supported values: tcp and udp (default: "udp")
--timeout value               connect timeout to turn server (default: 1s)
--username value, -u value    username for the turn server
--password value, -p value    password for the turn server
--help, -h                    show help (default: false)

Ejemplo

./stunner brute-transports -s x.x.x.x:3478 -u username -p password

brute-password

Este comando prueba todas las contraseñas de un archivo dado para un nombre de usuario a través del protocolo TURN (UDP). Esto puede ser útil al analizar un pcap donde se ve el nombre de usuario pero no la contraseña. Ten en cuenta que un ataque de fuerza bruta offline es mucho más rápido en este caso.

Opciones

Descargar herramienta