
E安全9月14日讯 FireEye公司最近发现一份恶意微软Office RTF文档,其中利用到一项SOAP WSDL解析器代码注入漏洞——编号CVE-2017-8759。该漏洞允许恶意人士在解析SOAP WSDL的定义内容期间注入任意代码。FireEye公司对该微软Office文档进行了分析,并发现攻击者能够利用代码注入方式下载并执行一份包含PowerShell指令的Visual Basic脚本。
FireEye公司已经将该漏洞的详细信息与微软方面进行共享,并在协调公布事宜的同时发布了漏洞修复程序以及安全指南,感兴趣的朋友可以 http://t.cn/Rp0T93q 查看。
FireEye公司的邮件、终端与网络产品皆检测到了该恶意文档。
此项漏洞用于攻击俄语用户
此次发现的恶意文档“Проект.doc”(MD5: fe5c4d6bb78e170abf5cf3741868ea4c)可能被用于攻击俄语用户。
在成功利用CVE-2017-8759漏洞之后,该文档下载了多个组件(详见后文)并最终启动了FINSPY(恶意监控软件)载荷(MD5: a7b990d5f57b244dd17e9a937a41e7f5)。
FINSPY恶意软件,亦被称为FinFisher或者WingBird,可作为“合法拦截”方案的一部分进行获取。根据此次以及之前曾经出现的FINSPY使用案例,FireEye表示能够在一定程度上认定此恶意文件被民族国家专门用于针对俄语目标实施网络间谍活动。FireEye公司的动态威胁情报系统通过额外检测发现,尽管可能针对不同的受众群体,但相关活动也许早在2017年7月就已经出现。
CVE-2017-8759 WSDL解析器代码注入
PrintClientProxy方法的WSDL解析器模块中存在一项代码注入漏洞。其中若所提供数据中包含一条CRLF序列,则IsValidUrl无法正常执行验证。如此一来,攻击者即可注入并执行任意代码。图一所示即为漏洞代码的对应部分。

图一:存在漏洞的WSDL解析器
在一条SOAP响应中存在多个address定义时,代码会在首条地址之后插入“//base.ConfigureProxy(this.GetType”字符串,从而将其余地址注释掉。但如果为地址附加CRLF序列,则CRLF后的代码将不会被注释掉。如图二所示,由于缺少对CRLF的验证,攻击者可向其中注入一个System.Diagnostics.Process.Start方法。由此生成的代码将由.NET框架的csc.exe进行编译,并以DLL的形式被Office可执行文件进行加载。

图二:SOAP定义与所生成代码
真实攻击案例
FireEye公司观察到的攻击活动利用到RTF格式(即富文本格式)文档,且类似于我们之前曾经报道过的CVE-2017-0199(此前WannaCry与Petya利用改漏洞发起勒索攻击)文档。此恶意样本当中包含一个嵌入SOAP标记以简化漏洞利用流程(如图三所示)。

图三:SOAP标记
有效载荷从攻击者控制的服务器处获取恶意SOAP WSDL定义。而立足.NET框架的System.Runtime.Remoting.ni.dll实现的此WSDL解析器则进行内容分析,并在当前目录中生成.cs源代码。.NET框架的csc.exe随后将生成的源代码编译为一套库,名为http[url path].dll。微软Office而后加载此库,整个漏洞利用流程即告完成。图四所示为一套示例恶意源代码库。

图四:所加载的DLL
在成功利用漏洞之后,注入代码会创建一个新的进程,并利用mshta.exe从同一服务器处检索名为“word.db”的HTA脚本。该HTA脚本会将源代码、编译后的DLL以及PDB文件从磁盘中删除,而后下载并执行名为“left.jpg”的FINSPY恶意软件——这里虽然使用.jpg扩展名以误导用户将其视为“图像jpeg”内容,但实际上却属于可执行文件。图五所示为该恶意软件传输流程的PCAP细节信息。

图五:实时请求
该恶意软件将被命名为%appdata%\Microsoft\Windows\OfficeUpdte-KB[ 6位随机数字].exe。图六所示为进程监控器下生成的进程链。

图六:进程创建链
恶意软件
“left.jpg” (md5: a7b990d5f57b244dd17e9a937a41e7f5)属于FINSPY的一类变种。其利用高度混淆代码、内置虚拟机以及其它反分析技术提升逆向工程难度。此外,它还具备另一种独特的反分析技术,即解析自身完整路径并搜索自身MD5哈希的字符串表达形式。目前各类分析工具以及沙箱机制都会将文件/样本重命名为MD5哈希形式,从而确保其拥有惟一文件名。而此变种则采用“WininetStartupMutex0”作为互斥量实现运行。
第二个传播FINSPY恶意软件的漏洞
CVE-2017-8759是FireEye公司在2017年年内发现的第二项被用于传播FINSPY恶意软件的零日漏洞。现实证明目前市场上存在着大量能够对企业及客户进行“合法拦截”的资源。另外,FINSPY也被销售至多位客户手中,这意味着此项漏洞未来将被用于对付更多潜在目标。
尽管目前还没有观察到相关迹象,但CVE-2017-8759漏洞也可能已经被其他攻击者所掌握。至少可以肯定的是,2017年4月被用于传播FINSPY恶意软件的零日漏洞CVE-2017-0199应该属于经济利益驱动的产物。如果FINSPY背后的使用者是从同一来源获得这两项漏洞,那么相关源代码很有可能也会被出售给其他恶意人士。。
相关资讯
最新热门应用
非小号交易平台官网安卓版
其它软件292.97MB
下载
币交易所地址
其它软件274.98M
下载
iotx交易所app
其它软件14.54 MB
下载
zt交易所安卓最新版
其它软件273.2 MB
下载
币拓交易所bittok
其它软件288.1 MB
下载
u币交易所平台app
其它软件292.97MB
下载
热币全球交易所app官网版
其它软件287.27 MB
下载
多比交易平台app
其它软件28.28MB
下载
币赢交易所app官网安卓版
其它软件14.78MB
下载
toncoin币交易所安卓版
其它软件48MB
下载