20199103 2019-2020-2《网络攻防实践》第七周作业

20199103 2019-2020-2 《网络攻防实践》第七周作业

1.实践内容

Windows操作系统的基本结构

  • Windows操作系统内核的模块:Windows执行体;Windows内核体;设备驱动程序;硬件抽象层。

  • Windows操作系统用户空间代码代码模块:系统支持进程;环境子系统服务进程;服务进程;用户应用软件;核心子系统DLL。

  • Windows系统内核中的进程和线程管理机制:Windows进程中包括虚拟地址描述符、资源句柄列表、安全访问令牌、并至少有一个线程执行线程。线程包括程序执行的上下文信息,同时和进程共享虚拟地址、资源列表、安全令牌。

  • Windows系统内核中的内存管理机制:Windows的内存有系统核心内存和用户内存两个区域。系统核心内存用于一些内核执行模块,用户程序无法访问;

  • Windows文件管理机制:Windows采用NTFS来管理文件系统。可执行文件则使PE模式,主要包括:DoS头,PE头,分段表、代码段、数据段。

  • windows注册表管理机制:windows的注册表储存着配置信息,可以通过regedit.exe或者第三方工具修改。

Windows的网络机制:

  • 物理层:网卡驱动程序,一般由厂商提供。

  • NDIS库以及miniport驱动程序:位于链路层、为物理层和传输层提供了一个接口。对上层模块屏蔽了网卡的类型,也对第三方厂商屏蔽了windows的编程接口。

  • TDI传输层:实现了一些传输协议栈,调用网卡驱动程序进行传输。

  • 网络API DLL和TDI客户端:对应会话层和表示层。API DLL为应用程序提供了独立于协议的实现方式。TDI则负责API接口的实现。

  • 网络应用程序:对应应用层,使用各类网络的API DLL来实现通信。

  • 这一块的知识点我没能看很懂,不是因为对某些语句不理解,是因为太多的名词和相关原理都不了解。

windows操作系统的安全体系结构和机制

windows安全体系结构

  • Windows操作系统使基于“引用控制器模型”来实现安全模型。

  • 引用控制器模型中,所有主体对客体的访问都必须通过引用控制器。然后引用控制器根据安全策略进行授权,同时记录下所有的访问。

  • Windows以SRM安全引用控制器和LSASS安全服务为核心来实现安全机制。他们实现身份认证机制、访问控制机制、对访问的安全审计机制。

Windows身份认证

  • 对于每个主体,Windows都会给予一个唯一的SID来进行标识。

  • windows通过管理账户来管理用户。不同账户可以拥有不同的资源访问权限。同时还有用户组,统一用户组内的用户有着相同的权限。

  • 对于远程计算机等主体,windows会通过一些秘密信息来验证身份。

Windows授权与访问控制机制

  • 在安全主体通过认证之后,Windows会给用户一个包含了安全主体SID的访问令牌。

  • 用户在启动进程的时候,进程在他的控制块中也会有一个集成账户安全令牌的所有访问权限的安全令牌。

  • 对于需要保护的资源,windows会将其抽象成对象,每个对象都会关联一个SD安全描述符。一个安全描述符包括:对象所有者的SID标识符、对象所在的用户组的SID标识符、自主访问控制列表、系统审计访问控制列表。

Windows安全审计机制

  • Windows的审计策略由系统管理员定义。LSASS服务用于保存审计策略,SRM安全引用控制器对对象访问和操作事件进行记录,EventLog服务将事件写入日志文件中。

windows远程安全攻防技术

  • windows的远程攻击可以大致分为:

    • 远程口令猜测和破解攻击

    • 攻击windows网络服务:无论是互联网的服务还是windows特有的服务,都有着可以导致远程代码执行的漏洞。

    • 攻击windows客户端和用户

针对特定目标的渗透测试攻击过程

  • 漏洞扫描测试:通过对目标系统的扫描测试,来发现系统中是否存在已知的安全漏洞。

  • 查找渗透代码:在安全社区中找到针对已经扫描出的安全漏洞的攻击代码资源。

  • 实施参透测试:在找到代码之后就可以进行渗透攻击。但是是否成功取决于代码和目标的环境是否匹配。渗透测试者需要充分了解攻击目标的操作系统的各种信息。

使用metasploit实施渗透测试

  • metasploit以MSF库为软件的核心,其中模块是实施攻击的代码。模块有:exploits模块负责利用安全漏洞;auxiliary模块负责扫描和查点;payload模块负责在目标系统植入shellcode(利用软件漏洞而执行的代码);encoders模块负责躲避检测;nops负责对攻击负载进行填充。

远程口令猜测与破解

  • 远程口令猜测:windows通过“基于服务消息快”SMB协议来为用户提供远程访问文件系统。SMB也就成了攻击者实施windows口令猜测的攻击渠道。

  • 远程口令字交换通讯窃听与破解:windows在对网络用户身份进行验证的时候需要通讯,使得存在着窃听的风险。

  • 防范措施:尽量关闭不必要的网络服务;配置防火墙来限制相关端口的服务或者源IP或者限制访问;保持windows更新来修补漏洞。

