起底国家级APT组织:海莲花(APT-Q-31)
2021-10-20
来源:互联网安全内参
国家级APT(Advanced Persistent Threat,高级持续性威胁)组织是有国家背景支持的顶尖黑客团伙,专注于针对特定目标进行长期的持续性网络攻击。
奇安信旗下的高级威胁研究团队红雨滴(RedDrip Team)每年会发布全球APT年报【1】、中报,对当年各大APT团伙的活动进行分析总结。
虎符智库特约奇安信集团旗下红雨滴团队,开设“起底国家级APT组织”栏目,逐个起底全球各地区活跃的主要APT组织。本次锁定东南亚地区最为活跃的APT组织:OceanLotus(海莲花)。
03
OceanLotus
OceanLotus(海莲花)是以中国为主要攻击目标的APT组织。在东南亚地区最为活跃。
OceanLotus(海莲花)由奇安信红雨滴团队(前身为天眼实验室)最早披露并命名,奇安信内部跟踪编号为APT-Q-31。
背景
OceanLotus(海莲花)又名APT32、SeaLotus等称号,是一个据称有东南亚背景的APT组织,其攻击活动最早可追溯到2012年4月。在首次披露的攻击活动中,攻击目标涵盖了中国海事机构、海域建设部门、科研院所和航运企业。
自2015年首次披露以来,OceanLotus持续活跃至今,后续针对中国境内的攻击活动扩展到几乎所有重要机构,包括政府部门、科研院所、境内高校和金融投资机构。
根据各安全厂商机构对该组织活动的拼图式揭露,OceanLotus除针对中国发起攻击之外,其攻击所涉及的国家地区分布非常广泛,包括越南周边国家(如柬埔寨、泰国、老挝等)和欧洲地区,该组织的攻击目标还包括越南的异见人士、人权代表、媒体、环保组织等。
OceanLotus的攻击不局限于国家级网络间谍活动,也延伸至商业情报窃取,比如汽车制造行业。2019年,丰田、现代、宝马等跨国汽车企业被报道遭到OceanLotus攻击,导致数据泄露。
另外,OceanLotus被观察到进行加密货币挖矿。2020年7月至8月,该组织在针对法国和越南私营部门以及政府机构的攻击中,将门罗币矿机程序部署在受害主机上。
攻击特点手段、工具
OceanLotus拥有非常高的社会工程学技巧,常用鱼叉攻击和水坑攻击,在近年来的攻击活动中还采用了供应链攻击手法对高价值目标进行渗透。OceanLotus的攻击武器覆盖多平台,已知具有针对Windows和Mac OS系统的攻击工具,疑似具备针对Android和Linux平台的恶意软件,该组织擅长结合公开的商业或开源工具实施攻击活动,比如Cobalt Strike,Mimikatz。
随着攻击活动不断被安全厂商曝光,OceanLotus也在不断升级自己的攻击手法,通过白利用、多阶段加载、代码混淆加密等手段加强隐蔽性,规避检测与追踪。
从过往OceanLotus攻击活动中,总结出该组织具有以下特点:
精通目标国家语言,熟悉目标国家时事新闻热点以及政府组织结构,能够制作出极具迷惑性的攻击诱饵;
能够组织长周期大规模的攻击活动,综合使用鱼叉攻击、水坑攻击、社工攻击、供应链攻击等多种手法入侵高价值目标,一旦获得一台机器的控制权,便会扫描整个内网并横向移动以扩大感染面,OceanLotus在入侵和横向移动过程中具备利用0day/Nday漏洞的能力;
不断增强恶意代码隐蔽性以规避检测,常用的手法包括利用系统白名单程序、应用软件DLL劫持(白加黑)、多阶段加载、代码混淆加密;
为了隐藏真实身份,经常变换下载服务器和C2服务器的域名和IP,而且大多数域名为了抵抗溯源都开启了Whois域名隐藏,使得分析人员很难知道恶意域名背后的注册者,还曾在历史攻击活动中使用DGA(域名生成算法)进一步逃避检测追踪。
(一)攻击手段
1. 鱼叉攻击
OceanLotus制作的鱼叉邮件大都具有非常本土化的邮件主题,贴合目标国家的时事热点,迷惑性极强,并且使用的攻击诱饵类型多样。
在历次攻击活动中出现过以下类型攻击诱饵:
(1) 携带恶意宏或漏洞利用的Office文档;
(2) 使用word程序图标进行伪装的可执行文件;
(3) 合法可执行文件加恶意DLL(白加黑)诱饵;
(4) Chm文件诱饵;
(5) Lnk文件诱饵;
(5) Hta文件诱饵;
(6) 携带CVE-2018-20250漏洞的WinRAR压缩包;
(7) SFX自解压文件。
图1 OceanLotus通过鱼叉邮件的攻击链【2】
2. 水坑攻击
OceanLotus采用两种手段制作水坑:攻陷合法网站植入恶意Javascript代码,或者搭建伪装为合法网站的恶意网站。OceanLotus通过水坑网站除了直接向目标系统投递恶意软件,还结合社会工程学手段制作钓鱼页面窃取攻击目标的邮箱账号。
3. 社工攻击
社会工程学也是OceanLotus常用的攻击手段。该组织曾在Facebook等平台上伪造身份为活动家和商业实体的角色。为了使这些虚构人物或者组织显得更真实可信,OceanLotus会在多个互联网服务平台上伪造相关信息。该组织在互联网上创建的一些社交页面用来吸引特定关注者,以便后续进行定向的网络钓鱼或者下发恶意软件。
4. 供应链攻击
在最近几年的攻击活动中,OceanLotus开始采用供应链攻击方式,向攻击目标组织机构的IT服务商发起攻击,通过感染上游IT服务商,并借助网络边界设备(如VPN)的漏洞进入攻击目标的内网。
(二)使用工具及技术特征
OceanLotus使用的网络武器包括制作水坑网站的Javascript恶意代码框架、针对Windows和Mac OS系统的恶意软件。
此外,安全厂商还披露了与OceanLotus组织存在关联的Android和Linux平台恶意软件。
1. 水坑网站Javascript恶意代码框架
OceanLotus通过植入的Javascript恶意代码追踪网站访问者,并收集访问者设备信息,然后对目标人员采取对应攻击行动。
Javascript代码具有如下特征:
(1) 多阶段加载,植入第一阶段Javascript代码负责检测运行环境,并根据检测结果决定是否从C2获取第二阶段Javascript代码;
(2) 第二阶段Javascript为开源项目fingerprintjs2的修改版,作用是收集访问设备的信息并加密传递给第二阶段C2;
(3) 根据收集的用户设备信息判断是否属于攻击目标,只向攻击目标下发Javascript攻击代码实施后续攻击行为。
图2 OceanLotus利用水坑攻击收集设备信息并下发后续payload【3】
2. Windows平台
OceanLotus针对Windows系统的攻击工具包括Denis木马、Remy木马、Cobalt Strike木马以及KerrDown下载器,其中由Cobalt Strike生成的木马最常见。
除此之外OceanLotus还使用Powershell脚本和公开工具(如Mimikatz、nbtscan)进行内网渗透和横向移动。
OceanLotus在Windows平台的攻击活动具有如下特征:
(1) 多阶段加载
恶意代码从植入目标系统到最终远控运行,通常会经历多阶段加载,后续载荷获取方式包括:从当前载荷自身数据提取、读取其他文件数据以及从C2服务器下载。
(2) 代码混淆加密
为了避免检测分析,OceanLotus恶意代码在每个阶段的载荷基本都会经过加密处理,使用的加密算法包括各类XOR加密和对称加密(比如RC4、AES)。OceanLotus还曾使用过图片隐写技术隐藏后续载荷,具体做法是将后续载荷的加密数据存放在png类型图片像素的最低有效位。从2019年开始,OceanLotus植入目标系统的后门出现定制化特点,即后续载荷需要用与目标主机某个特征标识(比如主机名、IP地址或者MAC地址)的hash值作为密钥才能成功解密,该方法不仅增强了恶意软件的隐蔽性,也极大阻碍了安全人员对其攻击行为的分析与追踪。
除了加密,OceanLotus还经常使用各种代码混淆手段对抗静态分析。此外,OceanLotus有时也会在恶意程序文件末尾中填充大量无效数据,增加文件尺寸,干扰一些安全软件的检测分析。
(3) 白利用
OceanLotus会使用一系列白利用手法绕过杀毒软件检测,曾使用过Windows系统白名单程序odbcconf、msbuild执行恶意软件。该组织使用最多的白利用手法是DLL劫持(白加黑),即可执行文件都是带有数字签名的正常应用程序,而与之相关的DLL文件被替换为了恶意DLL。
(4) 远控后门与C2服务器通信方式除了常规的TCP协议,还使用过DNS隧道和ICMP协议。
(5) 远控后门既有直接连接C2服务器类型,也有创建命名管道等待连接和监听端口等待连接类型。
3. Mac OS平台
OceanLotus针对Mac OS平台的后门功能为收集操作系统信息上传C2服务器和接收执行C2指令。后门通常由植入恶意软件中的dropper组件释放,dropper还负责建立持久化,以及修改后门程序文件时间戳增加其隐蔽性。与Windows平台类似,Mac OS平台的后门借助加密隐藏关键字符串。此外,Mac OS平台后门在后续改进升级过程中还具备了反调试和反沙箱功能。
4. Android平台
2020年,卡巴斯基披露了一类通过安卓应用商店(比如Google Play)分发的木马应用,由于该类安卓木马在代码特征上与OceanLotus MacOS后门有一些相似之处,并且使用的C2服务器与OceanLotus Windows后门存在重叠,故这类安卓木马被认为是OceanLotus的Android平台后门。
此类安卓木马将经过AES加密后的恶意载荷嵌入应用之中(比如放置在应用资源文件夹下)。恶意载荷的manifest清单文件中不包含任何权限申请,权限获取通过调用未在官方文档记录中的Android API实现。
图3 安卓后门PhantomLance与OceanLotus的关联【4】
5. Linux平台
2021年披露的Linux平台后门RotaJakiro(双头龙)因与OceanLotus的Mac OS后门样本在代码特征上有诸多相似之处,被认为与OceanLotus相关。
RotaJakiro采用了动态生成的AES加密常量表,双层加密的通信协议等技术对抗安全人员的二进制和网络流量分析。该后门在运行时会根据当前用户是否为root用户执行不同的持久化、进程守护以及单一实例策略,使用AES和rotate的组合算法解密敏感数据。
知名攻击事件
(一)OceanLotus首次曝光
2015年,OceanLotus对中国政府、科研院所、海事机构、海域建设、航运企业等重要领域实施的不间断攻击被曝光【5】,使该组织首次为世人所知。
该组织主要通过鱼叉攻击和水坑攻击等方法,配合多种社会工程学手段进行渗透,向境内特定目标人群传播特种木马程序,秘密控制部分政府人员、外包商和行业专家的电脑系统,窃取系统中相关领域的机密资料。
2014年2月以后,OceanLotus进入攻击活跃期,并于2014年5月发动了最大规模的一轮鱼叉攻击,大量受害者因打开带毒的邮件附件而感染特种木马。在2014年5月、9月,以及2015年1月,该组织又对多个政府机构、科研院所和涉外企业的网站进行篡改和挂马,发动了多轮次、有针对性的水坑攻击。
(二)Cobalt Kitty行动
2017年安全厂商cybereason披露了OceanLotus针对跨国企业的商业机密窃取行动“Cobalt Kitty”【6】。
OceanLotus通过向公司高层管理人员投递鱼叉钓鱼邮件,入侵了副总裁、高级主管和运营部门其他关键人员的计算机,共攻陷了40 多台 PC 和服务器,包括域控服务器、文件服务器、Web服务器和数据库服务器。
在此次攻击活动中,OceanLotus利用对微软、谷歌和卡巴斯基应用程序的DLL劫持启动后门,并使用了以微软Outlook为C2通信信道的新型后门。
(三)大规模数字监控和攻击
2017年5月,安全公司Volexity发现,OceanLotus发动了针对ASEAN(东南亚国家联盟)、周边国家(柬埔寨、中国、老挝、菲律宾)以及越南境内人权组织、新闻媒体、民主团体组织的大规模网络攻击活动【7】,超过100个组织或个体网站被攻陷。
OceanLotus在攻陷网站网页中植入恶意Javascript代码,对特定组织和个人展开定向攻击,结合社交工程学手段在攻击目标的系统中安装恶意软件或者窃取目标的邮箱账号。
在此次攻击中,OceanLotus创建了大量模拟合法网络服务提供商(比如Akamai、百度、Cloudfare、Google)的域名,使用的基础设施横跨多个托管服务提供商和国家。
(四)针对东南亚的水坑攻击
2018年11月,ESET披露了OceanLotus新一轮水坑攻击【3】。这轮水坑攻击至少起始于2018年9月,披露时已确定被攻陷的网站有21个,涉及柬埔寨国防部、柬埔寨外交与国际合作部以及越南新闻和博客网站。
在此次水坑攻击中,OceanLotus开始使用非对称密码进行AES会话密钥的交换,会话密钥用来加密与C2服务器的通信数据,从而避免最终载荷被安全防护产品截取。此外,攻击者还将HTTP协议切换为WebSocket协议进一步隐藏通信数据。
(五)PhantomLance攻击行动
2020年卡巴斯基发现了一类通过安卓应用商店分发的木马应用,称之为“ PhantomLance”攻击行动【4】,认为该攻击行动与OceanLotus有关。Bitdefender发现这个针对Android平台的攻击行动可追溯至2014年【8】。
在几乎所有恶意软件部署案例中,攻击者都试图通过创建仅包含虚假的最终用户许可协议(EULA)的Github帐户来构建虚假的开发人员资料。攻击者采用如下手段在应用商店发布恶意安卓应用:上传到应用商店的初始版本不包含任何恶意载荷或用于释放恶意载荷的代码,从而绕过应用商店的检测,再通过后续版本更新向应用中加入恶意载荷和代码以释放并执行这些恶意载荷,如图4所示。
在这些恶意应用中,除了常见的诱饵应用程序(例如Flash插件、清理程序和更新程序)外,还有一些专门针对越南地区的应用程序,可以看出越南属于木马应用的目标投放区域。
图4 利用版本更新植入恶意代码【4】
(六)借助伪造网站的水坑攻击
2020年,Volexity披露OceanLotus建立运营了多个伪造为维权、新闻和反腐败主题的网站,并借此向特定的网站访问者发起水坑攻击【9】。该组织还运营了与伪造网站相关的Facebook账户,用以提高网站的可信度。根据伪造网站的主题内容可以判断这些攻击活动的目标区域包括越南及其周边国家。
在披露之后,Facebook采取行动禁用了与伪造网站相关的Facebook账户,并将攻击活动关联到越南一家名为CyberOne的IT公司【10】。
总结
总体而言,OceanLotus的攻击目标集中在越南周边国家和越南本土的人权、环保和新闻媒体等组织机构。
该组织发动的攻击活动周期长、攻击使用的基础设施数量多分布广、攻击的针对性和手法复杂度很高,可以看出该组织背后强大的国家政府支持。
自曝光以来,OceanLotus一直处于活跃状态,不断升级改进攻击手段以对抗分析与追踪,而且将中国作为主要攻击目标之一,值得我们高度重视。