OceanLotus下载器KerrDown分析

ang010ela Web安全 2019年3月5日发布
Favorite收藏

导语:OceanLotus (也叫做APT32),其主要攻击目标是东南亚。Unit 42研究人员近期发现一个该组织使用的一个新下载器KerrDown,本文对KerrDown下载器进行分析。

OceanLotus (也叫做APT32),其主要攻击目标是东南亚。过去几年发生的多起攻击活动都与APT 32有关,虽然APT 32的攻击活动是全球性的,但其主要活动在APAC区域,主要攻击目标包括多个行业、外国政府、与越南相关的活动家和持不同政见者。

本文介绍OceanLotus从2018年初开始使用的定制的下载器恶意软件KerrDown。研究人员在分析过程中还使用了Jaccard index(Jaccard相似系数)算法来找出KerrDown恶意软件家族与数据库中其他恶意软件家族的相似性。

研究人员一共发现两种传播 KerrDown下载器的方法。第一个是使用含有恶意宏的office文档,第二个方法是使用含有DLL侧加载的合法程序的RAR文件。对RAR文件来说,用于诱骗目标的文件名都是越南语的,如图11所示。研究人员分析表明攻击活动的主要目标是越南或说越南语的人。

恶意文档

分析首先从word文档开始,研究人员发现文档中含有新的payload KerrDown。哈希值为(SHA256:89e19df797481ae2d2c895bcf030fe19e581976d2aef90c89bd6b3408579bfc3)。

下图1是诱饵文档的截图。受害者打开诱饵文档后,文档中含有一个包含越南语消息的图片,要求受害者启用宏来查看文件的内容。乍一看,文档除了要求启用宏外没有其他内容。但仔细查看发现页面中有两个base64的二进制大对象(blob)以单独表格的形式插入到页面中,而且字体大小被设置为1,以欺骗受害者忽视该内容。使用该技术的另一个原因是许多自动化的工具会检测含有流的嵌入的二进制文件的存在。

传播的文档分析

 

图1:诱饵文档

增大了字体后,base64的blob就可以看到了。解码后就可以在每个表格的开始看到PE DLL的MZ header,如图2所示:

 

图2: Base64编码的pedll文件,以文本的形式嵌入到文档中

图3是嵌入的宏代码,负责检查base64 blob是否应该根据iCheck变量来解码,iCheck是一个布尔值,如果受害者系统运行的是64位的系统,iCheck就被设置为true,如果受害者系统运行的是32位的系统,iCheck就被设置为false。如果系统是64位的,base64编码的blob就用左侧代码解码,如果是32位的,就用右侧代码解码。

 

图3: 基于系统检查的Base64 blob选择

研究人员发现攻击者重用了Motobit的VBS解码函数。图4是宏代码中使用的base64函数和Motobit的VBS base64解码函数的对比。

图4: Base64 decoder比较

KerrDown样本相似性分析

研究人员从文档中解码和提取出DLL文件后,使用Jaccard index相似性算法来分析该样本和其他OceanLotus使用的恶意软件样本的异同。

图5:使用Jaccard Index进行相似性分析 

KerrDown与Cobalt Strike Beacon 

基于操作系统的架构,不同版本的嵌入的KerrDown DLL会释放到受害者机器中。DLL会被释放到Users\Administrator\AppData\Roaming\目录中,保存为文件main_background.png。该DLL会从URL中取回payload,用DES算法解密并在内存中执行。因此,只有KerrDown DLL下载器保存在系统中,payload会在不写入系统的情况下直接在内存中执行。表1表示下载器会根据受害者机器的操作系统架构来下载payload的URL。

image.png

表1 : 基于架构的Payload DLL选择

到KerrDown final payload的链接截止分析时还是活动的,因此研究人员下载了一个Cobalt Strike Beacon变种的副本。之前研究人员已经发布了关于OceanLotus在攻击活动中使用Cobalt Strike的分析。从中可以看出,恶意软件的目的是下载Cobalt Strike Beacon payload并在内存中执行。

含有KerrDown的RAR

研究人员在调查KerrDown时发现多个含有恶意软件变种的RAR文件。研究人员还没有找出传播的方法和变种的目标。攻击者通过加入多个攻击阶段,在每一阶段加入压缩和加密的方法来修改下载器代码。攻击者将恶意代码执行的方式从office宏变为通过合法程序实现DLL侧加载。

RAR文件

(SHA256:040abac56542a2e0f384adf37c8f95b2b6e6ce3a0ff969e3c1d572e6b4053ff3)的文件名为越南文件名Don khieu nai.rar,翻译过来就是投诉信。该文件中含有一个合法的老版本的office word可执行文件Noi dung chi tiet don khieu nai gui cong ty.exe,翻译过来就是学习如何使用你的公司。攻击者用DLL侧加载技术来加载恶意DLL。在打开RAR中的可执行文件时,会加载相同目录中的恶意DLL。DLL会执行多个阶段shellcode,每个shellcode会研用不同的技术来隐藏下一阶段。整个安装步骤如下:

· Word exe文件加载相同目录中的wwlib.dll,执行DLL的FMain函数。

· DLL解码body中base64编码的shellcode,并执行。

· Shellcode解压缩第2阶段shellcode并执行,第2阶段shellcode是用开源压缩代码URCL来压缩的。

· 第2阶段shellcode会用AES解密第3个shellcode。

· 第3阶段shellcode会从远程位置 https://cortanasyn[.]com/Avcv提取shellcode并执行;

· 第4阶段shellcode会在内存中加载嵌入的Cobalt Strike Beacon DLL,并执行。

  

图6: 侧加载的恶意下载器执行流

根据数据集中所有的KerrDown样本的编译时间戳,研究人员发现:

OceanLotus从2018年3月开始使用该下载器,并在之后的攻击活动中持续使用该下载器。图7是KerrDown样本的时间线: 

图7: 下载器DLL的编译次数

之前已经有分析报告显示OceanLotus组织来源于越南,因此研究人员分析数据集中的样本的工作时间。图8是恶意软件在GMT +7时间内的编译次数,发现了该组织的可能的工作时间。OceanLotus组织的大多数的样本编译时间为上午9点到下午6点之间。 

图8: 恶意软件在GMT +7时区内的编译次数 

研究人员发现所有样本的编译时间都是在工作日,即周一到周五。因此,说明OceanLotus组织在工作日工作,周末休息。图9是每周编译的样本。

 

图9: 恶意软件的编译量

结论

OceanLotus是一个活跃多年的APT组织,也是APAC区域比较复杂的攻击组织之一。本文分析了该组织近期活动中使用的新下载器KerrDown,这也说明该组织在整个攻击活动中持续构建和使用新的工具和技术。经过对样本的分析,研究人员发现该组织有固定的工作时间。主要目标是说越南语的受害者,这与OceanLotus的攻击范围和行业是符合的,该组织可能使用相同的工具来攻击其他的目标。

本文翻译自:https://unit42.paloaltonetworks.com/tracking-oceanlotus-new-downloader-kerrdown/如若转载,请注明原文地址: https://www.4hou.com/web/16106.html
点赞 4
  • 分享至
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

发表评论