一、端口转发的含义
在内网渗透相关的文章中经常会听到“端口转发”这个名词,但并不太确定具体是什么,现在看来和NAT、端口映射是一个意思。
更具体而言,端口转发程序用于跳板机器上,可解决攻击机与目标机网络不通的问题;端口转发程序用于目标机上,可以解决攻击机与目标机网络通但具体服务端口被目标机防火墙限制的问题。
客户端<---->转发程序<---->目标服务(<---->表示网络连接)
二、Windows实现端口转发
下边以将本机9999端口转发到192.168.220.143:22为例。
2.1 使用portmap进行图形界面化操作实现端口转发
portmap下载地址:http://www.pc0359.cn/downinfo/85765.html
解压----双击启动
名称----随便填
输入IP----监听本机哪个IP,"Any IP"代表本机所有网卡
输入端口----监听本机那个端口
输入IP----转发到哪个IP
输入端口----转发到哪个端口
添加完成后需要启动
2.2 使用NATBypass通过命令行实现端口转发
NATBypass是一个golang实现的类lcx转发工具,较lcx最直接的效果是360未报毒。golang是编译型语言我们下载编译好的版本可以不需要安装go。
下载地址:https://github.com/cw1997/NATBypass/releases
转发命令:
nb-windows-amd64.exe -tran 9999 192.168.220.143:22
三、Linux实现端口转发
下面以将本机9999端口转发到10.10.6.91:21为例。
3.1 使用tcptunnel实现端口转发
下载地址:https://github.com/vakuum/tcptunnel
安装命令:
git clone https://github.com/vakuum/tcptunnel.git cd tcptunnel ./configure make ./tcptunnel --help
启动转发命令如下:
./tcptunnel --local-port=9999 --remote-host=10.10.6.91 --remote-port=21