海莲花组织以社保话题为诱饵进行 APT 攻击

admin 2024年7月12日10:34:14评论30 views字数 2877阅读9分35秒阅读模式
作者:知道创宇404高级威胁情报团队
时间:2024年7月9日

01

概述

近期,知道创宇404 高级威胁情报团队发现海莲花组织针对的攻击样本,该样本以社保、公积金调整等字眼吸引受害者点击,同时我们发现该样本与2023年发现的海莲花 APT 组织模仿 APT29 攻击活动分析非常一致。

02

组织背景

海莲花(OceanLotus),又称 APT32,是一个高级持续性威胁(APT)组织,该组织自2012年起活跃,主要针对东亚及东南亚地区的政府机构、企业、媒体和活动家等。该组织攻击手法多样,拥有大量自研武器,常在攻击活动不同阶段结合开源工具达成攻击目的。

03

样本链

样本链如下图所示:

海莲花组织以社保话题为诱饵进行 APT 攻击

04

样本综述

本次发现的样本名为《关于社保、职业年金、公积金缴存基数调整和补扣的通知.docx》(以下简称诱饵文件),诱饵文件内置了四部分内容,分别是lnk参数、hta脚本、dropper程序、诱饵文档,四部分内容相互配合完成既定功能目标。

海莲花组织以社保话题为诱饵进行 APT 攻击

LNK文件属性

整体指令流程为lnk参数执行hta文件,hta文件执行dropper程序&诱饵文档,dropper解密加载shellcode并执行最终Cobalt_Strike RAT程序,各部分功能细节描述如下:

  • LNK文件

 LNK文件为原始载荷用于整体释放链的启动工作,通过ShellExec执行CMD指令,LNK文件中的CMD指令功能:

1:确保360安全卫士相关文件不存在
2:将自身拷贝到NTUSER.DAT{23e7c2f3-52ef-4b7b-b203-3bfaa90a833d}.TM.alf并通过mshta.exe启动,拷贝逻辑分为两种,根据是否存在原始文件名称的LNK文件区分不同执行逻辑,若是原始文件名称的LNK文件存在则直接拷贝若是原始文件名称的LNK文件不存在则遍历%USERPROFILE%路径下查找原始文件名称的LNK文件,找到之后将文件拷贝到NTUSER.DAT{23e7c2f3-52ef-4b7b-b203-3bfaa90a833d}.TM.alf并通过mshta.exe启动。该部分的区分代码可用于以下功能的检测:
  1. 文件名称是否被更改
  2. 可能原始落地文件在%USERPROFILE%路径下

海莲花组织以社保话题为诱饵进行 APT 攻击

LNK文件参数

 

 

  • NTUSER.DAT{23e7c2f3-52ef-4b7b-b203-3bfaa90a833d}.TM.alf

  •  

该文件存放于LNK文件尾部通过mshta.exe程序启动,根据行为猜测mshta.exe启动HTA的方式为通过定位标记点进行启动,故不需要提取HTA文件从而启动HTA文件。

HTA文件存在四部分功能分别为定位并保存dropper程序、定位并保存诱饵文档、运行诱饵文档、修复droper程序,各功能模块描述如下:

  1. 定位并保存dropper程序

首先加载自身(NTUSER.DAT{23e7c2f3-52ef-4b7b-b203-3bfaa90a833d}.TM.alf)并将文件游标设置为offset:11742读取249374大小数据,保存读取的数据至%appdata%LenovodevicecenterextendsmodulesshowdeskLenovoDesk.exe,接着读取1032190大小数据保存至%appdata%LenovodevicecenterextendsmodulesshowdeskQuickDeskBand.dll:

海莲花组织以社保话题为诱饵进行 APT 攻击

设置游标并读取dropper内容&文档内容

 

 

海莲花组织以社保话题为诱饵进行 APT 攻击

dropper程序起始地址

2.定位并保存诱饵文档

保存dropper后续数据至本地%temp%关于社保、职业年金、公积金缴存基数调整和补扣的通知.docx,启动该文件。

海莲花组织以社保话题为诱饵进行 APT 攻击

