Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
TCLtools — 用于思科IOS渗透测试的TCL脚本集合 | Kitploit
工具/GitHubGitHub/mohemiv/tcltools
端口扫描网络安全渗透测试红队
GitHubmohemiv/tcltools

TCLtools

用于思科IOS渗透测试的TCL脚本集合

查看仓库
691638年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

用于Cisco IOS渗透测试的TCL脚本

借助TCLtools,你可以将任何Cisco IOS硬件转变为跳板站。设置和使用都非常简单!

功能特性

  • TCLmap — 端口扫描器实现(nmap)
  • TCLproxy — 代理服务器实现

TCLproxy

TCLproxy 是一款用于通过Cisco设备进行跳板渗透的工具。它能够转发任意TCP端口或启动代理服务器。

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

关于TCL

TCL是一种高级、通用、解释型动态编程语言。Cisco IOS实现了TCL 8.3.4:

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

cisco(tcl)# puts $tcl_patchLevel
8.3.4

如何使用TCLtools

TCLtools需要在硬件上拥有特权级别15。

上传TCL脚本有四种方法:

  1. 从ftp或tftp服务器复制tcl脚本:
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. 通过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. 设置$argv变量并将脚本代码放入tclsh(不推荐):
root@kitploit:~
cisco# tclsh
cisco(tcl)# set argv [list -D 1080]
cisco(tcl)# ; Copy file contents onto this
  1. 使用"scripting tcl init"命令(不推荐):
root@kitploit:~
cisco# configure terminal
cisco(config)# scripting tcl init ftp://192.168.1.10/tclproxy.tcl
cisco(config)# end
cisco# tclsh

一个好的做法是设置最小空闲内存大小:

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

除了上面这些,或者作为替代,你可以通过以下命令查看设备性能:

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

备注

  • 不要使用TCLproxy进行TCP/IP端口扫描。由于Cisco未实现-async套接字选项,每次连接到被过滤端口后,socks服务器会中断30秒。
  • 过时的IOS版本可能会将TCL输出重定向到另一个控制台。这是IOS的一个Bug。
  • 如果断开控制台连接,TCL脚本将在下一次输出后停止。

已在Cisco 2811 / Cisco 2821集成服务路由器、Cisco Catalyst 2960和Cisco Catalyst 3750-X上测试通过。

联系我们

你可以打开一个新的Issue来报告Bug或建议新功能以改进项目。或者你也可以发送邮件至[email protected]。

下载工具