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
shootback — un túnel TCP inverso te permite acceder al objetivo detrás de NAT o firewall | Kitploit
Herramientas/GitHubGitHub/aploium/shootback
Ingeniería InversaSeguridad de RedesPruebas de PenetraciónRed Teaming
GitHubaploium/shootback

shootback

un túnel TCP inverso te permite acceder al objetivo detrás de NAT o firewall

Ver Repositorio
976233hace 4 mesesRevisado 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

shootback

shootback es un túnel TCP inverso que te permite acceder a un objetivo detrás de NAT o firewall
Túnel TCP inverso, permite que las máquinas de red interna detrás de NAT o firewall sean accesibles desde la red externa.
Consume menos del 1% de CPU y 8 MB de memoria con 800 conexiones concurrentes.
slaver es un único archivo y solo depende de la biblioteca estándar de python (2.7/3.4+).

Cómo funciona

Cómo funciona shootback

Escenario típico

  1. Acceder a la computadora de la empresa/escuela (sin IP de Internet) desde casa
    Conectar desde casa a una computadora de la empresa o escuela sin IP externa independiente
  2. Hacer pública una red/sitio privado.
    Permitir que la red interna o los sitios de red interna sean accesibles desde la red pública
  3. Ayudar en la penetración de redes privadas.
    Asistir en la penetración de redes internas
  4. Ayudar en competiciones CTF fuera de línea.
    Asistir en competiciones CTF fuera de línea, permitiendo que los competidores externos también tengan el entorno de red de la competición
  5. Conectar a un dispositivo con IP dinámica, como ADSL
    Conectar a dispositivos con IP dinámica, como ADSL
  6. Cifrado SSL entre slaver y master
    Soporte de cifrado SSL entre slaver y master

Comenzando

  1. requisito:

    • Master: Python3.4+, independiente del SO
    • Slaver: Python2.7/3.4+, independiente del SO
    • sin dependencias externas, solo la biblioteca estándar de Python
  2. descargar git clone https://github.com/aploium/shootback

  3. (opcional) si necesitas un slaver.py de un solo archivo, ejecuta python3 build_singlefile_slaver.py

  4. ejecuta estos comandos

    root@kitploit:~
    # master listen :10000 for slaver, :10080 for you
    python3 master.py -m 0.0.0.0:10000 -c 127.0.0.1:10080
    
    # slaver connect to master, and use example.com as tunnel target
    # ps: you can use python2 in slaver, not only py3
    python3 slaver.py -m 127.0.0.1:10000 -t example.com:80
    
    # doing request to master
    curl -v -H "host: example.com" 127.0.0.1:10080
    # -- some HTML content from example.com --
    # -- some HTML content from example.com --
    # -- some HTML content from example.com --
    
  5. un ejemplo más real (con ssl):
    asume que tu master es 22.33.44.55 (como en el gráfico de arriba)

    root@kitploit:~
    # slaver_local_ssh <---> slaver <--[SSL]--> master(22.33.44.55) <--> You
    
    # ---- master ----
    python3 master.py -m 0.0.0.0:10000 -c 0.0.0.0:10022 --ssl
    
    # ---- slaver ----
    # ps: the `--ssl` option is for slaver-master encryption, not for SSH
    python(or python3) slaver.py -m 22.33.44.55:10000 -t 127.0.0.1:22 --ssl
    
    # ---- YOU ----
    ssh 22.33.44.55 -p 10022
    
  6. para más ayuda, consulta python3 master.py --help y python3 slaver.py --help

Consejos

  1. ejecutar como daemon:
    nohup python(or python3) slaver.py -m host:port -t host:port -q &
    o:

    root@kitploit:~
    # screen is a linux command
    screen
    python(or python3) slaver.py -m host:port -t host:port
    # press  ctrl-a d  to detach screen
    # and if necessary, use "screen -r" to reattach
    
  2. CUALQUIER servicio que use TCP es compatible con shootback. HTTP/FTP/Proxy/SSH/VNC/...

  3. shootback por sí solo solo hace el trabajo de transmisión, no maneja cifrado ni proxy.
    sin embargo, puedes usar un proxy de terceros (ej: shadowsocks) como objetivo del slaver.
    por ejemplo:
    shadowsocks_server<-->shootback_slaver<-->shootback_master<-->shadowsocks_client(socks5)

Advertencia

  1. en Windows, debido al límite de select.select() de CPython, shootback NO puede manejar más de 512 conexiones concurrentes, puedes encontrar
    ValueError: too many file descriptors in select()
    Si necesitas manejar una concurrencia tan alta en Windows, se recomienda Anaconda-Python3, su límite en Windows es 2048

Rendimiento

  1. en mi laptop con Intel I7-4710MQ, Win10 x64:
    • 1.6 Gbits/s de transferencia en bucle local (usando iperf), con aproximadamente 5% de ocupación de CPU.
    • 800 hilos ApacheBench, con menos del 1% de CPU y 8 MB de consumo de memoria
Descargar herramienta