Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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
shootback — um túnel TCP reverso permite acessar um alvo atrás de NAT ou firewall | Kitploit
Ferramentas/GitHubGitHub/aploium/shootback
Engenharia ReversaSegurança de RedeTestes de PenetraçãoRed Teaming
GitHubaploium/shootback

shootback

um túnel TCP reverso permite acessar um alvo atrás de NAT ou firewall

Ver Repositório
976233há 4 mesesRevisado 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

shootback

shootback é um túnel TCP reverso que permite acessar um destino atrás de NAT ou firewall
Túnel TCP reverso, que permite que máquinas internas atrás de NAT ou firewall sejam acessadas pela rede externa.
Consome menos de 1% de CPU e 8MB de memória sob 800 conexões simultâneas.
slaver é arquivo único e depende apenas da biblioteca padrão do Python (2.7/3.4+).

Como funciona

Como o shoot back funciona

Cenário típico

  1. Acessar o computador da empresa/escola (sem IP público) de casa
    Conectar de casa ao computador da empresa ou escola que não tem IP externo independente
  2. Tornar uma rede privada/site público
    Tornar a intranet ou sites internos acessíveis pela rede pública
  3. Auxiliar na penetração de redes internas
    Auxiliar na penetração de intranets
  4. Ajudar em competições offline de CTF
    Auxiliar em competições presenciais de CTF, permitindo que participantes externos também tenham acesso ao ambiente de rede da competição
  5. Conectar a dispositivos com IP dinâmico, como ADSL
    Conectar a dispositivos com IP dinâmico, como ADSL
  6. Criptografia SSL entre slaver e master
    Suporte a criptografia SSL entre slaver e master

Primeiros passos

  1. Requisitos:

    • Master: Python3.4+, independente de SO
    • Slaver: Python2.7/3.4+, independente de SO
    • Sem dependências externas, apenas a biblioteca padrão do Python
  2. Baixe com git clone https://github.com/aploium/shootback

  3. (Opcional) Se precisar de um slaver.py em arquivo único, execute python3 build_singlefile_slaver.py

  4. Execute estes comandos

    root@kitploit:~
    # master escuta em :10000 para slaver, :10080 para você
    python3 master.py -m 0.0.0.0:10000 -c 127.0.0.1:10080
    
    # slaver conecta ao master e usa example.com como destino do túnel
    # obs: você pode usar python2 no slaver, não apenas py3
    python3 slaver.py -m 127.0.0.1:10000 -t example.com:80
    
    # fazendo requisição ao master
    curl -v -H "host: example.com" 127.0.0.1:10080
    # -- algum conteúdo HTML de example.com --
    # -- algum conteúdo HTML de example.com --
    # -- algum conteúdo HTML de example.com --
    
  5. Um exemplo mais realista (com ssl):
    suponha que seu master seja 22.33.44.55 (como no gráfico acima)

    root@kitploit:~
    # slaver_local_ssh <---> slaver <--[SSL]--> master(22.33.44.55) <--> Você
    
    # ---- master ----
    python3 master.py -m 0.0.0.0:10000 -c 0.0.0.0:10022 --ssl
    
    # ---- slaver ----
    # obs: a opção `--ssl` é para criptografia slaver-master, não para SSH
    python(ou python3) slaver.py -m 22.33.44.55:10000 -t 127.0.0.1:22 --ssl
    
    # ---- VOCÊ ----
    ssh 22.33.44.55 -p 10022
    
  6. Para mais ajuda, veja python3 master.py --help e python3 slaver.py --help

Dicas

  1. Executar como daemon:
    nohup python(ou python3) slaver.py -m host:porta -t host:porta -q &
    ou:

    root@kitploit:~
    # screen é um comando do linux
    screen
    python(ou python3) slaver.py -m host:porta -t host:porta
    # pressione ctrl-a d para desanexar o screen
    # e, se necessário, use "screen -r" para reanexar
    
  2. Qualquer serviço que use TCP pode ser usado com shootback. HTTP/FTP/Proxy/SSH/VNC/...

  3. O shootback em si apenas faz o trabalho de transmissão, não lida com criptografia ou proxy.
    No entanto, você pode usar um proxy de terceiros (ex: shadowsocks) como destino do slaver.
    Por exemplo:
    shadowsocks_servidor<-->shootback_slaver<-->shootback_master<-->shadowsocks_cliente(socks5)

Aviso

  1. No Windows, devido à limitação do select.select() do CPython, o shootback não pode lidar com mais de 512 conexões simultâneas, você pode encontrar
    ValueError: too many file descriptors in select()
    Se você precisar lidar com alta concorrência no Windows, Anaconda-Python3 é recomendado, seu limite no Windows é 2048

Desempenho

  1. No meu notebook com Intel I7-4710MQ, Win10 x64:
    • 1,6 Gbits/s de transferência em loopback (usando iperf), com cerca de 5% de uso da CPU.
    • 800 threads no ApacheBench, com menos de 1% de CPU e 8MB de consumo de memória
Baixar ferramenta