新闻资讯

Metasploit 怎么实现端口转发?2025 最新命令与实战教程

2025-11-25

一、Metasploit 能直接做端口转发吗?核心工具是什么?

Metasploit 能直接实现端口转发,核心依赖其内置的 meterpreter 会话 与 portfwd 命令,通过在已控制的目标主机上建立转发规则,实现跨网络的服务访问。简单说,就是以被控主机为 “跳板”,将内网服务端口映射到可访问的端口上。若被控主机处于无公网 IP 的内网环境,搭配花生壳的内网穿透功能,用花生壳域名绑定网络节点,能让 Metasploit 端口转发突破网络限制,实现远程稳定访问。

二、Metasploit 端口转发分哪几类?不同场景怎么选?

Metasploit 的端口转发主要有三类,适配不同渗透测试需求,核心均围绕portfwd命令展开:
- 本地端口转发:适合通过被控主机访问其内网其他设备服务的场景,比如被控主机(192.168.1.100)能访问内网数据库(192.168.1.5:3306),通过转发可让本地设备直接访问该数据库。这是最常用的类型,配合花生壳可解决公网访问难题。
- 远程端口转发:用于将被控主机的服务端口映射到 Metasploit 攻击机端口,比如把被控主机的 3389 远程桌面端口转发到攻击机的 1122 端口,方便远程管理。
- 动态端口转发:通过socks4a模块创建代理,将本地端口作为 SOCKS 代理入口,可访问被控主机内网的多个服务,适合大范围内网探测场景。
日常渗透测试优先选本地转发,搭配花生壳能大幅提升端口转发的灵活性与覆盖范围。

三、本地端口转发怎么配置?以数据库 3306 端口为例实操

以通过被控主机转发内网数据库 3306 端口到本地 1433 端口为例,3 步即可完成 Metasploit 端口转发配置:
1. 获取 meterpreter 会话:先通过漏洞利用模块(如exploit/windows/smb/ms17_010_eternalblue)攻陷目标主机,获取 meterpreter 会话,终端显示 “meterpreter> ” 即表示成功进入。
2. 执行 portfwd 转发命令:在 meterpreter 会话中输入命令:
portfwd add -l 1433 -p 3306 -r 192.168.1.5
其中-l指定本地攻击机端口,-p指定目标服务端口,-r指定内网服务 IP。该命令意为将 192.168.1.5 的 3306 端口转发到本地 1433 端口。
3. 验证转发效果:本地打开数据库客户端,连接参数填127.0.0.1、端口1433及数据库账号密码,能成功连接即说明 Metasploit 端口转发生效。若需外网设备通过该转发访问数据库,先下载花生壳客户端(下载地址: https://hsk.oray.com/download ),用花生壳域名绑定本地攻击机 IP,外网即可通过 “花生壳域名:1433” 访问内网数据库。
图片alt

四、远程端口转发与动态转发有何不同?命令怎么写?

远程端口转发与动态转发的配置逻辑不同,适配场景更具针对性,核心仍需依托 meterpreter 会话:
1. 远程端口转发配置:若需将被控主机 3389 端口转发到攻击机 1122 端口,在 meterpreter 会话中执行:
portfwd add -L 192.168.0.10 -l 1122 -p 3389 -r 127.0.0.1
其中-L指定攻击机 IP,-l指定攻击机端口,-p指定被控主机端口,-r填被控主机回环地址。配置后,访问攻击机 1122 端口即可连接被控主机 3389 远程桌面。
2. 动态端口转发配置:先在 Metasploit 控制台加载 socks4a 模块:
use auxiliary/server/socks4a
set SRVPORT 1080
run
再在 meterpreter 会话中执行转发命令,将本地 1080 端口作为 SOCKS 代理入口,此时通过代理工具配置 127.0.0.1:1080 代理,即可访问被控主机内网所有服务。
3. 结合花生壳提升实用性:若攻击机 IP 为动态,打开花生壳客户端,将攻击机 IP 与花生壳域名绑定,外网设备通过花生壳域名即可稳定访问转发后的端口,无需频繁修改连接地址。

五、Metasploit 端口转发失败?5 个关键问题快速排查

端口转发失败多因会话异常或命令配置错误,按以下思路可高效解决:
1. 检查 meterpreter 会话状态:若提示 “Invalid session”,执行sessions -l查看会话是否存活,若已断开需重新获取会话后再配置 Metasploit 端口转发。
2. 验证命令参数格式:portfwd命令参数严格区分大小写,-l(小写 L)与-L(大写 L)不可混淆,-r后的 IP 需确保被控主机能正常 ping 通,否则转发规则无法生效。
3. 排查端口占用情况:本地攻击机端口被占用会导致转发失败,Windows 执行netstat -ano | findstr 1433,Linux/Mac 执行lsof -i:1433,关闭占用进程或更换-l后的端口即可。
4. 确认防火墙设置:被控主机与攻击机需放行对应端口,被控主机可执行netsh advfirewall firewall add rule name="PortForward" dir=in action=allow protocol=TCP localport=3306开放端口,攻击机同理开放转发端口。
5. 检查花生壳配置:外网访问失败时,确认花生壳客户端已登录且在线,域名绑定的 IP 与端口和攻击机转发配置一致,避免因 IP 变动导致 Metasploit 端口转发的外网访问中断。


拓展阅读

1. Metasploit 的 portfwd 命令还有哪些常用参数? :portfwd list可查看所有转发规则,portfwd delete -l 1433删除指定端口规则,portfwd flush清空所有规则,搭配花生壳可灵活管理多端口转发。

2. meterpreter 会话断开后转发规则会失效吗? :会失效。meterpreter 会话断开后,所有基于该会话的 Metasploit 端口转发规则自动清除,需重新连接会话并执行portfwd命令恢复。

3. 花生壳与 Metasploit 端口转发如何协同增效? :Metasploit 解决内网服务的端口映射问题,花生壳解决公网访问与动态 IP 问题,两者结合后,外网设备可通过 “花生壳域名:转发端口” 直接访问 Metasploit 转发的内网服务,适配远程渗透测试场景。

上一篇: 在外网怎么访问ftp服务器 下一篇:
新闻资讯
热门专题
最新专题
友情链接