攻击的方法

两种方法将KerrDown下载器传递给目标。一个是使用带有恶意宏的Microsoft Office文档,另一个是包含带有DLL side-loading合法程序的RAR存档 。对于RAR存档文件,用于欺骗目标的文件名都是越南语

* DLL Side-Loading 程序可以指定在运行时加载的DLL
https://attack.mitre.org/techniques/T1073/

恶意文件

两个不同的base64 blob插入到单独的表中,并且字体大小已更改为1。

图 1:诱饵文件

一旦增加了字体大小,base64 blob就会在两个不同的表中可见。解码后,可以在每个表的开头看到PE DLL的MZ头

图 2:作为文本嵌入文档的Base64 编码的 pe dll 文件。

根据iCheck变量检查应解码哪个base64 blob,如果受害者系统在64位系统上运行则设置为true,而在32-位系统。如果发现系统是64位,则左侧的base64编码blob将被解码,否则右侧的base64编码blob将被解码。

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

重用了Motobit发布的VBS解码功能 。图4显示了宏代码中使用的base64函数与Motobit发布的VBS base64解码器函数之间的比较。

图 4 :Base64 解码器比较

* motobit Base64
https://www.motobit.com/tips/detpg_Base64/

JACC相似性分析一个RD指数

使用KerrDown样本的imphash值和随附的C2域在我们的数据集中找到多个其他样本。鉴于发现的样本数量很多,我们再次使用了使用Jaccard Index的相似性分析算法 提取所有样本之间的相似性。

使用networkx绘制Jaccard索引结果。

图 5 :使用JACC相似性分析一个RD指数

*Jaccard index :
https://en.wikipedia.org/wiki/Jaccard_index

KerrDown到Cobalt Strike Beacon

DLL将作为“main_background.png”放在目录位置“Users \ Administrator \ AppData \ Roaming”中。DLL从URL检索有效Payload,使用DES算法对其进行解密并在内存中执行。

恶意软件的目的是在内存中下载并执行Cobalt Strike Beacon有效负载。

RAR使用KerrDown存档

通过合法程序改变了从Office宏执行恶意代码到DLL端加载技术的方式。

有越南文件名'Don khieu nai.rar',翻译成英文“投诉信”。该存档包含一个合法的旧版Microsoft Word(Microsoft Word 2007)可执行文件,名为“Noi dung chi tiet don khieu nai gui cong ty.exe”,其翻译为“了解有关如何使用贵公司的更多信息”。攻击者使用DLL端加载技术加载旧版Microsoft Word的恶意DLL。在存档中打开可执行文件时,它会将恶意DLL加载到同一目录中。DLL执行多阶段shellcode,每个shellcode使用各种技术来隐藏下一阶段。整体安装步骤如下:

1.Microsoft Word exe将wwlib.dll加载到同一目录中并执行DLL的“FMain”功能。

2.DLL解码体内的base64编码shellcode并执行它。

3.shellcode解压缩用开源压缩代码UCL压缩的第二个shellcode 并执行它。

4.第二个shellcode用AES解密第三个shellcode。

5.第三个shellcode从以下远程位置检索shellcode并执行它:https:// cortanasyn [。] com / Avcv

6.第四个shellcode将嵌入的Cobalt Strike Beacon DLL加载到内存中并执行它。

图 6 :恶意下载程序的执行流程

查看数据集中所有KerrDown样本的编译时间戳,能够辨别出几个观察结果:

OceanLotus自2018年3月以来一直在其广告系列中使用新的下载程序,并继续在其广告系列中积极使用它。图7显示了KerrDown示例的时间轴:

图 7 :下载器DLL编译时间线

文章中的分析人员试图从数据集中的样本中找到可能的工作时间模式。根据GMT +7绘制了编译时间,发现了该APT组织可能是工作时间的清晰模式。OceanLotus的典型工作时间为上午9点至下午6点,大部分样本均在当天的这段时间内编制。图8显示了在数据集中找到的每个唯一样本的GMT +7恶意软件编译时间戳。

图 8 :GMT +7中的恶意软件编译时间

所有样本都是在工作日期间编制的 - 周一至周五。因此,很明显OceanLotus小组在工作日工作,并在周末休息。图9显示了本周编译的样本。

图 9 :工作日期间的恶意软件编译

结论

辨别出可能的工作时间模式,这表明该团体可能有正式的工作时间,并且在一个像越南或附近国家这样的地区开展业务。虽然观察到的大部分目标都是针对讲越南语的受害者。

来源

https://unit42.paloaltonetworks.com/tracking-oceanlotus-new-downloader-kerrdown/?from=groupmessage&isappinstalled=0

最新文章

  1. NOIP2015斗地主[DFS 贪心]
  2. C# GMap下提供一个高德地图
  3. springmvc使用freemarker
  4. visual studio生成后调试启动又提示部分项目需要生成问题总结
  5. 为什么需要SQL Profile
  6. Login failed知多少
  7. Java Swing的进化
  8. 【原】 Spark中Task的提交源码解读
  9. google map getLocation参考
  10. escape encodeURI encodeURIComponent区别
  11. 全面解析Bootstrap图片轮播效果
  12. mybatis sql循环的使用
  13. C 语言 计算
  14. 【算法】LeetCode算法题-Roman To Integer
  15. AngularJS学习之 登录表单 清爽验证(边学边更新)
  16. 线程同步之ManualResetEvent类的用法
  17. 【spring源码分析】spring AspectJ的Execution表达式
  18. day 31 html(二) 和css入门
  19. Java HashMap 遍历方式探讨
  20. Linux文件排序工具 sort 命令详解

热门文章

  1. 洛谷P4240 毒瘤之神的考验 【莫比乌斯反演 + 分块打表】
  2. myeclipse如何设置或关闭断点调试自动跳入debug模式
  3. Codeforce Div-2 985 C. Liebig's Barrels
  4. Docker跨主机网络解决方案
  5. python3简单实现微信爬虫
  6. SSD详解
  7. saltstack 基本操作
  8. nginx的location、root、alias指令用法和区别
  9. 函数和常用模块【day04】:高阶函数(七)
  10. JUnit报错 java.lang.Exception:No tests found matching