对CVE-2019-0708复现

太懒了所以就懒得整理了,直接发自己写的大作业报告了,主要就是不需要导入文件的问题,最新版的msf直接用自带的模块就可以了。

图片不知道为什么导入不了,有需要私。

 

背景介绍

1. 漏洞介绍

CVE-2019-0708(Bluekeep)漏洞又称非蓝屏POC是Windows系列服务器于2019年5月15号,被爆出高危漏洞,该漏洞影响范围较广,漏洞利用方式是通过远程桌面端口3389,RDP协议进行攻击的。这个漏洞是2019年危害严重性最大的漏洞。所以我打算使用MSF工具实现对此漏洞的复现和分析。工具为kali系统中的MSF软件,靶机为window7专业版和家庭版。

 

                             图1CVE库对此漏洞的描述

 

                             图2 华为漏洞评分详情

 

2. RDP协议介绍

RDP 是微软终端服务应用的协议,服务端基于 Windows 操作系统,Windows 从 NT 开始提供终端服务。RDP 协议基于 T.128(T.120 协议族)提供多通道通信,并进行了拓展。

RDP协议的连接流程可以分为10个不同的阶段。这里我们关注通道连接相关的几个阶段。

  1. ConnectionInitiation(连接初始化)

客户端通过向 服务器 发送 Class 0 X.224 ConnectionRequest PDU 启动连接请求。服务器使用 Class 0 X.224 Connection Confirm PDU 进行响应。之后,客户端和服务器之间发送的所有后续数据都被包裹在 X.224 数据协议数据单元(PDU)中。

  1. BasicSettings Exchange(交换基本设置)

   通过使用 MCS Connect Initial PDU 和 MCS Connect Response PDU 在客户端和服务器之间交换基本设置。GCC 的全称是 Generic Conference Control,GCC 作为 T.124 的标准协议,用于连续传输大量数据时,将数据整理分块传输。

  1. Channel Connection(虚拟通道连接)

   客户端通过发送 multiple MCS Channel Join Request PDUs 加入用户信道,输入/输出通道及所有的静态虚拟通道(IO 和静态虚拟通道 ID信息在 GCC 数据包中)。服务器通过 MCS Channel Join Confirm PDU 回复每个通道。

RDP框架图如图1所示。

 

图3 RDP框架

 

强大的漏洞检测工具——Metasploit

  1. Metasploit的介绍

   Msf毫无疑问应该是目前最强的渗透测试和安全漏洞检测工具之一。msf有很多模块,这里我们需要用到的是渗透攻击模块。渗透攻击模块(Expolits):渗透攻击模块是利用发现的安全漏洞或配置弱点对远程目标系统进行攻击,以植入和运行攻击载荷,从而获得对远程目标系统访问权的代码组件。Metasploit框架中渗透攻击模块可以按照所利用的安全漏洞所在位置分为主动渗透攻击与被动渗透攻击两大类。
    主动渗透攻击所利用的安全漏洞位于网络服务端软件与服务承载的上层应用程序之中,由于这些服务通常是在主机上开启一些监听端口并等待客户端连接,因此针对它们的渗透攻击就可以主动发起。
    被动渗透攻击所利用的安全漏洞位于客户端软件中。对于这类存在于客户端软件的安全漏洞,我们无法主动地将主句从远程输入到客户端软件中,因此只能采用被动渗透攻击方式,即构造出“邪恶”的网页、电子邮件或文档文件,并通过架设包含此类恶意内容的服务端、发送邮件附件、结合社会工程学攻击分发并诱骗目标用户打开、结合网络欺骗和劫持技术等方式,等目标系统上的用户访问到这些邪恶内容,从而触发客户端软件中的安全漏洞,给出控制目标系统的Shell会话。同时,被动渗透攻击能够绕过防火墙等网络边界防护措施。

     对于这次的攻击我们使用的是主动渗透攻击。

  1. Metasploit的使用

因为kali中已经有metasploit软件,所以我们只需要进行更新即可,这里需要注意的是kali中的msf并不一定是metasploit-framework。所以我们需要安装最新版本的metasploit,通过阅读官方文档,我们可以发现msf官方在github 上已经更新了cve-2019-0708的工具模块。

 

 

                         图4msf官方说明

 

复现前的准备工作

  1. 靶机的准备

     漏洞影响的范围包括win7这里就使用了win7系统进行漏洞复现。

 

                            图5win7旗舰版的IP地址

  1. 打开远程访问和防火墙入站规则

     因为漏洞是通过RDP远程桌面服务进行传播的。这里就需要把远程访问控制打开和关闭防火墙,且要将RDP端口3389的入站规则打开。

 

                             图6打开远程访问权限

 

 图7出站规则打开3389端口

虽然理论上不需要关闭防火墙,但是为了复现的成功还是选择了关闭防火墙(这里防火墙是应该要打开的,只要把3389端口打开就可以了,这里在之后的测试中打开了端口并且成功的实现了)。

 

图8关闭防火墙

 

到目前为止靶机的准备已经做好。

3、kali的配置

      因为之前做过内网渗透,所以我的kali机是已经准备好的不需要什么大的改动。主要是测试一下是否能ping通靶机。

 

               

                        图9、10可以互相ping通

实现对非蓝屏POC的复现

  1. 打开msf

在kali终端当中输入msfconsole

 

                        图11打开msf

  1. reload_all重新加载所有模块之后找到cve-20190708模块

 

                               图12找到攻击模块

  1. 攻击模块设置实现对靶机的攻击

     分别设置目标端口和攻击方式,执行模块攻击。

 

                              图13对靶机进行攻击

  1. 利用meterpreter获取权限等等的系统信息

什么是meterpreter?Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用,攻击载荷在溢出攻击成功以后给我们返回一个控制通道。使用它作为攻击载荷能够获得目标系统的一个Meterpreter shell的链接。Meterpreter shell作为渗透模块有很多有用的功能,比如添加一个用户、隐藏一些东西、打开shell、得到用户密码、上传下载远程主机的文件、运行cmd.exe、捕捉屏幕、得到远程控制权、捕获按键信息、清除应用程序、显示远程主机的系统信息、显示远程机器的网络接口和IP地址等信息。

这里我们可以使用命令getwd获取管理员权限使用ps查看文件。

 

图14POC测试

遇到的问题和解决方法

1、靶机无法开启RDP协议和3389端口。

遇到这个问题是我第一个尝试的win7家庭版主机,我也尝试过启用RDP协议,自己设置3389端口这些方式,结果并没有用。后来才想到自己一开始设置的网络选择的是公用网络,是不允许远程连接的,只能作罢,重新换了个靶机。在一开始的网络选择中选择家庭网络(可允许远程控制访问)。

 

图15无法设置任何主机都可以远程控制

2、按照网上的方法将官网下载的模块导入替换msfframework中的模块后无法加载模块。

这个问题是更加麻烦的问题,因为官方github上就给的这个使用方法但是却出现了如下图无法载入模块的错误:

 

图16无法载入模块

这边首先就是要考虑版本问题,包括官方github上的exp版本对应的都是msf5而且最新时间是2019.9,现在最新的是msf6而且rb文件早已经是最新版的rb文件,所以解决方式是不需要重新导入rb文件,直接用自带的模块,成功。

3、攻击后靶机蓝屏

Msf显示成功攻击但靶机出现蓝屏问题:

 

图15 显示蓝屏

     考虑蓝屏的原因首先就是target选择错误,后来看了一下发现是我target选择错了,这里的target通过showoption命令查看应该选择2而不是3。

    

                           图16 target选择错误

你可能感兴趣的:(零零散散的东西)