Trendmicro研究人员最近发现了一个与OceanLotus 组织相关的新后门。该新变种的部分更新包括一些新的行为和域名。截止目前,仍然有许多杀毒软件仍然无法成功检测。
由于该后门的动态行为和代码与之前的OceanLotus样本非常相似,因此研究人员确认这是OceanLotus的样本。
图 1-2. OceanLotus样本(上)和最新OceanLotus样本(下)的比较
OceanLotus主要针对传媒、科研等行业的组织发起定向攻击。最近,研究人员发现有攻击者利用这些恶意网站来传播恶意软件。
因为攻击中使用的文档是越南语的,而且之前的样本也是攻击越南,因此研究人员分析后怀疑样本背后的攻击者主要攻击越南用户。
样本
样本是以zip文件中的app来传播的。使用了word文件的图标作为伪装,尝试伪装成为合法的word 文件。
图 3. 样本文件名、图标和app bundle结构
恶意软件使用的另一个绕过检测的技术是在app bundle名中加入特殊字符。当用户通过macOS Finder app或终端命令行寻找伪造的doc 文件夹时,文件夹的名字是"ALL tim nha Chi Ngoc Canada.doc" (“tìm nhà Chị Ngọc”,翻译过来就是“找到Mrs. Ngoc的房子”)。但是研究人员检查原始的zip文件在"." 和 "doc"之间发现了3个字节。
图 4. "." 和 "doc"之间的特殊字符
3个字节的"efb880"是UTF-8编码的。根据UTF-8映射,相关的Unicode 编码是"U+FE00"。
表1. UTF-8映射
操作系统会将app bundle 看作不支持的目录类型,默认动作open 命令是执行恶意app。否则,如果后缀是没有特殊字符的.doc,就会调用Word 来打开app bundle,但是因为是无效的文件,app就无法正常打开。
app bundle样本的代码签名信息如下:
图 5. 样本的代码签名信息
App bundle中包含有2个文件:
· ALL tim nha Chi Ngoc Canada: 含有主恶意路径的shell脚本;
· configureDefault.def: 执行过程中展示的word文件。
图 6. “ALL tim nha Chi Ngoc Canada” 文件内容
图 7. 执行文件后展示的文件
Shell脚本运行后,会执行以下动作:
1)删除"*ALL tim nha Chi Ngoc Canada.?doc*”中文件的文件隔离属性;
2)尝试移除系统中文件的文件隔离属性;
3)复制"ALL tim nha Chi Ngoc Canada.?doc/Contents/Resources/configureDefault.def(doc)"到"/tmp/ALL tim nha Chi Ngoc Canada.doc(doc)" 中;
4)打开"/tmp/ALL tim nha Chi Ngoc Canada.doc(doc)";
5)提取base64编码的二进制文件到"ALL tim nha Chi Ngoc Canada.?doc/Contents/Resources/configureDefault.def(fat - binary)"中,这是第二阶段payload;
6) 将第二阶段payload的访问权限修改为执行第二阶段payload的启动;
7) 删除恶意软件app bundle "ALL tim nha Chi Ngoc Canada.?doc";
8) 复制 "/tmp/ALL tim nha Chi Ngoc Canada.doc(doc)"到"{execution directory}/ALL tim nha Chi Ngoc Canada.doc";
9) 删除"/tmp/ALL tim nha Chi Ngoc Canada.doc"。
第二阶段payload
执行后,第二阶段payload(ALL tim nha Chi Ngoc Canada.?doc/Contents/Resources/configureDefault.def)会执行以下动作:
1) 释放第三阶段payload到~/Library/User Photos/mount_devfs;
2) 通过创建~/Library/LaunchAgents/com.apple.marcoagent.voiceinstallerd.plist 为样本创建驻留;
图 8. Plist文件 ~/Library/LaunchAgents/com.apple.marcoagent.voiceinstallerd.plist
3) 使用touch命令修改样本的时间戳;
图 9. 释放的文件的时间戳
4) 删除自己。
第三阶段payload
在第三阶段payload (~/Library/User Photos/mount_devfs)中,字符串使用base64编码和字节修改来加密。
图 10. 加密的字符串
图 11-12. 解密方法
与老版本的OceanLotus 后门类似,新版本的后门中包含2个主函数:
· 一个用来收集操作系统信息、提交信息给恶意C2 服务器、接受其他的C2通信信息;
· 另一个是后门功能。
收集的信息会被加密,并发送给恶意C2服务器。
图 13. 发送给C2服务器的TCP流
并从相同的服务器接收命令。
图 14. 从C2服务器接收命令的TCP流
恶意软件使用的C2服务器如下所示:
· mihannevis[.]com
· mykessef[.]com
· idtpl[.]org
新变种的后门功能与老版本的类似,如下所示:
图 15-16. 老版本OceanLotus变种(上)和新版本(下)的代码比较
C2域名
根据Google和Whois 历史记录,mihannevis[.]com域名是在使用C2 服务器之前用来保存其他网站信息。
图 17-18. mihannevis[.]com域名历史,Whois (上)和谷歌(下)
在VirusTotal中,相关的URL查询出现在8月底。
图 19. VirusTotal中与mihannevis[.]com相关的URL
之前,域名"mykessef[.]com" 被用作C2服务器。
图 20. mykessef[.]com域名历史
"idtpl[.]org"域名的注册时间是3年前,之后没有更新历史。根据Whois 的查询结果,其注册商已于2020年3月底过期。
图 21. idtpl[.]org 注册信息
但是,在2020年7月中旬,其IP 地址被修改为185[.]117[.]88[.]91。
图 22. idtpl[.]org 域名历史信息
本文翻译自:https://www.trendmicro.com/en_us/research/20/k/new-macos-backdoor-connected-to-oceanlotus-surfaces.html如若转载,请注明原文地址