[系统安全] 八.Windows漏洞利用之CVE-2019-0708复现及防御详解

eastmount 发表于 2021/11/10 19:27:14 2021/11/10
【摘要】 前文通过编写程序实现加密和解密,并讲解了OllyDbg和在线沙箱的逆向分析过程。这篇文章将详细介绍Windows远程桌面服务漏洞(CVE-2019-0708),该高危漏洞利用方式是通过远程桌面端口3389,RDP协议进行攻击,以及防御措施。希望对入门的同学有帮助。

系统安全系列是想更好地帮助初学者了解病毒逆向分析和系统安全,该专栏准备系统整理和深入学习系统安全、逆向分析和恶意代码检测,“系统安全”系列文章会更加聚焦,更加系统,更加深入,也是作者的慢慢成长史。换专业确实挺难的,逆向分析也是块硬骨头,但我也试试,看看自己未来四年究竟能将它学到什么程度,漫漫长征路,偏向虎山行。享受过程,一起加油~

系统安全系列作者将深入研究恶意样本分析、逆向分析、攻防实战和Windows漏洞利用等,通过在线笔记和实践操作的形式分享与博友们学习,希望能与您一起进步。前文通过编写程序实现加密和解密,并讲解了OllyDbg和在线沙箱的逆向分析过程。这篇文章将详细介绍Windows远程桌面服务漏洞(CVE-2019-0708),该高危漏洞利用方式是通过远程桌面端口3389,RDP协议进行攻击,堪比WannaCry。希望对入门的同学有帮助。

话不多说,让我们开始新的征程吧!您的点赞、评论、收藏将是对我最大的支持,感恩安全路上一路前行,如果有写得不好的地方,可以联系我修改。基础性文章,希望对您有所帮助,作者的目的是与安全人共同进步,加油!也强烈推荐大家去看看参考文献的视频和书籍。

作者的github资源:

声明:本人坚决反对利用教学方法进行犯罪的行为,一切犯罪行为必将受到严惩,绿色网络需要我们共同维护,更推荐大家了解它们背后的原理,更好地进行防护。


一.漏洞描述

2019年5月14日微软官方发布安全补丁,修复了Windows远程桌面服务的远程代码执行漏洞(CVE-2019-0708),该高危漏洞利用方式是通过远程桌面端口3389,RDP协议进行攻击的,堪比WannaCry。它影响了某些旧版本的Windows系统,包括:

  • Windows 7 for 32-bit Systems Service Pack 1
  • Windows 7 for x64-based Systems Service Pack 1
  • Windows Server 2008 for 32-bit Systems Service Pack 2
  • Windows Server 2008 for 32-bit Systems Service Pack 2 (Server Core installation)
  • Windows Server 2008 for Itanium-Based Systems Service Pack 2
  • Windows Server 2008 for x64-based Systems Service Pack 2
  • Windows Server 2008 for x64-based Systems Service Pack 2 (Server Core installation)
  • Windows Server 2008 R2 for Itanium-Based Systems Service Pack 1
  • Windows Server 2008 R2 for x64-based Systems Service Pack 1
  • Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)
  • Windows XP SP3 x86
  • Windows XP Professional x64 Edition SP2
  • Windows XP Embedded SP3 x86
  • Windows Server 2003 SP2 x86
  • Windows Server 2003 x64 Edition SP2
  • Windows 8和Windows 10及之后版本的用户不受此漏洞影响

2019年09月07日,黑客大佬Rapid7在Github公开发布了CVE-2019-0708(Windows远程桌面服务漏洞)的EXP,基于该模块的漏洞利用工具开始扩散,已经构成了蠕虫级的攻击威胁。

据360Center分析,该漏洞是预身份验证且无需用户交互,这意味着这个漏洞可以通过网络蠕虫的方式被利用。利用此漏洞的任何恶意软件都可能从被感染的计算机传播到其他易受攻击的计算机,其方式与2017年WannaCry恶意软件的传播方式类似。成功利用此漏洞的攻击者可以在目标系统完成安装应用程序,查看、更改或删除数据,创建完全访问权限的新账户等操作。

CVE-2019-0708已公开的漏洞利用工具可以极易的被普通攻击者使用,脚本化/批量化/自动化攻击将接踵而至。经研判,360CERT确认漏洞等级严重,影响面广,建议相关单位、企业内部立即进行安全排查,给在漏洞影响范围内的服务器、主机及时更新安全补丁。



二.远程桌面连接

首先,我们需要在Win7系统(攻击机)设置远程连接。

在这里插入图片描述

点击“远程设置”->“远程”,勾选“允许远程协助连接这台计算机”和“仅允许运行使用网络级别身份验证的远程桌面的计算机联机”,然后点击“应用”。

在这里插入图片描述

查看IP地址为:

  • 192.168.0.111

在这里插入图片描述

接着打开远程控制的电脑Win10系统,在运行中输入“mstsc”。

在这里插入图片描述

远程桌面连接中输入IP地址“192.168.0.111”,再点击“连接”按钮。

