Windows RDP 服务高危漏洞分析 (CVE-2019-0708)

栏目: 编程工具 · 发布时间: 6年前

内容简介:2019 年 5 月 14 日微软官方发布紧急安全补丁,修复了 Windows 远程桌面服务的远程代码执行高危漏洞 CVE-2019-0708(CNVD-2019-14264、CNNVD-201905-434),该漏洞影响了某些旧版本的 Windows 系统。由于该漏洞无需身份验证且无需用户交互,所以这个漏洞可以通过网络蠕虫的方式被利用,利用此漏洞的恶意软件可以从被感染的计算机传播到网络中其他易受攻击的计算机,传播方式与 2017 年 WannaCry 恶意软件的传播方式类似。RDP 是微软终端服务应用的协

作者: 启明星辰ADLab

公众号: https://mp.weixin.qq.com/s/5WRJUPgPXU2Ja_R6pRPh_g

1. 背景

2019 年 5 月 14 日微软官方发布紧急安全补丁,修复了 Windows 远程桌面服务的远程代码执行高危漏洞 CVE-2019-0708(CNVD-2019-14264、CNNVD-201905-434),该漏洞影响了某些旧版本的 Windows 系统。由于该漏洞无需身份验证且无需用户交互,所以这个漏洞可以通过网络蠕虫的方式被利用,利用此漏洞的恶意软件可以从被感染的计算机传播到网络中其他易受攻击的计算机,传播方式与 2017 年 WannaCry 恶意软件的传播方式类似。

2. 影响范围

  • Windows 7
  • Windows Server 2008
  • Windows Server 2008 R2
  • Windows 2003
  • Windows XP

3. RDP协议简介

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

Windows RDP 服务高危漏洞分析 (CVE-2019-0708)

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

(1)ConnectionInitiation(连接初始化)

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

(2) BasicSettings Exchange(交换基本设置)

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

(3)Channel Connection (虚拟通道连接)

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

4. 补丁分析

通过补丁包分析,我们发现补丁前后差异在于 termdd.sys 文件的 IcaBindVirtualChannelsIcaReBindVirtualChannels ,增加了对 MS_T120 协议通道的判定。如果是通道协议名为 MS_T120 ,则设定 IcaBindChannel 的第三个参数为 31 。

Windows RDP 服务高危漏洞分析 (CVE-2019-0708)

服务端在初始化阶段,会创建 MS_T120 , Index 为 31 的通道。在收到 MCS Connect Initial 数据封包后进行通道创建和绑定操作。

IcaBindVirtualChannels 函数中进行绑定时, IcaFindChannelByName 函数只根据通道名进行通道查找。当通道名为 MS_T120 (不区分大小写)时,会找到系统内部通道 MS_T120 的通道并与之绑定,绑定后,通道索引会即被更改为新的通道索引。

5. 漏洞原理分析

我们在客户端 MCS Connect Initial 数据封包中,增加一个名为 MS_T120 的通道。

Windows RDP 服务高危漏洞分析 (CVE-2019-0708)

接下来,我们释放这个 Channel 。我们向 MS_T120 通道发送构造的数据,但由于这个通道已经被绑定到内置的 MS_T120 通道,所以数据最终会派发到相应的处理函数 rdpwsx!MCSProtData 中,然后调用 MCSChannelClose 函数关闭通道。

Windows RDP 服务高危漏洞分析 (CVE-2019-0708)

此后,我们向系统的 MS_T120 通道发送数据,再次引用被关闭的通道,从而导致 UAF 漏洞。

Windows RDP 服务高危漏洞分析 (CVE-2019-0708)

6. 解决方案

  • 目前启明星辰已经发布了对应的产品级解决方案,相关链接:https://www.venustech.com.cn/article/1/9148.html。
  • 对于 Windows 7 及 Windows Server 2008 的用户,及时安装 Windows 发布的安全更新。
  • 对于 Windows 2003 及 Windows XP 的用户,及时更新系统版本。
  • 临时危害减轻措施:开启网络身份验证(NLA)。请注意如果攻击者拥有合法的网络身份,依然可以绕过该身份验证,利用漏洞攻击目标主机。

启明星辰积极防御实验室(ADLab)

ADLab成立于1999年,是中国安全行业最早成立的攻防技术研究实验室之一,微软MAPP计划核心成员,“黑雀攻击”概念首推者。截止目前,ADLab已通过CVE累计发布安全漏洞近1000个,通过 CNVD/CNNVD累计发布安全漏洞近500个,持续保持国际网络安全领域一流水准。实验室研究方向涵盖操作系统与应用系统安全研究、移动智能终端安全研究、物联网智能设备安全研究、Web安全研究、工控系统安全研究、云安全研究。研究成果应用于产品核心技术研究、国家重点科技项目攻关、专业安全服务等。

Windows RDP 服务高危漏洞分析 (CVE-2019-0708)


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

计算机动画的算法基础

计算机动画的算法基础

鲍虎军 金小刚 彭群生 / 浙江大学出版社 / 2000-12 / 60.00元

《计算机应用技术前沿丛书:计算机动画的算法基础》主要内容简介:20世纪是一个科技、经济空前发展的时代,从世纪初相对论、量子理论的创立到今天以信息产业为龙头的高科技产业成为经济发展的第一支柱,人类社会发生了根本性的变革。而在这场以科学技术为社会发展直接动因的变革中,意义最深远、影响最广泛的就是计算机及其相关技术的发展和应用。在过去的50年里,计算机已从最初的协助人类进行精密和复杂运算的单一功能的运算......一起来看看 《计算机动画的算法基础》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

html转js在线工具
html转js在线工具

html转js在线工具