02月11, 2020

Darkhotel(APT-C-06)使用“双星”0Day漏洞(CVE-2019-17026、CVE-2020-0674)针对中国发起的APT攻击分析

背景

2020年1月14日,微软正式宣告Windows 7系统停止更新。在Windows 7正式停服关键时间节点的第二天,即2020年1月15日,360安全大脑在全球范围内就捕获了首例同时利用IE浏览器和火狐浏览器两个0day漏洞进行的复合攻击,由于是全球首家捕获,我们将其命名为“双星”0day漏洞攻击。

“双星”0day漏洞的细节已第一时间分别报告给了微软和Mozilla,在通过短暂的沟通后,微软和Mozilla官方都确认了0day漏洞,此次漏洞影响最新版本的火狐浏览器和IE浏览器及使用了相关浏览器内核的应用程序,同时官方为漏洞分别分配了CVE-2019-17026(火狐浏览器)和CVE-2020-0674(IE浏览器)两个漏洞编号。通过360高级威胁应对团队的分析溯源判定,“双星”0day漏洞是被活跃近十余年的半岛APT组织Darkhotel(APT-C-06)所利用,主要针对我国商贸相关的政府机构进行攻击。

攻击流程分析

我们发现“双星”0day漏洞的攻击是利用office漏洞文档、网页挂马和WPAD本地提权的多种攻击方式进行的复杂组合攻击。完整的攻击流程如下:

图片 1.png

以IE x86为例:

  1. IE加载JS-1漏洞利用成功,获得代码执行权限,第一次执行JS-1中的shellcode。
  2. Shellcode利用winhttp API(winHttpOpen和WinHttpGetProxyForUrl) 触发WPAD服务的运行。
  3. WPAD服务运行后从远程加载JS-1,再次运行脚本中的shellcode,shellcode通过判断进程名是否为svchost来判断是否在服务中被运行。
  4. Shellcode从远程下载后续文件,并获取当前系统版本来决定是否需要使用DCOM提权,win7下的WPAD服务具有system权限, 不需要使用提权,win10下的WPAD服务为local Service,则利用bits服务来提权,最后运行下载的后续文件。

攻击细节分析

双星漏洞网页会判断当前浏览器为IE还是Firefox,操作系统为32位还是64位,然后加载相应的exploit攻击代码。

图片 2.png

攻击者可以直接利用双星漏洞进行网页挂马攻击,有意思的是我们发现了一例Office漏洞文档触发的双星漏洞,是默认打开IE浏览器进行攻击。

图片 3.png

初始攻击使用了office公式编辑器漏洞(CVE-2017-11882),攻击者根据目标精心制作了诱饵文档。

图片 4.png

当受害者打开漏洞文档触发漏洞后,恶意代码会启动公式编辑器,利用公式编辑器进程再打开IE浏览器访问恶意网页触发“双星”漏洞。

4.png

其中的IE浏览器漏洞(CVE-2020-0674)是IE Jscript引擎中的一个UAF漏洞, 我们提取了部分漏洞代码,由于漏洞代码中Array对象的Sort函数回调参数没有被加入GC追踪链中,所以攻击者可以在回调中释放仍然被引用的对象,最终导致UAF漏洞可以执行任意代码。

图片 6.png

IE浏览器漏洞成功利用后,会执行shellcode,首先会判断当前进程是否为svchost.exe。

图片 7.png

如果shellcode是在IE进程中执行,即第一次执行该shellcode时,shellcode会调用winHttpOpen和WinHttpGetProxyForUrl来触发WPAD服务加载远程的pac文件执行,这个文件实际上还是包含CVE-2020-0674漏洞的js脚本。

图片 8.png

图片 9.png

当shellcode得到第二次执行,发现当前进程名为svchost.exe,已经成功从浏览器进程跨越到WPAD服务进程时,就开始执行另外一个流程,下载远程的木马文件释放到temp目录下并执行该程序。

图片 10.png

最终的木马程序会接受固定URL地址的C&C命令,在受害者计算机中执行任意操作。

图片 11.png

修复建议

目前火狐浏览器已经发布了Firefox 72.0.1 and Firefox ESR 68.4.1,我们建议所有的火狐浏览器用户更新到最新版本。

针对Windows系统的用户,我们建议Windows 10系统用户尽快更新2020年2月份的微软安全补丁,而Windows 7系统用户可以使用360 Win7盾甲产品阻止“双星”0day漏洞攻击。

参考

https://www.mozilla.org/en-US/security/advisories/mfsa2020-03/

https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-0674

本文链接:https://blogs.360.net/post/apt-c-06_0day.html

-- EOF --