南海网络谍影F-Secure报告之木马NanHaiShu分析

声明:本文为F-Secure报告翻译,文中及的观点立场不代表本网站观点立场。

1.   前言

本报告描述了我们发现并命名的木马-NanHaiShu(NanHaiRAT)。基于我们的技术分析表明,该木马的主要攻击对象为政府和私营机构,其中包括几个值得注意的目标: 菲律宾司法部、亚太经合组织APEC峰会组织者和一家跨国律师事务所。

我们认为,以上组织机构和南海争议问题相关,所以被攻击者列入了渗透攻击目标。而最近的核心冲突问题便是2016年7月12日的南海仲裁案。

根据对NanHaiShu木马的技术分析,结合几个被入侵的特定目标,我们确定了木马的攻击源。

两年前我们捕获了NanHaiShu木马的第一个样本,截至2016年3月,该木马的攻击活动仍然处于活跃状态。攻击者通过在邮件附件中捆绑NanHaiShu木马进行鱼叉式邮件攻击,若木马被成功植入,将会向远程C&C服务器建立信息回传通道。

2.   相关信息

(1)木马传播方式

攻击者通过精心构造邮件内容,向特定目标发送鱼叉式邮件。例如,攻击律师事务所的邮件包含薪资和财政事宜,为了诱骗邮件接收者,攻击者还以社工方式“精心”编写了相关邮件内容。

图  针对律师事务所雇员的鱼叉式邮件

(2)攻击目标描述

被木马NanHaiShu渗透攻击的目标,都有一个共同特性:与南海领土争端问题有关。这些被攻击的目标中包含:菲律宾司法部、亚太经合组织APEC峰会组织者、介入南海争议的国际律师事务所(美国福利·霍格律师事务所)。

菲律宾司法部:菲律宾司法部介入了菲方对中国的仲裁案件;

APEC会议组织者:2015年11月,在菲律宾举行亚太经合组织领导人非正式会议(AELM)之前,新闻报道表明菲律宾在与会期间将不会提及南海问题。而就在会议准备前期,我们捕获了与AELM会议相关的木马样本。

一家跨国律师事务所:自2013年起,在南海仲裁案中涉及联合国海洋法公约争端等方面,这家律师事务所就一直代表菲方进行相关运作。

3.   攻击时间线

在我们的调查中,多个NanHaiShu木马样本被发现,其中一些特定样本被用来窃取南海仲裁案相关的情报信息。

这些样本最早于2015年1月13日被发现,其中样本文件“司法部2015年1月13日员工奖金.xls”在海牙常设仲裁法院公开发布中菲仲裁案新闻稿的一个月后被发现。

在新闻稿中,菲律宾通过其代理律师事务所单方面宣布:菲方将于2015 年3月15日前提交完成仲裁案的相关补充材料,而留给中国的截止日期为2015年 6月16日。就在这两个时间点之间,我们发现了NanHaiShu木马的两起攻击事件:

(1)在菲方截止日期过后,菲方代理律师事务所收到一封以公司为名义的包含恶意附件的电子邮件;

(2)在2015年5月22日,一封针对菲方律师的鱼叉式钓鱼邮件被发现,邮件中包含恶意文件“Salary and Bonus Data.xls”。

另外,我们还发现了一个名为“AELM Entertainment budget and Attendance allowance.xls”的威胁样本文件,该样本最早于AELM会议之前的2015年10月被发现,而中菲双方在AELM会议前的磋商焦点就是南海争议的搁置问题。

2015的10月26日,媒体报道美国军舰近距离驶入中国岛礁活动,就在同一时期,NanHaiShu木马的C&C服务器作出了明显改变(后文将说明)。以下为木马NanHaiShu的攻击时间线:

图  NanHaiShu木马攻击时间线

4.   攻击属性与连接

木马使用的VBA Base64解密函数在大量中国软件开发网站中出现

图 Base64解密函数的搜索结果

其解密程序似乎是Java Script Base64公开解码程序的分支版本。后者代码最早于2005年公布于中国程序员网站CSDN

 

图  NanHaiShu木马使用的Base64解密程序(上)与公开版本的Base64解密程序对比(下)