windows远程服务渗透攻击

  • windows默认开放着135、137、138、139、445端口,这些默认开放的端口的网络服务自然就成为了攻击者的主要目标。

  • windows上微软提供的网络服务非常多,所以存在着针对Windows的微软网络服务的远程渗透攻击

  • 针对第三方网络服务的远程渗透攻击:相较于微软提供的网络服务,第三方提供的漏洞更加大。

  • 防范措施:尽快提供安全补丁;作为使用者尽可能快的更新安全补丁;在漏洞被意外公布和补丁发布的时间内,限制或禁用相关网络服务;启用入侵检测和防御。

windows本地安全攻防

windows本地提权

  • 在攻击者获得了widows的一定的权限之后,他们会尝试获得最高的权限。本地提权攻击都是利用系统的各种漏洞,所以针对本地提权攻击,最好的办法就是即使打好各种补丁。

Windows敏感信息窃取

  • Windows系统口令字密文提取:在攻入windows之后,攻击者就有可能获得关键信息的密文文件。

  • windows系统口令字破解:在获得密文文件之后,自然就是要对密文进行解密。

windows消灭踪迹

  • 在攻击者获取了权限,或者获得了想要的信息之后,他们会想办法擦干净脚印,让用户不知道自己已经被攻破。

  • 关闭审计功能:Windows resource kit工具包里的auditpol程序可以让攻击者关闭审计功能。在攻击完成之后,又会重新打开审计功能。

  • 清理日志:如果攻击过程已经被日志记录下来,那么攻击者就会对日志里的有关自己入侵的信息清理掉。

  • 防范措施:将日志记录到不可擦写的CDROM中,或者通过网络传输出去。

windows远程控制与后门程序

  • 在攻击者完成了攻击之后,他们为了方便下一次的攻击,会在系统中植入远程控制和后门程序。

  • 防范措施:用一些检测软件来发现后门程序。

2.实践过程

7.3.4动手实践使用Windows attacker/BT4攻击机尝试对windows靶机上的MS08-067漏洞进行渗透攻击,获取目标主机访问权。

  • 不得不说这个实验真的快把我做自闭了,各种绕弯各种问题(都是我的个人问题),明明步骤不多却足足做了三个小时。

  • 首先我尝试打开winxp的console,却发现winxp的不知道什么问题,输入命令没反应。

  • 所以我就换成了kali

  • 然而需要安装bundler

  • 再启龙同学的教导下我跟着网上的教程安装了。

  • 然后就是挑选漏洞use exploit/windows/smb/ms08_067_netapi,这个教材里直接给了

  • 下一步是载体,教材里也提到了可以用show payloads来查看所有载体。

  • 我也不知道为什么我的载体的check全都是no,我失败的时候一直在从这上面找问题。

  • 然后我使用了教材上给的载体。(视频指导里的载体不行)

  • 然后就是指定LHOST和RHOST。分别是攻击机和靶机

  • 然后应该设置TARGET,但是我没有设置也成功了。

  • 最后输入exploit应该就成功了。

  • 然后令人头疼的事就是我一直都无法建立会话。为了解决这个问题我尝试来了我所有能想到的方法。不停的换载体,试试能不能check载体(因为我的载体check都是no),还尝试能不能用xp攻击机当作靶机,重装靶机。基本上能想到的方法我都尝试了,但是都失败了。(这个过程足足持续了三个小时,期间真的很想一头撞死)。

  • 最后我发现成功的同学的攻击机和靶机的ip都在同一vmnet下。然后我就在下面装了个新win靶机,才最终成功了。

  • 从ipconfig获得靶机ip可以看到,我最终进入了靶机的cmd页面。这里成功之后不知道为什么暂时什么输出都没有,我还等了好久,后来发现输入命令之后就会出现。上图之中就是我等了好久,之后尝试的输入了一下ipconfig。

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

1、攻击者使用了什么工具破解主机

2、攻击者如何使用这个破解攻击进入并控制了系统

3、攻击者获得访问权限之后做了什么?

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

