Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
stunner — Testar e explorar servidores STUN/TURN por configurações incorretas, permitindo o pivoteamento de rede interna via proxy SOCKS, ataques de vazamento de memória e varredura de portas internas. | Kitploit
Ferramentas/GitHubGitHub/firefart/stunner
Análise de VulnerabilidadesExploraçãoSegurança de RedeTestes de PenetraçãoConfiguração IncorretaRed Teaming
GitHubfirefart/stunner

stunner

Testar e explorar servidores STUN/TURN por configurações incorretas, permitindo o pivoteamento de rede interna via proxy SOCKS, ataques de vazamento de memória e varredura de portas internas.

Ver Repositório
85746125há 20 diasRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

STUNNER

Stunner é uma ferramenta para testar e explorar servidores STUN, TURN e TURN sobre TCP. TURN é um protocolo usado principalmente em videoconferências e chats de áudio (WebRTC).

Se você encontrar um servidor mal configurado, pode usar esta ferramenta para abrir um proxy socks local que retransmite todo o tráfego via protocolo TURN para a rede interna atrás do servidor.

Desenvolvi esta ferramenta durante um teste do Cisco Expressway, que resultou em algumas vulnerabilidades: https://firefart.at/post/multiple_vulnerabilities_cisco_expressway/

Para obter o nome de usuário e senha necessários, você precisa buscá-los usando um método fora de banda, como farejar a solicitação Connect de um navegador web com Burp. Adicionei um exemplo de fluxo de trabalho no final do readme sobre como você testaria tal servidor.

LICENÇA

Este trabalho está licenciado sob a Licença Creative Commons Atribuição-NãoComercial-CompartilhaIgual 4.0 Internacional. Para visualizar uma cópia desta licença, visite http://creativecommons.org/licenses/by-nc-sa/4.0/ ou envie uma carta para Creative Commons, PO Box 1866, Mountain View, CA 94042, EUA.

RFCs implementados

STUN: RFC 5389

TURN: RFC 5766

TURN para TCP: RFC 6062

Extensão do TURN para IPv6: RFC 6156

Comandos Disponíveis

info

Este comando exibirá algumas informações sobre o servidor stun ou turn, como protocolos suportados e atributos, como o software utilizado.

Opções

--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)

Exemplo

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

range-scan

Este comando tenta várias faixas privadas e restritas para ver se o servidor TURN está configurado para permitir conexões aos endereços IP especificados. Se uma faixa específica não for proibida, você pode enumerar essa faixa com os outros comandos fornecidos. Se um IP for alcançável, significa que o servidor TURN encaminhará tráfego para este IP.

Opções

--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)

Exemplo

Conexão TURN baseada em TCP (conexão sua para o servidor TURN):

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

Conexão TURN baseada em UDP (conexão sua para o servidor TURN):

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

socks

Este é um dos comandos mais úteis para servidores TURN que suportam conexões TCP para servidores de backend. Ele iniciará um servidor socks5 local sem autenticação e retransmitirá todo o tráfego TCP através do protocolo TURN (UDP via SOCKS não é suportado atualmente). Se o servidor estiver mal configurado, ele encaminhará o tráfego para endereços internos, então isso pode ser usado para alcançar sistemas internos e abusar do servidor como um proxy para a rede interna. Se você optar por também fazer consultas DNS via socks, elas serão resolvidas usando seu servidor de nomes local, portanto é melhor trabalhar com endereços IPv4 e IPv6 privados. Esteja ciente de que este módulo só pode retransmitir tráfego TCP.

Opções

--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)

Exemplo

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

Após iniciar o proxy, abra seu navegador, aponte o proxy nas configurações para socks5 com um IP de 127.0.0.1:1080 (certifique-se de não marcar a opção de ignorar endereço local, pois queremos alcançar os endereços locais remotos) e chame o IP de sua escolha no navegador.

Exemplo: https://127.0.0.1, https://127.0.0.1:8443 ou https://[::1]:8443 (esses chamarão as portas no servidor TURN testado a partir das interfaces locais).

Você também pode configurar proxychains para usar este proxy (mas será muito lento, pois cada requisição resulta em múltiplas requisições para habilitar o proxy). Basta editar /etc/proxychains.conf e inserir o valor socks5 127.0.0.1 1080 em ProxyList.

Exemplo de nmap através deste proxy socks5 com proxychains configurado corretamente (note que é -sT para fazer TCP syn, caso contrário não usará o proxy socks5)

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

brute-transports

Provavelmente não produzirá informações úteis, mas pode ser útil para enumerar todos os transportes disponíveis (=protocolos para sistemas internos) suportados pelo servidor. Isso pode mostrar algumas implementações de protocolo personalizadas, mas na maioria das vezes retornará apenas os padrões.

Opções

--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)

Exemplo

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

brute-password

Este comando tenta todas as senhas de um arquivo fornecido para um nome de usuário através do protocolo TURN (UDP). Isso pode ser útil ao analisar um pcap onde você pode ver o nome de usuário, mas não a senha. Observe que uma força bruta offline é muito mais rápida neste caso.

Opções

Baixar ferramenta