在这里插入图片描述

输入用户名和密码。

在这里插入图片描述

接着确定远程桌面连接。

在这里插入图片描述

成功控制电脑,这就是远程连接的过程。接下来我们就利用Kali环境复现该CVE漏洞。

在这里插入图片描述

简单总结,Win7中允许远程连接主要是设置IP地址,开启计算机属性中的远程连接开关即可。



三.Kali系统还原漏洞

第一步,开启Win10系统的虚拟机Kali系统。

在这里插入图片描述

第二步,通过git命令下载远程代码。

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

在这里插入图片描述

原网站内容显示如下所示:

在这里插入图片描述

第三步,查看所下载资源的组成,可以看到crashpoc.py、poc.py、README.md文件。

ls
cd CVE-2019-0708
ls

在这里插入图片描述

第四步,查看文件权限并升级权限。

ls -lh

通过“ls -lh”命令查看权限,以“crashpoc.py”权限为例,第一块“-rwx”代表文件主人root的权限,即管理员权限;第二块“r– –”代表这个文件所在组的其他人的权限;第三块“r– –”代表其他人的权限,如Apache等软件属于其他人权限。“r”代表读取权限、“w”达标写入权限、“x”代表执行权限。

在这里插入图片描述

chmod 777 crashpoc.py

调用命令“chmod 777 crashpoc.py”修改权限,“chmod”表示change mod修改文件属性;“crashpoc.py”表示所修改的文件;“777”表示权限列表,每个“7”表示一组,总共三组,“r– –”二进制表示“100”,其值为4,而“111”二进制值为7(4+2+1),即所有权限都开启。

输入下面的命令修改权限,“x”代表执行权限,可以看到“crashpoc.py”文件变成了绿色,表示可执行。同时该文件权限修改为“-rwx r-x r-x”。

chmod +x crashpoc.py

在这里插入图片描述

第五步,查看源代码。

cat crashpoc.py
cat poc.py

打开crashpoc.py查看源代码,发现需要安装impacket、Structure扩展包。

在这里插入图片描述

在这里插入图片描述

下述命令“whereis python3”能查看安装位置,“pip3 list”能查看Python安装的所有扩展包。

在这里插入图片描述

第六步,安装扩展包。

pip3 install impacket
pip3 install Structure

在这里插入图片描述

第七步,利用脚本进行攻击。

python3 crashpoc.py 192.168.0.111 32
#ip地址 系统版本

目标主机蓝屏,复现如下图所示。

在这里插入图片描述

注意,运行代码可能会导致错误,Why?应该是OpenSSL的问题。

在这里插入图片描述



四.安全防护总结

写到这里,这篇文章就介绍结束了,希望对您有所帮助。这里也推荐大家阅读360、绿盟和谢公子大神的文章(参考文献),他们通过MSF目录复现了该漏洞。网上很多实验都是还未攻击就变成蓝屏,说明该漏洞没有MS17_010永恒之蓝的质量高,而且存在一定限制。这篇文章也存在一些不足,作者没有深入理解其原理,也是作为网络安全初学者的慢慢成长路吧!后续会继续深入,更透彻撰写相关文章。

在这里插入图片描述

最后补充防御方法:

  • 微软官方已经发布更新补丁(包括Windows XP等停止维护的版本),请用户及时进行补丁更新
  • 若用户不需要用到远程桌面服务,建议禁用该服务
  • 在防火墙中对TCP 3389端口进行阻断
  • 开启系统防火墙或IP安全策略限制来源IP,即只允许指定IP访问
  • 启用网络级认证(NLA),此方案适用于Windows 7, Windows Server 2008, and Windows Server 2008 R2
  • 安装必要的防火墙或杀毒软件,关注安全公司的漏洞报告或防御文章

在这里插入图片描述


真心感觉自己要学习的知识好多,也有好多大神卧虎藏龙、开源分享。作为初学者,我们可能有差距,不论你之前是什么方向,是什么工作,是什么学历,是大学大专中专,亦或是高中初中,只要你喜欢安全,喜欢渗透,就朝着这个目标去努力吧!有差距不可怕,我们需要的是去缩小差距,去战斗,况且这个学习的历程真的很美,安全真的有意思。但切勿去做坏事,我们需要的是白帽子,是维护我们的网络,安全路上共勉。

感恩能与大家在华为云遇见!
希望能与大家一起在华为云社区共同成长,原文地址:https://blog.csdn.net/Eastmount/article/details/111085560

(By:娜璋之家 Eastmount 2021-11-11 夜于贵阳)


参考文献:

  • https://github.com/n1xbyte/CVE-2019-0708
  • CVE-2019-0708 远程桌面漏洞复现-谢公子大神
  • CVE-2019-0708 漏洞利用复现-u010062917
  • https://github.com/rapid7/metasploit-framework
  • 360Windows RDP服务蠕虫级漏洞
  • CVE-2019-0708 EXP披露预警-绿盟
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请发送邮件至:cloudbbs@huaweicloud.com;如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。