20232407 2025-2026-1 《网络与系统攻防技术》 实验六实验报告
1.实验内容
(1)发现Metasploitable2靶机,并对其进行端口扫描、漏洞扫描;
(2)利用Vsftpd源码包后门漏洞;
(3)利用SambaMS-RPC Shell命令注入漏洞;
(4)利用Java RMI SERVER命令执行漏洞;
(5)利用PHP CGI参数执行注入漏洞。
2.实验过程
一.发现Metasploitable2靶机,并对其进行端口扫描、漏洞扫描
1.发现Metasploitable2靶机
查看靶机的IP地址用于后续扫描,其IP地址为为192.168.183.148

在kali虚拟机中打开msfconsole,执行ARP扫描。输入如下命令:
-
search arp_sweep -
use 0 -
set RHOSTS 192.168.183.148/24 -
run

2.端口扫描
使用nmap进行端口扫描,通过命令nmap -sS -sV 192.168.183.148进行SYN扫描并进行版本探测

看出靶机上开放了大量的端口,同时存在有很多漏洞
在Metasploit中使用portscan/tcp扫描,同样能够扫描到靶机开放的端口,命令如下:
use auxiliary/scanner/portscan/tcp
set RHOSTS 192.168.183.148
set THREADS 10
run

3.漏洞扫描
在kali中输入nmap -script=vuln 192.168.183.148对靶机进行漏洞扫描
21端口运行的是FTP服务,由vsftpd软件提供。该服务存在vsFTPd 2.3.4 后门漏洞,对应 CVE 编号为CVE-2011-2523,BID 编号为48539。该漏洞在 2011 年 7 月被披露,属于可利用的高危漏洞。从 “Exploit results” 中可以看到,攻击者通过该漏洞执行id命令后,获取到了uid=0(root) gid=0(root)的权限,说明攻击者可通过该漏洞直接获得目标系统的 root 权限,能对系统进行任意操作,如篡改文件、植入恶意程序、窃取数据等。

25端口运行的是SMTP服务。存在匿名 Diffie-Hellman 密钥交换中间人(MitM)漏洞,该漏洞使 TLS 服务在匿名 Diffie-Hellman 密钥交换时,仅能防范被动窃听,易受主动中间人攻击,导致会话数据的保密性和完整性完全被破坏。还存在TLS 协议 DHE_EXPORT 密码降级中间人漏洞(Logjam),对应 CVE 编号为CVE-2015-4000,BID 编号为74733。该漏洞会让攻击者将 TLS 会话安全性降级到 512 位的出口级加密,这种加密强度较弱,攻击者可轻易破解加密流,监控或篡改加密数据。这两个漏洞均属于中间人攻击类型,会导致邮件通信的保密性和完整性被破坏,攻击者可窃取、篡改邮件内容,甚至进行钓鱼等恶意活动。

80端口运行HTTP服务,存在SQL 注入漏洞,多个 URL 路径(如/dav/、/mutillidae/下的各类 PHP 页面)存在 SQL 注入风险,攻击者可通过构造恶意 SQL 查询,窃取数据库数据、篡改内容甚至获取服务器权限。属于高危 Web 漏洞,可导致数据库信息泄露、应用逻辑被破坏,严重时可危及整个服务器安全。


1099 端口运行的是RMI注册表服务。存在RMI注册表默认配置远程代码执行漏洞。其默认配置允许从远程 URL 加载类,这会导致攻击者可利用该漏洞执行远程代码。该漏洞属于高危漏洞,攻击者可通过此漏洞在目标系统上执行任意代码,从而完全控制服务器,进行数据窃取、系统破坏等操作。

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

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

二.利用Vsftpd源码包后门漏洞
在kali中输入nmap -sV -p 21 192.168.183.148扫描靶机的21端口,查看该端口是否开启以及其上运行的服务与版本。该端口开放,且运行的是vsftpd 2.3.4。

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

三.利用SambaMS-RPC Shell命令注入漏洞
通过命令nmap -p 139 192.168.183.148扫描靶机的139端口,查看该端口是否开放

使用Metasploit框架利用Samba服务的usermap_script漏洞。利用Samba服务的usermap_script漏洞可以获得靶机的shell。能够查看当前路径以及目录中的文件,查看当前用户发现为root用户。


四.利用Java RMI SERVER命令执行漏洞
通过命令nmap -p 1099 192.168.183.148扫描靶机的1099端口,查看该端口是否开放

使用Metasploit框架利用Java RMI服务的远程代码执行漏洞。

Java RMI服务的远程代码执行漏洞可以得到连接靶机的Meterpreter会话。输入shell后可以切换到交互式Shell中。此实能够查看目标主机的完整系统信息,当前路径以及目录中的文件。查看当前用户发现为root用户。

五.PHP CGI参数执行注入漏洞
通过命令nmap -p 80 192.168.183.148扫描靶机的80端口,查看该端口是否开放。

使用Metasploit框架利用PHP-CGI的参数注入漏洞。
PHP-CGI的参数注入漏洞可以得到连接靶机的Meterpreter会话。输入shell后可以切换到交互式Shell中。此实能够查看目标主机的完整系统信息,当前路径以及目录中的文件。查看当前用户发现为root用户。

3.问题及解决方案
无
4.学习感悟、思考
通过本次实验,我对网络安全渗透测试有了更具象的认知。这次基于 Metasploit 框架的实践,不仅让我掌握了具体操作技能,更深化了对攻防逻辑的思考。实验中,从主机发现、端口扫描到漏洞利用,每一步都环环相扣。通过 nmap 和 Metasploit 的扫描模块,我直观看到靶机开放的大量端口及隐藏漏洞,深刻体会到 “暴露即风险” 的网络安全准则。在利用 Vsftpd 后门、Samba 命令注入等漏洞时,统一的 “调用模块 - 配置参数 - 执行攻击” 逻辑,让我明白工具化渗透的高效性,但也意识到攻击者可能利用同样的便捷性发起攻击。成功获取靶机 root 权限的过程,既带来成就感,也让我警醒:真实网络中,一个未修补的旧漏洞就可能导致系统完全沦陷。此次实践让我明白,网络攻防不仅是技术操作,更需要全局思维和风险意识。未来,我会在熟练操作的基础上,深入探究漏洞原理,同时注重防御思维的培养,理解攻击手段才能更好地构建防护体系,为网络安全筑牢防线。

浙公网安备 33010602011771号