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
TCLtools — Colección de scripts TCL para pruebas de penetración en Cisco IOS | Kitploit
Herramientas/GitHubGitHub/mohemiv/tcltools
Escaneo de PuertosSeguridad de RedesPruebas de PenetraciónRed Teaming
GitHubmohemiv/tcltools

TCLtools

Colección de scripts TCL para pruebas de penetración en Cisco IOS

Ver Repositorio
6916hace 8 añosRevisado 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

Scripts TCL para pruebas de penetración en Cisco IOS

Con TCLtools puedes transformar cualquier hardware Cisco IOS en una estación de pivote. ¡Es fácil de configurar y usar!

Características

  • TCLmap — Implementación de escáner de puertos (nmap)
  • TCLproxy — Implementación de servidor proxy

TCLproxy

TCLproxy es una herramienta para pivotar a través de dispositivos Cisco. Es capaz de reenviar cualquier puerto TCP o lanzar un servidor proxy.

root@kitploit:~
TCLproxy v0.0.3

Usage: tclsh ./tclproxy.tcl [-L address]... [-D address]...

Proxy server implementation. Binary protocols are supported.

  -L [bind_address:]port:remote_host:remote_port
    Forward a remote port to a local port.
    Multiple connections and multiple forwards are supported.

  -D [bind_address:]port
    Launch a SOCKS4a proxy server.

 Forwarding between VRF tables:
    -D [VRF_table_for_listening@][bind_address]:port[@VRF_table_for_outbound_connections]
    -L [VRF_table_for_listening@][bind_address]:port[@VRF_table_for_outbound_connections]:remote_host:remote_port

  optional arguments:
  -f, --disable-eof-check      Speed increases by 1-15 KB/s, but connections don't close automatically. Dangerous!
  -h, --help                   Show this help message and exit.
  -q, --disable-output         Quite mode. In this mode, you can disconnect from the console without script termination. Dangerous!
  -l, --low-ports              Use privileged source ports. Required for NFS (source port increments from 1 to 1023 every connection)
  -n, --disable-dns            Do not resolve DNS names in SOCKS mode

  The effect of --disable-eof-check and --disable-output options depends on hardware architecture and firmware version.
  TCLproxy will not work for port scanning, use tclmap.tcl instead.

   example:
    $ sudo py3tftp -p 69
    cisco# configure terminal
    cisco(config)# scripting tcl low-memory 5242880
    cisco(config)# end
    cisco# copy tftp://192.168.1.10/tclproxy.tcl flash:/
    cisco# tclsh tclproxy.tcl -h
    cisco# tclsh tclproxy.tcl -L 5901:10.0.0.1:445 -D :5902@enterpriseVRF -D 5900
    ...
    cisco# del flash:/tclproxy.tcl

Acerca de TCL

TCL es un lenguaje de programación dinámico, interpretado, de alto nivel y propósito general. Cisco IOS implementa TCL 8.3.4:

root@kitploit:~
cisco# tclsh
cisco(tcl)# puts $tcl_version
8.3

cisco(tcl)# puts $tcl_patchLevel
8.3.4

Cómo usar TCLtools

TCLtools requiere nivel de privilegio 15 en el hardware.

Hay cuatro métodos para cargar scripts TCL:

  1. Copiar script TCL desde servidor ftp o tftp:
root@kitploit:~
$ sudo py3tftp -p 69
or
$ python2 -m pyftpdlib 

cisco# copy tftp://192.168.1.10/tclproxy.tcl flash:/
cisco# copy ftp://192.168.1.10:2121/tclproxy.tcl flash:/
cisco# tclsh tclproxy.tcl

or

cisco# tclsh ftp://192.168.1.10:2121/tclproxy.tcl
  1. Crear nuevo archivo mediante tclsh:
root@kitploit:~
$ cat tclproxy.tcl | sed -E 's/([{}$\[])/\\\1/g'
cisco# tclsh
cisco(tcl)# puts [open "flash:tclproxy.tcl" w+] {
cisco(tcl)# ; Copy file contents onto this
cisco(tcl)# }
cisco(tcl)# exit
cisco#
cisco# tclsh tclproxy.tcl
  1. Establecer la variable $argv y colocar el código del script en tclsh (no recomendado):
root@kitploit:~
cisco# tclsh
cisco(tcl)# set argv [list -D 1080]
cisco(tcl)# ; Copy file contents onto this
  1. Usar el comando 'scripting tcl init' (no recomendado):
root@kitploit:~
cisco# configure terminal
cisco(config)# scripting tcl init ftp://192.168.1.10/tclproxy.tcl
cisco(config)# end
cisco# tclsh

Una buena práctica es establecer el tamaño mínimo de memoria libre:

root@kitploit:~
cisco# configure terminal
cisco(config)# scripting tcl low-memory 5242880
cisco(config)# end

Además, o en su lugar, puedes ver el rendimiento del dispositivo con los siguientes comandos:

root@kitploit:~
cisco# show processes cpu | i Tcl
cisco# show processes mem | i Tcl

Observaciones

  • No uses TCLproxy para escaneo de puertos TCP/IP. Debido a que Cisco no implementa la opción de socket -async, el servidor socks se interrumpe durante 30 segundos después de cada conexión a cualquier puerto filtrado.
  • Versiones obsoletas de IOS pueden redirigir la salida de TCL a otra consola. Es un error de IOS.
  • Si te desconectas de la consola, el script TCL se detiene después de la siguiente salida.

Probado en Cisco 2811 / Cisco 2821 Integrated Services Router, Cisco Catalyst 2960 y Cisco Catalyst 3750-X.

Contáctenos

Puedes abrir un nuevo issue para reportar un error o sugerir una nueva característica para mejorar el proyecto. O puedes escribir unas líneas a [email protected].

Descargar herramienta