5、你觉得攻击者是否察觉了他的目标是一台蜜罐主机?

  • 首先用wireshark打开文件,一看到这么多数据包非常令人头大。

  • 然后我筛选了源头ip,查看攻击机IP发出的消息,看看有没有什么可疑点。

  • 前面都是一些无关紧要的,但是这个一个boot.ini。我不知道这是什么文件,所以就去百度了下,发现这个文件用来在启动过程中显示可选的操做系统。

  • 打开流,发现了IIS,猜测也许是利用IIS漏洞的攻击。

  • 之后会发现两条出现的信息GET msadc/msadcs.dll POST msadc/msadcs.dllAdvancedDataFactory.Query。这两个信息在之后也会频繁成对出现。在这里由于我不清楚dll文件是什么,还特意去百度了下基础知识。然后从这个文章中了解到,这是一中利用IIS漏洞的攻击。

  • 再之后往下开可以发现攻击者尝试建立FTP连接。不过他的用户名和密码输入错误了好多次,所以一直到1115号文件才开始向靶机传输FTP-DATA

  • 然后直到1331号数据包发送了最后一次FTP协议包,结束了这次连接。下一次FTP包要在5000多号数据包。

  • 在启龙同学的指导下,我了解到攻击方式是先再靶机写入FTP下载的指令,然后自己才能向靶机传输数据。这样的话就先找到攻击者第一次尝试建立FTP连接的数据包(由于密码输入错误没有建立成功),然后向上翻找GET msadc/msadcs.dll POST msadc/msadcs.dllAdvancedDataFactory.Query。但是我没有看懂上面的数据包里的命令究竟是在干什么,可能是因为我不清楚他所利用的漏洞的细节。

  • 在tfp服务结束之后可以看到c+nc+-l+-p+6969+-e+cmd1.exe,说明攻击者连接到了6969端口,获得了访问权。

  • 继续,查看下一个dll和Query发现实在向yay.txt写入,之后又向heh.txt写入,但是我并不懂这两个有什么用。

  • 之后接着顺着流往下走,可以看到攻击者想要将自己添加到管理员组,提升自己的用户权限

  • 之后,然后接着顺着流往下走,发现了如下截图。

  • 又是一个我不知道的东西。百度也无从得知。再次询问同学后得知,rdisk是一个回复硬盘的指令,可以得sam。

  • 继续往下走,发现攻击者将sam写入了一个har.txt文件。

  • 然后,将har.txt放入了inetpub文件夹中。经过舍友指点我知道了inetpub文件夹的文件才可以通过get下载。很显然这是为了下载到自己的电脑上。

  • 但是他马上又把文件给删了,正当我疑惑这是什么人类迷惑行为的时候发现这两个数据包之间间隔了不少。

  • 接下来接着走,查看下一个流,果然包含着这了两个数据包之间的数据包,发现攻击者将har.txt发给了自己,应该是让自己破解。也就是将文件发给自己之后立马删除文件。总之,攻击者的目的应该就是sam。

  • 接着看下面的流,发现了在4351号数据包,给靶机留下了信息

  • 说明他已经知道了这是一个蜜罐。

  • 之后又出现了FTP,不过这次不再是向靶机传输文件,而是从靶机下载文件。但是我也不知道他下载的都是什么。也许这是除了sam值之外的第二个目的。

  • 如何防止这样的攻击。这是一个微软服务的漏洞,最好的办法就是勤打补丁吧。

  • 至于攻击工具,这个我真看不出来。不过在同学的博客的提示下,我尝试百度!ADM!ROX!YOUR!WORLD!。结果并没有百度出来。后来FQ去谷歌,知道了攻击程序是msadc2.pl。

总之这又是一个让我头大的作业。和第一个不同,第一个我耽误了三个小时纯粹是因为没有发现的小细节。这个是因为太多知识不知道,只靠自己的话我走到建立FTP这一步就走不动了,后面的就是一靠同学二靠百度,一路查一路问走完的。

团队对抗实践

攻击方攻击,防守方捕获数据流分析出攻击哪个安全漏洞。攻击方选择漏洞进行渗透攻击,获得控制权。防守方监听获得数据包文件,获取攻击者IP地址、目标端口和IP、攻击的时间、利用的漏洞、攻击的shellcode、攻击成功之后输入的命令。

  • 具体攻击过程与上面的实验几乎一致,就不再说明了。

  • 防守放用wireshark抓包分析。首先第一个我抓的包有一些和别人不太一样的地方。

  • 可以看到我的攻击并不是开始于ARP,似乎攻击机一开始就知道靶机的地址,可能是我昨天做上面第一个实验的时候储存在了缓存中。所以直接向靶机发出了SYN。但是靶机却不知道攻击机的MAC地址,所以这个ARP不是攻击机找靶机,而是靶机找攻击机。找到攻击机后靶机才回复了SYN。

  • 还是上面的图,可以看出攻击者IP192.168.254.128.目标IP192.168.254.132,目标端口445.

  • 然后从这些SMB协议可以看出,攻击者利用的SMB的漏洞。

  • 再看之后的TCP数据包,可以发现攻击者输入的ipconfig命令。

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

  • 问题1:第一个攻击实验总是无法建立会话。
  • 问题1解决方案:更换靶机IP。但是原因还不知道。
  • 问题2:第二个分析实验找不到入手点,并且基础知识太薄弱。
  • 问题2解决方案:照旧询问同学,但是对很多原理还只是知道大概。

4.实践总结

在之前的实验中,由于所需要的知识还勉强在我已有知识的扩域的范围内,虽然很费劲也能弄明白全部原理。但是这一次太多的原理都不明白。再加上最近各科作业都非常多,也没有时间去弄很明白,很是让人头大。

参考资料

posted @ 2020-04-12 22:24  20199103陈昱帆  阅读(355)  评论(0编辑  收藏  举报