CVE-2017-0199漏洞分析
漏洞挖掘前言
OFFICE OLE2LINK(CVE-2017-0199)
TFD XJL 2018 年 12 月 20 日 星期四
目录
OFFICE OLE2LINK(CVE-2017-0199)
第一部分 OFFICE漏洞简介
1.1 微软office漏洞背景
1.2 OFFICE OLE2LINK漏洞简介
第二部分 OFFICE OLE2LINK漏洞分析
2.1 漏洞原理简单分析
2.2 漏洞攻击原理简单图解
2.3 相关知识介绍
第三部分 攻击代码分析
3.1 ms.rtf
3.2 配置文件
第四部分 利用复现过程
第五部分 攻击总结
参考资料
第一部分 OFFICE漏洞简介
1.1 微软office漏洞背景
1.2 OFFICE OLE2LINK漏洞简介
Microsoft Office是美国微软(Microsoft)公司开发的一款办公软件套件产品。常用组件有Word、Excel、Access、Powerpoint、FrontPage等。
多款Microsoft产品中存在远程代码执行漏洞。远程攻击者可借助特制的文本文件利用该漏洞执行任意代码。以下产品和版本受到影响:
Microsoft Office 2007 SP3; Microsoft Office 2010 SP2;
Microsoft Office 2013 SP1; Microsoft Office 2016;
Microsoft Windows Vista SP2; Windows Server 2008 SP2;
第二部分 OFFICE OLE2LINK漏洞分析
2.1 漏洞原理简单分析
2.2漏洞攻击原理简单图解
图2-漏洞攻击原理简图
2.3 相关知识介绍
HTA是HTML Application的缩写(HTML应用程序),是软件开发的新概念,直接将HTML保存成HTA的格式,就是一个独立的应用软件,与VB、C++等程序语言所设计的软件界面没什么差别。一般情况下,hta可以用vbscript与jscript编写,vbs功能更强大。 hta可以操作数据库,界面用html+css就可以实现,很方便写一些简单的应用。
OLE(Object Linking and Embedding,对象连接与嵌入)。是一种面向对象的技术,利用这种技术可开发可重复使用的软件组件(COM)。OLE不仅是桌面应用程序集成,而且还定义和实现了一种允许应用程序作为软件“对象”(数据集合和操作数据的函数)彼此进行“连接”的机制,这种连接机制和协议称为组件对象模型(Component Object Model),简称COM。OLE可以用来创建复合文档,复合文档包含了创建于不同源应用程序,有着不同类型的数据,因此它可以把文字、声音、图像、表格、应用程序等组合在一起。
第三部分 攻击代码分析
3.1 ms.rtf
new ActiveXObject("wscript.shell") 启动创建对象的应用程序。一旦对象被创建,就可以用定义的对象变量在代码中引用它。
a.Run("%SystemRoot%\\system32\\calc.exe") 运行计算器。%systemroot%是系统中的一个变量,表示的是windows系统启动文件夹位置。System32是系统文件夹下的一个子文件夹,而计算器的应用正是在此文件夹下。
3.2 配置文件
对于rtf文件,服务器的Content-type会返回application/rtf
对于rtf文件,服务器的Content-type会返回application/hta,所以word将返回对象以hta脚本的方式执行
此处关键点在于添加objupdate标签,这个标签的作用是可以自动更新对象,因此加了这一处后就无需用户交互即可执行恶意代码。
第四部分 利用复现过程
在网站根目录下新建一个 rtf 文件, 内容任意,如(Dong&Li test)保存命名 ms.rtf。
打开Apache,用浏览器访问网站根目录,可以看见根目录下的文件(如图)
接着新建一个 word 文档,插入 => 对象 => 由文件创建 => 链接到文件 =>ms.rtf 的地址,然后将 word 另存为rtf格式,文件名为 exp.rtf。
在我们的实验中ms.rtf的地址为本机IP+文件名(如:http://192.168.80.1/ms.rtf)。
此时如果我们双击“Dong&Li test”,会正常弹出文档ms.rtf内容。
此时将网站根目录下的 ms.rtf 用记事本打开,在文档添加如下代码:
此时在apache配置文件conf/mime.types中把
重启服务器。打开 exp.rtf, 双击内容,即可弹出计算器
这样的poc还是需要用户双击对象进行交互的,我们可以进一步做成自动弹出计算器。这里我们先使用记事本把exp.rtf打开。
将 \ object\objautlink\rsltpict 修改为 \ object\objautlink\objupdate\rsltpict
保存修改后,此时若再打开exp.rtf,就会直接弹出计算机,不需要用户手动点击。
第五部分 攻击总结
参考资料
http://www.zerokeeper.com/penetration/cve20170199-office-rtf-replication-process.html
CVE-2017-0199漏洞复现与研究_空旷在远方的博客-CSDN博客_cve-2017-0199
访问的文章审核中... - FreeBuf网络安全行业门户
访问的文章审核中... - FreeBuf网络安全行业门户
访问的文章审核中... - FreeBuf网络安全行业门户
Tuuu Nya's blog | 一个想当黑客的艺术家 ✨
CVE-2017-0199漏洞分析相关推荐
- linux内核安全数据,【漏洞分析】Linux内核XFRM权限提升漏洞分析预警(CVE–2017–16939)...
0x00 背景介绍 2017年11月24日, OSS社区披露了一个由独立安全研究员Mohamed Ghannam发现的一处存在于Linux 内核Netlink socket子系统(XFRM)的漏洞,漏 ...
- 2022CTF培训(十一)IOT 相关 CVE 漏洞分析
附件下载链接 D-Link DIR-823G 固件全系统仿真 2022CTF培训(十)IOT 相关 CVE 漏洞分析 是采用 qemu-user 对个别程序进行仿真,而对于完整的仿真需要使用 qemu ...
- 国产软件CVE漏洞分析系列:泛微OA系统 漏洞编号:SSV-91661
今天开始扒拉一下各种国产软件已经公布的漏洞,有些公司自己把漏洞保密起来,其实真是傻啦吧唧的,以为不让大家知道,漏洞就不存在吗!没办法,可能也是为了上市公司的股价吧.普通人对于漏洞的理解还是有点狼来了的 ...
- RiskSense Spotlight:全球知名开源软件漏洞分析报告
聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 RiskSense 公司最近发布了关于全球当前知名开源软件 (OSS) 的漏洞分析报告.奇安信代码卫士团队编译如下. 摘要 开源软 ...
- Android Parcelable反序列化漏洞分析与利用
文章目录 前言 背景知识 Parcelable序列化 Bundle的数据结构 LaunchAnyWhere CVE-2017-13288 漏洞利用原理解析 POC程序攻击演示 CVE-2017-133 ...
- OWASP TOP10漏洞分析和防御
目录 2013VS2017 应用程序安全风险 注入 介绍 形成原因 利用场景 防御 失效的身份认证 介绍 形成原因 利用场景 防御 敏感数据泄露 介绍 形成原因 利用场景 防御 XML外部实体(XXE ...
- 公开仓库中Docker镜像的漏洞分析结果发布
Federacy的一名研究人员发布了一项报告,该报告分析了公开仓库中Docker镜像的漏洞.24%的镜像发现了明显的漏洞,其中基于Ubuntu的镜像漏洞最多,而基于Debian的镜像漏洞最少. \\ ...
- cve-2019-11076 Cribl UI 1.5.0 未授权命令执行漏洞分析
Cribl是一款日志分析工具.Cribl UI是其中的一个用户界面. Cribl UI 1.5.0版本中存在安全漏洞.远程攻击者可借助未认证的Web请求利用该漏洞运行任意命令. 前言 前几天瞎逛 Gi ...
- cve-2019-1821 思科 Cisco Prime 企业局域网管理器 远程代码执行 漏洞分析
前言 不是所有目录遍历漏洞危害都相同,取决于遍历的用法以及用户交互程度.正如你将看到,本文的这个漏洞类在代码中非常难发现,但可以造成巨大的影响. 这个漏洞存在于思科Prime Infrastructu ...
- linux “大脏牛”漏洞分析(CVE-2017-1000405)
一.背景简介 脏牛漏洞(CVE-2016–5195)是公开后影响范围最广和最深的漏洞之一,这十年来的每一个Linux版本,包括Android.桌面版和服务器版都受到其影响.恶意攻击者通过该漏洞可以轻易 ...
最新文章
- [转]收录全部作品,《寂静岭套装》发售开始
- 这台计算机似乎没有安装操作系统_前沿科技 | 浙江大学科学家联合之江实验室成功研制全球神经元规模最大的类脑计算机...
- scrum in agile development
- 一个将当前目录下HEX文件的第一行数据删除的程序...
- SAP Cloud for Customer Lead OData服务的ETAG字段
- 对于一个IE8兼容性问题的反思
- python利用jieba(textRank、TFIDF)提取关键字
- 金字火腿推出“人造牛排” 股价连日上涨接近历史高点
- 【Kafka】kafka SSL close message 远程主机被迫关闭了一个连接
- android中的资源文件
- 多线程 之 生产者与消费者
- 一、坐标系之WGS84坐标系与WGS84 Web Mercator
- .NET 6 运行在Win7 SP1上出错
- 20145322何志威《网络对抗技术》Exp6 信息搜集技术
- 阿里云部署数据库(遇到的问题及解决方案)
- c语言coin函数库,Coin Test | C/C++程序员之家
- 将系统必备组件打包进安装文件(以vs15打包.net formwork 4.5为例)有点鸡肋
- 今日金融词汇--- 技术面分析
- 同样诞生于顶尖大学,一个市值千亿,一个曾经仅次腾讯百度,如今却。。。...
- 寒食 —— [当代] 光剑