声明:本文为F-Secure报告翻译,文中涉及的观点立场不代表本网站观点立场。
本报告描述了我们发现并命名的木马-NanHaiShu(NanHaiRAT)。基于我们的技术分析表明,该木马的主要攻击对象为政府和私营机构,其中包括几个值得注意的目标: 菲律宾司法部、 亚太经合组织APEC峰会组织者和一家跨国律师事务所。
我们认为,以上组织机构和南海争议问题相关,所以被攻击者列入了渗透攻击目标。而最近的核心冲突问题便是2016年7月12日的南海仲裁案。根据对 NanHaiShu 木马的 技术分析,结合几个被入侵的特定目标,我们确定了木马的攻击源。
两年前我们捕获了 NanHaiShu 木马的第一个样本,截至2016年3月,该木马的攻击活动仍然处于活跃状态。攻击者通过在邮件附件中捆绑NanHaiShu木马进行鱼叉式邮件攻击,若木马被成功植入,将会向 远程C&C服务器建立信息回传通道。
攻击者通过精心构造邮件内容,向特定目标发送鱼叉式邮件。例如,攻击律师事务所的邮件包含薪资和财政事宜, 为了诱骗邮件接收者,攻击者还以社工方式“精心”编写了相关邮件内容。
图 针对律师事务所雇员的鱼叉式邮件
被木马NanHaiShu渗透 攻击的目标,都有一个共同特性: 与 南海领土争端问题有关 。这些 被攻击的目标中包含:菲律宾司法部、 亚太经合组织APEC峰会组织者、介入南海争议的国际律师事务所( 美国福利·霍格律师事务所) 。
菲律宾司法部: 菲律宾司法部 介入了菲方对中国的仲裁案件;
APEC 会议组织者: 2015 年11月,在菲律宾举行亚太经合组织领导人非正式会议 (AELM)之前, 新闻报道表明菲律宾在与会期间将不会提及南海问题。而就在会议准备前期,我们捕获了与 AELM 会议 相关的木马样本。
一家跨国律师事务所: 自2013年起,在南海仲裁案中涉及联合国海洋法公约争端等方面,这家律师事务所就一直代表菲方进行相关运作。
在我们的调查中,多个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 木马攻击时间线
木马使用的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木马的代码和架构方式与中国开发人员有关。此外,我们还认为,攻击者目的直接与 国家战略利益相关。
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 秒。
攻击者嵌入在诱饵文件XLS和Jscript中的VBA宏使用了Base64编码。最近的一个样本中, JScript代码中的URL字符串被两层加花指令混淆;必须使用Base64解码方式,结合Unicode字符转码程序才能解密。以下为加花指令函数:
攻击者CC服务器使用DNS动态域名进行回连,而且木马回连请求中包含JScript代码。在最近的样本中,木马和C&C服务器之间的通信请求在加密前的结构如下:
md5(VolumeSerial Number)|IP Address|Computer Name|User Name|Operating System|ProxyServer|Malware Version|
以下则为受感染主机发送的 POST 数据:
action=aaa&data=N2RkZjMyZTE3YTZhYzVjZTA0YThlY2JmNzgyY2E1MDl8MTkyLjE2OC4xLjF8Sm9obkRvZS1QQ3xKb2huRG9lLVBDXEpvaG5Eb2UoYWRtaW5pc3RyYXRvcil8TWljcm9zb2Z0IFdpbmRvd3MgWFAgUHJvZmVzc2lvbmFsfHxqc25lWzEuNF0saW1wdCxwcnw=
木马使用HTTP POST方式回传相关加密信息,使用HTTP GET方式下载JScript 和VBScript执行代码,以下为相关操作函数:
恶意宏代码的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程序的提示,让受害者不易察觉。
Nanhaishu属于 窃取信息资料的远程访问木马(RAT),它能够接收和执行JScript和VBScript代码指令,也可以上传下载任何文件脚本,进一步渗透,将会造成目标系统敏感信息泄露。以下为Nanhaishu木马的C&C服务器IP解析情况:
*本文译者:clouds,参考来源: F-Secure ,转载须注明来自FreeBuf.COM