CVE-2019-0708 漏洞分析及相关测试
来源:岁月联盟
时间:2020-01-29
这里有一个要注意的点,因为重新用git-bundle安装了框架,所以启动的时候要对应的使用./msfconsole而不是平时一样使用msfconsole,这样进入的才是重新安装的MSF框架,进入后用search命令搜索,可以看到已经有cve-2019-0708的exp,用对应命令使用该exp
use exploit/windows/rdp/cve_2019_0708_bluekeep_rce

利用分析
终于顺利的来到了漏洞利用的第一步了,首先来看看该exp需要的参数

可以看到主要设置的参数有RHOSTS / RPORT / target
RHOSTS 靶机IP
RPORT RDP端口
target ID(可选0~7)设置靶机机器架构

从这里可以看到MSF框架更新了target列表的信息,对比旧版的靶机架构列表

明显看出对于靶机的架构相对于exp公布初期,进行了更详细的划分,通过相关分析可推测该漏洞利用点就是系统因二次释放造成堆内存被破坏,exp则利用该特点在泄露的内核堆中寻找对应位置劫持控制流,具体可参照52pojie的相关文章-[漏洞分析] CVE-2019-0708 微软远程桌面服务远程代码执行漏洞之漏洞分析与漏洞利用简介
所以对于不同架构的机器,很有可能会出现exp所能利用的漏洞点位置不同从而出现我在第一次尝试复现该漏洞时所出现的攻击只能造成蓝屏而并不能成功反弹shell的结果,所以现在对于细化后的target列表,感觉成功的几率大了一点,同时也参考相关复现成功的案例,将靶机配置调整为2g内存、2核cpu。
攻击中所遇问题
首先,按照说明设置对应的参数值
msf5 exploit(windows/rdp/cve_2019_0708_bluekeep_rce) > set rhosts 192.168.26.134rhosts => 192.168.26.134msf5 exploit(windows/rdp/cve_2019_0708_bluekeep_rce) > set target 4target => 4msf5 exploit(windows/rdp/cve_2019_0708_bluekeep_rce) > run
这里设置了靶机IP,对应的target架构,然后执行exp,

虽然显示目标存在可利用点,且攻击也已经完成,但是最终并没有按照预定计划创建会话返回shell,这样的攻击仍然是将靶机打蓝屏,并没有成功实现getshell执行任意代码的目的,与第一次复现的结果相同,但因为距离初次披露poc与exp已经有了一段时间,就尝试寻找是否有新的文章提出了对应的解决方法。
尝试解决蓝屏
寻找了很多文章并进行一一的尝试之后,总结了以下不同问题的对应解决方法:
对于我这种攻击成功但仍然出现蓝屏的情况,在我反复测试攻击过程后发现,每次的蓝屏现象基本都是出现在exp进行至该位置时出现

而我在阅读文章中发现有一个问题的解决方案是和这个进度极为相似的

于是尝试将该解决方法应用在我出现的问题中,


终于!成功获得了靶机的控制权


信息一致,终于成功复现了cve-2019-0708
后续测试
因为基于第一次失败的复现,所以靶机上没有开启任何防御措施,包括系统自带防火墙,在成功复现漏洞后我想试试这样子通过内核劫持控制流的攻击方式,会被哪种程度的防御抵挡。
第一次测试
首先开启系统自带防火墙,依旧保持3389端口开启,再次运行exp。


可以看到在开启防火墙的状态下,仍然能够进行攻击且执行任意代码
第二次测试
基于第一次的尝试,开启系统防火墙的同时,安装安全防护软件,在这里我选择火绒作为测试对象,再次执行exp
上一页 [1] [2] [3] 下一页