最初阶段,Nanhaishu木马样本C&C服务器IP解析指向美国IP地址(大多是一些云服务提供商)。然而,在2015年10月26日,也就是美国军舰驶入南海活动当天,木马C&C服务器解析全部转向位于中国的IP 地址103.238.224.218。

 我们的技术分析明显表明,Nanhaishu木马的代码和架构方式与中国开发人员有关。此外,我们还认为,攻击者目的直接与国家战略利益相关。

5.   技术分析

(1)感染过程

Nanhaishu木马被捆绑到鱼叉式邮件附件中通过电子邮件发送,使用社会工程邮件文本内容,吸引用户打开恶意附件。

附件通常是包含了恶意宏程序的XLS或DOC文档。虽然在微软office程序安全设置中,宏自动运行功能是被禁用的,但即使如此,宏运行功能仍然可能被用户执行。Office程序在执行宏代码之前会显示一个选择宏功能运行的通知消息:

如果用户不小心选择启用宏代码enable content功能,那么攻击者的恶意VBA宏代码将会执行

大多数样本的VBA宏代码中内置了两套Base64编码文件。在最近的一个样本中,VBA宏在运行之前,将进行解码并向 “%APPDATA%directorymicrosoftnetworknetwork .js”写入JScript数据。

宏代码对XLS诱饵文件进行解码,加载木马执行,利用network.js修改% RegRun %注册表键值实现自启动机制,达到永久驻留目的。木马将搜索以下系统信息并回传到C&C服务器:

(1)存储驱动器序列号

(2)IP地址

(3)计算机名称

(4)用户名

(5)操作系统

(6)代理服务器

木马信息收集程序模块:

木马与C&C服务器与之间建立连接的时间间隔约为10.584秒。

 (2)混淆

攻击者嵌入在诱饵文件XLS和Jscript中的VBA宏使用了Base64编码。最近的一个样本中, JScript代码中的URL字符串被两层加花指令混淆;必须使用Base64解码方式,结合Unicode字符转码程序才能解密。以下为加花指令函数:

 (3)网络流量

攻击者CC服务器使用DNS动态域名进行回连,而且木马回连请求中包含JScript代码。在最近的样本中,木马和C&C服务器之间的通信请求在加密前的结构如下:

md5(VolumeSerial Number)|IP Address|Computer Name|User Name|Operating System|ProxyServer|Malware Version|

 以下则为受感染主机发送的POST数据:

action=aaa&data=N2RkZjMyZTE3YTZhYzVjZTA0YThlY2JmNzgyY2E1MDl8MTkyLjE2OC4xLjF8Sm9obkRvZS13xKb2huRG9lLVBDXEpvaG5Eb2UoYWRtaW5pc3RyYXRvcil8TWljcm9zb2Z0IFdpbmRvd3MgWFAgUHJvZmVzc2lvbmFsfHxqc25lWzEuNF0saW1wdCxwcnw=

木马使用HTTP POST方式回传相关加密信息,使用HTTP GET方式下载JScript 和VBScript执行代码,以下为相关操作函数:

6.   其他

恶意宏代码的Jscript脚本中包含一个名为“gVersion”的常数变量,该变量似乎用于攻击者在源代码中识别木马名字或版本,“gVersion”还包含以下不同字符串内容:

1.hta[1.1]doj.m

2.jsne[1.3.3]PP

3.jsne[1.4],impt,pr

图  gVersion变量示例

样本“DOJ Staff bonus January 13, 2015.xls”和后期样本释放的HTA文件中包含相同的JScript程序,而且都被封装在一个HTML文件中。

HTA文件通过注入打开IE浏览器的mshta.exe进程实现加载。HTA文件具有创建、编辑及删除系统文件和注册表项权限。

其中,第一个SCRIPT tag运用resizeTo命令隐藏IE窗口,第二SCRIPT tag包含Nanhaishu木马中常见的Jscript代码程序。

HTA文件和Jscript文件的唯一区别是C&C服务器不是加密的,而且包含有SafeIE函数,SafeIE函数通过更改“Internet Settings” 和 “Internet Explorer注册表项键值,避免IE对不安全ActiveX程序的提示,让受害者不易察觉。

7.   调查结论

Nanhaishu属于窃取信息资料的远程访问木马(RAT),它能够接收和执行JScript和VBScript代码指令,也可以上传下载任何文件脚本,进一步渗透,将会造成目标系统敏感信息泄露。以下为Nanhaishu木马的C&C服务器IP解析情况:

8.   样本信息

*本文译者:clouds,参考来源:F-Secure,未经许可禁止转载