诱饵文件偏移

 

 

3.修复dropper程序

海莲花组织以社保话题为诱饵进行 APT 攻击

修复dropper程序

 

  • 诱饵文档

诱饵文档部分内容如下:

海莲花组织以社保话题为诱饵进行 APT 攻击

  • dropper&COBALT_STRIKE RAT

先前保存的dropper程序用于解密并启动Cobalt_Strike,dropper程序的启动在lnk的参数部分实现:

海莲花组织以社保话题为诱饵进行 APT 攻击

启动白文件

 

白文件(LenovoDesk.exe)运行后加载QuickDeskBand.dllShowBatteryGauge函数:

海莲花组织以社保话题为诱饵进行 APT 攻击

加载黑文件

 

黑文件的加载后在dllmain中运行解密出后续的载荷,而ShowBatteryGauge导出的主要功能时将LenovoDesk.exe写入注册表run启动项中:

海莲花组织以社保话题为诱饵进行 APT 攻击

设置run启动项

 

QuickDeskBand.dll加载后则必然会进入dllMain中运行,dllMain中首先获取主程序路径,并将后15位字符作为key解密数据:

海莲花组织以社保话题为诱饵进行 APT 攻击

使用文件名作为key解密数据

 

解密后的数据为IP点分十进制数据,通过RtlIpv4StringToAddressA将点分十进制IP地址转化为HEX地址形式数据,HEX地址形式的数据为COBALT_STRIKE数据,之后通过设置枚举字体的回调立即启动Cobalt_Strike.

海莲花组织以社保话题为诱饵进行 APT 攻击

解码CS数据

 

Cobalt_Strike是一款付费渗透测试产品,允许攻击者在受害机器上部署名为“Beacon”的代理。Beacon 为攻击者提供了丰富的功能,包括但不限于命令执行、按键记录、文件传输、SOCKS 代理、特权升级、mimikatz、端口扫描和横向移动。Beacon 是内存中/无文件的,因为它由无阶段或多阶段的 shellcode 组成,一旦通过利用漏洞或执行 shellcode 加载程序加载,就会反射性地将自身加载到进程的内存中,而不会触及磁盘。

支持通过 HTTP、HTTPS、DNS、SMB 命名管道以及正向和反向TCP进行C2和分段;信标可以菊花链式连接。Cobalt Strike带有一个用于开发shellcode加载器的工具包,称为 Artifact Kit。

由于该平台强大的功能及兼容性许多APT组织也将CS列入自己的武器库中.在以往的APT32攻击活动中我们也经常发现其使用CS作为RAT程序.

两个LNK文件最终的CS Beacon相同相关关键配置信息如下:

海莲花组织以社保话题为诱饵进行 APT 攻击

CS Beacon 配置信息

 

从Metadata元数据中可发现其HTTP Header围绕dhgate相关进行伪造

Host: www.dhgate.com

Host: shoppingcart.dhgate.com

05

总结

从上述样本分析,我们可以发现本次捕获样本与2023年该组织利用BMW话题为诱饵发起的攻击活动在多方面是一致的:

首先,lnk参数格式非常一致

海莲花组织以社保话题为诱饵进行 APT 攻击

样本参数解析对比

 

其次,Cobalt Strike的配置文件比较一致,除url外,伪装的host也相同。

海莲花组织以社保话题为诱饵进行 APT 攻击

配置文件对比

综上,我们认为本次捕获的样本与2023年海莲花组织利用BMW诱饵的攻击样本应当属于同一组织。

06

IOC

Hash:

  • f04971c65d68319fbe1285b4a83afed6 QuickDeskBand.dll

  • 2d6b3b3e13600721fc9f398cd7df05ca 诱饵文档

07

参考链接

[1] 海莲花 APT 组织模仿 APT29 攻击活动分析

原文始发于微信公众号(知道创宇):威胁情报 | 海莲花组织以社保话题为诱饵进行 APT 攻击

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年7月12日10:34:14
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   海莲花组织以社保话题为诱饵进行 APT 攻击https://cn-sec.com/archives/2936076.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息