端口转发相关工具和用法
端口转发相关工具和用法
LCX端口转发
LCX是一款端口转发工具,分为Windows版和Linux版,Linux版本为PortMap。
LCX有端口映射和端口转发两大功能,例如当目标的3389端口只对内开放而不对外开放时,可以使用端口映射将3389端口映射到目标的其他端口使用;当目标处于内网或目标配置的策略只允许访问固定某一端口时,可以通过端口转发突破限制。
Windows版的LCX用法:
1 |
|
Linux版的LCX用法:
1 |
|
LCX实验一
实验场景
由于配置了防火墙只允许web访问,这个时候攻击者想访问3389端口,远程连接是不可以的,就需要使 用LCX进行端口转发
Web服务器开启了80端口,3389端口不允许出网,可以将web服务器的3389端口转发到允许出网的53 端口,这个时候攻击者在本地监听53端口并且转发到1111端口,这个时候攻击者连接自己的1111端 口,等于访问web服务器的3389端口

环境与问题解决
攻击机器:本机(10.210.99.82)
靶机:win7虚拟机(10.210.100.145)
1.解决主机ping不通虚拟机(开启防火墙)的问题:https://www.win10h.com/jiaocheng/41513.html
2.win7开启远程桌面连接


此时攻击机可以远程连接
win7新建规则:

此时无法远程连接

实验复现
流程:将攻击机的53端口的流量带到1111端口,然后将靶机的3389端口转发到攻击机的53端口,由于攻击机的53端口的流量被带到了1111端口,所以访问127.0.0.1:1111即访问靶机的3389端口
1、在攻击机器上运行以下命令,监听本地53端口并且转发到本地1111端口
1 |
|
2、在web靶机上运行以下命令, 将本地的3389端口转发到10.210.99.82的 53端口
1 |
|
3、在攻击机器上运行远程桌面,地址为127.0.0.1:1111
后续可通过mimikatz抓取密码然后登录
LCX实验二
实验场景
Web服务器开启了80端口,3389端口不允许出网,可以将web服务器的3389端口转发到允许出网的53端口,这个时候攻击者在VPS监听54端口并且转发到1111端口,这个时候攻击者连接VPS的1111端口, 等于访问web服务器的3389端口
实验环境
内网攻击机器:本机(10.210.99.82)
内网靶机:win7虚拟机(10.210.100.145)
vps:49.234.20.184
实验复现
1、在攻击机器上运行以下命令,监听本地54端口并且转发到本地1111端口
1 |
|
2、在vps运行lcx -listen 54 1111,因为我的机器vps机器是linux系统所以使用portmap
1 |
|

3、在攻击机器上连接49.234.20.184:1111
ssh端口转发(linux)
当上传工具被杀软杀掉之后可以考虑ssh端口转发
SSH介绍
SSH通过网络远程访问主机提供保护,可以对客户端和服务端之间的数据传输进行压缩和加密,有身份 验证、SCP、SFTP、和端口转发的功能
SSH转发常用的参数介绍:

1、本地转发(正向访问A)
实验场景
现在有如下的网络,电脑A是攻击机器,可以直接访问电脑B,但是访问不了机器C,可以借助B机器上的 SSH命令进行端口转发访问机器C
1、以下是实验环境拓扑图:

实验环境
攻击机器A(win11):10.210.99.82
官网机器B(centos7):10.210.100.146/192.168.144.128
内网机器C(win7):192.168.144.130
添加网卡

centos添加网络适配器vmnet4,两个网段
win7配置为vmnet4
网络情况如下:
1 |
|
实验复现
1、使用webshell或者其他其他的方式连接到B机器
2、使用转发的命令进行转发
1 |
|
3、访问跳板机器的3333端口就可以访问内网机器的3389端口
这里需要关掉centos7的防火墙
1 |
|

2、远程转发(反向访问A)
实验场景
攻击机者已经拿下了机器B 但是因为是内网机器所以无法直接访问,同时无法访问c主机,但是因为b有 ssh,我们使用远程转发 以下是实验环境拓扑图:
实验环境
攻击机器A(centos7 公网):49.234.20.184
官网机器B(centos7 内网):10.210.100.146/192.168.144.128
内网机器C(ubuntu 内网):192.168.144.131(需要安装ssh服务)
网络情况如下:
1 |
|
实验复现
1、通过反向连接(钓鱼)的方式连入公司的网络
2、在B机器上执行如下的转发命令
1 |
|
3、在攻击的机器vps上访问1111端口就可以了(这里只能本地访问)
1 |
|
3、动态转发(类似socks代理)
动态转发类似SOCKS代理,不仅仅是针对么某一个端口进行转发 后续学习
NETSH端口转发(windows)
NETSH介绍
netsh是windows系统自带命令行程序,攻击者无需上传第三方工具即可利用netsh程序可进行端口转 发操作,可将内网中其他服务器的端口转发至本地访问运行这个工具需要管理员的权限
netsh实验
实验场景
现在有如下的网络,电脑A是攻击机器,可以直接访问电脑B,但是访问不了机器C,可以借助B机器上的 netsh命令进行端口转发访问机器C,这里注意只能访问端口
实验环境
攻击机器A(win11):121.248.50.50
官网机器B(windows7 内网):10.210.100.147/192.168.144.130
内网机器C(centos7 内网):192.168.144.128
实验复现
1、我们通过webshell或者CS远控对方电脑
2、通过远控攻击在B上执行如下的命令(只有管理员才能执行)
将C机器的22端口转发到B机器上的9999端口
1 |
|
3、查看是否开启转发
1 |
|
4、在攻击机器A上运行连接靶机C的端口
1 |
|
5、删除转发如下
1 |
|