1. 首页
  2. 网络安全新闻

CVE-2019-0708微软RDP远程代码执行漏洞分析大全

CVE-2019-0708微软RDP远程代码执行漏洞分析大全

0×00 概述

20190514,微软发布补丁,修复了一个严重的RDP远程代码执行漏洞。该漏洞无需身份认证和用户交互,可能形成蠕虫爆发,影响堪比wannycry。

0×01影响范围

Windows 7

Windows Server 2008 R2

Windows Server 2008

Windows Server 2003

Windows XP

0×02 漏洞重现

poc已出,重现几个网上主流的poc:

1)360的0708detector.exe(无损扫描工具)

批量工具

https://github.com/biggerwing/CVE-2019-0708-poc

https://github.com/autoing/CVE-2019-0708-POC

2)https://github.com/zerosum0x0/CVE-2019-0708

包含了msf的rb

git clone https://github.com/zerosum0x0/CVE-2019-0708.git

cd CVE-2019-0708/rdesktop-fork-bd6aa6acddf0ba640a49834807872f4cc0d0a773/

./bootstrap

./configure –disable-credssp –disable-smartcard

make

./rdesktop 192.168.1.7:3389

可能要apt-get install libssl1.0.0 libssl-dev

用scan_with_docker.py可以批量

3)https://github.com/Ekultek/BlueKeep.git

可以批量

先安装impacket

https://github.com/SecureAuthCorp/impacket

pip install -r requestments.txt

pip install .

vim bluekeep_poc.py

删除重复的一个impacket

4)https://github.com/robertdavidgraham/rdpscan

5)https://github.com/Leoid/CVE-2019-0708

6)https://github.com/n1xbyte/CVE-2019-0708

//20190531新增蓝屏poc,用03standx86测试出现

OpenSSL.SSL.SysCallError: (104, ‘ECONNRESET’)

7)https://github.com/closethe/CVE-2019-0708-POC

试了几个都是timed out,可能是poc未完善

其他一些poc(未测试):

https://github.com/skyshell20082008/CVE-2019-0708-PoC-Hitting-Path

https://github.com/blacksunwen/CVE-2019-0708(和5基本一样)

https://github.com/Jaky5155/cve-2019-0708-exp

https://github.com/fourtwizzy/CVE-2019-0708-Check-Device-Patch-Status

https://github.com/trickster0/CVE-2019-0708

https://github.com/algo7/bluekeep_CVE-2019-0708_poc_to_exploit(powershell)

截至发文(20190605),尚未发现公开可用exp,拭目以待!

360的某大神已搞出exp,能在win7 x64弹框了,未公开。

20190606,发现msf可获取meterpreter的exp,未公开。

https://twitter.com/zerosum0x0/status/1135866953996820480

还有一堆假exp,利用ms12-020、os.system()、alert、假GUI、骗star等等。

www.cve-2019-0708.com(20190529无法访问了)据说是假的!

0×03 漏洞分析

rdp基础

RDP 协议基于 T.128(T.120 协议族)提供多通道通信,并进行了拓展。

远程桌面协议(RDP)支持客户端建立点到点的连接,并定义了通信双方在虚拟通道间的数据通信方式,。这种虚拟通道为双向数据通道,可以扩展RDP的功能。Windows Server 2000在RDP v5.1中定义了32种静态虚拟通道(SVC),但是因为将来要定义的动态虚拟通道数量的限制,因此专用的通道svc数量受到一定限制。SVC是在会话开始时创建的,并在会话终止前保持不变,但DVC不同,因为它是根据用户需求来创建和删除的。

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

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

0×04 修复方案

1.补丁
https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2019-0708

2. 开启NLA网络级身份验证减轻危害(利用漏洞就需要身份验证)

0×05 结语

此漏洞危害巨大,一旦exp公开,必会掀起腥风血雨,估计各种勒索挖矿病毒已经蓄势待发,所以大家抓紧打补丁吧!文章如有错漏,欢迎指出,共同交流!

文章来源:【安全时代】 原文链接:https://www.agesec.com/news/6162.html

安全时代全部内容仅适用于网络安全技术爱好者学习研究,学习中请遵循国家相关法律法规。

安全时代全部数据来源互联网,不代表安全时代立场,如侵犯您权益可邮箱联系我们,详情:版权纠纷

发表评论

电子邮件地址不会被公开。 必填项已用*标注