freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

Patchwork更新武器库,首次利用Brute Ratel C4和PGoshell增强版发起攻击
2024-09-13 16:51:25

1 概述

近期,知道创宇404高级威胁情报团队捕获到Patchwork组织疑似针对不丹的攻击样本,该样本除加载已多次发现的go语言后门(以下称“PGoShell”)外,还大规模增强了功能。与此同时,样本首次使用了红队工具Brute RatelC4,即近期观察到的比较大的武器更新。该组织在最近2年的攻击活动中,于技术方面比其他同源组织投入的热情更多,并不断更新自身的武器库及加载方式。迄今为止,已发现该组织使用了超过10种不同的木马及加载方式。以下将对本次发现进行分析和描述。

2 组织背景

Patchwork (又称Dropping Elephant)是一个极为活跃的高级持续性威胁 (APT) 组织,自 2014 年以来一直在开展活动。Patchwork 主要针对东亚及南亚等亚洲地区的政府、国防和外交组织以及大学,科研机构。

3 攻击链

image

4 样本综述

此次捕获的样本为Lnk文件,其主要功能是下载诱饵文件和后续载荷。经过对载荷的分析后发现,此次攻击使用的武器包括PGoShell以及红队攻击框架Brute Ratel C4,详情如下:

4.1 lnk分析描述

lnk文件名为Large_Innovation_Project_for_Bhutan.pdf.lnk,当用户未开启文件后缀显示时,极易将其当作pdf文档打开,在lnk运行后,其中包含的脚本参数也得以运行:

image

lnk参数

参数包含的操作如下:

1.操作一:

访问并下载uri(hxxps://adaptation-funds.org/documents/Large_Innovation_Project_for_Bhutan.pdf)文件至本地 C:\Users\Public\Large_Innovation_Project_for_Bhutan.pdf,该文件为诱饵文档,下载完成后运行。

image

诱饵文档部分截图

诱饵文档内容为adaptation fund(适应基金董事会)关于不丹的项目提案,疑似针对不丹相关机构和个人。

2.操作二:

访问并下载uri(hxxps://beijingtv.org/wpytd52vDw/brtd2389aw)数据至本地C:\Users\Public\hal,并将其重命名为C:\Users\Public\edputil.dll,值得注意的是该域名疑似仿冒北京电视台

3.操作三:

访问并下载uri(hxxps://beijingtv.org/ogQas32xzsy6/fRgt9azswq1e)数据至本地C:\Users\Public\sam,并将其重命名为C:\Users\Public\Winver.exe。

4.操作四:

从系统目录复制resmon.exe到C:\Users\Public\resmon.exe,创建名为MicroUpdate的计划任务,该计划任务每分钟执行一次,执行目标为C:\Users\Public\resmon.exe。创建名为MicroUppdate的计划任务,该计划任务每分钟执行一次,执行目标为C:\Users\Public\Winver.exe,最终删除lnk文件。

4.2 Brute Ratel C4(edputil.dll)分析

4.2.1 Brute Ratel C4 loader分析描述

resmon.exe为系统文件,运行后会加载edputil.dll。基于windows默认加载原则,与resmon.exe同目录下的edputil.dll将被加载,edputil.dll使用themida加壳:

image

edputil.dll区段中的.themida段

最终resmon.exe加载EdpGetIsManaged导出函数:

image

edputil.dll导出表

EdpGetIsManaged导出的主要功能既是Brute Ratel C4 loader,攻击者首先会利用自定义的hash算法获取api地址:

image

通过hash获取api地址

为达到unhook和反调试的目的,攻击者将获取对应函数的系统调用号,然后获取“syscall”指令地址,以NtProtectVirtualMemory函数为例,其中调用号为“0x50”:

image

获取调用号及“syscall”地址

后续若需要调用NtProtectVirtualMemory,则只需要将调用号(0x50)传入eax,再调用“syscall”的地址即可完成函数的调用,利用此调用方式,传统的下断点将失效:

image

syscall调用代码片段

将shellcode写入申请的内存中,更改新分配的内存的保护,通过NtCreateThreadEx创建线程并执行:

image

Shellcode运行

Shellcode的主要功能是加载最终载荷 Brute Ratel C4,它首先会进行调试器检测,接着对PEB中的NtGlobalFlag值进行对比,若为0x70则结束运行:

image

调试器检测

获取后续需要使用的api地址:

image

获取api地址

接下来进行系统时间检测,若当前系统时间超过硬编码的时间戳(0x66c0666d),则结束运行:

image

运行时间检测

使用RC4算法解密出后续需要加载的文件名(chakra.dll),该文件主要作为 Brute Ratel C4的载体:

image

解密数据

chakra.dll被加载后,将去除“MZ”头的最终载荷Brute Ratel C4写入chakra.dll的地址空间,并模拟加载Brute Ratel C4:

image

去掉”MZ”的Brute Ratel C4

image

将数据写入chakra.dll内存空间
获取OEP并跳转执行,最终执行载荷既是Brute Ratel C4:

image

跳转OEP执行

4.2.2 Brute Ratel C4简述

Brute Ratel C4是一个红队框架,并被视为Cobalt Strike 的替代品。该框架能够实现诸如文件管理、端口扫描、文件上传下载、屏幕截图等功能,以下为本次该载荷的配置截图,各项配置间使用“|”进行分隔:

image

Brute Ratel C4配置截图

4.3 PGoShell(Winver.exe)分析

PGoShell由Go语言开发,总体来看其功能较丰富,包括远程shell、屏幕截图,载荷下载执行等,由于首次发现该武器时主要功能为远程shell故而得名。相关详细逆向分析内容如下:

初始化URI、RC4密钥,User-Agent,本次样本中RC4密钥内容为“0g8RXt137ODBeqPhTv2XYjgmnxUsijfc”。

image

初始化URI、RC4密钥

检测HKCU\Software\Microsoft\WinTemp是否存在,若存在则获取temp键对应的值;若不存在则生成随机字符串,并使用RC4+base64加密后写入,该值将作为ID被上传到服务端:

image

进入信息收集&交互模块后,PGoShell首先会尝试获取主机信息(主机名、用户名、当前主机对公IP、当前主机所处国家(IP及国家信息由查询ip-api.com获取)、当前系统版本、当前执行路径、进程PID、PROCESSOR_ARCHITECTURE信息),获取成功后将对应的数据进行拼接,各信息数据使用“||”进行分隔。

image

获取主机信息并拼接

PGoShell获取到的所有数据均使用RC4+base64进行编码(截图中main_AESENC为攻击者迷惑分析人员编写的函数名,其内在实际为RC4+base64):

image

RC4 Key及其解密数据

随后将拼接的数据发送到服务端,并从服务端获取数据,上线信息以及交互信息上传方式均采用POST方式。

PGoShell部分功能如下表:

功能号功能
c?d????????eshell
vypjtvwudmta文件下载
zdqxjjiueled下载执行
mldijkppffollpps下载执行
s?p????????t屏幕截图
ssaphdnu下载powershell bypass脚本并运行
tcvbwmdddqls检查文件是否存在,存在则上传
egdhdnipjhfn从指定url下载shellcode并注入
jhudjphsmunee利用WMI枚举设备信息
getmdjfhhkjhsdfdc获取域控信息
nemszyrsmuns下载Solo.zip到temp目录,解压后执行其中的powershell脚本
nfjdnteslbt下载shellcode并通过QueueUserAPC注入执行
ndhbnmesnefdmuSMB端口扫描
rdptidjkeephdnmakRDP端口扫描

5 总结

本次捕获的攻击活动主要以adaptation fund(适应基金董事会)关于不丹的项目提案作为诱饵,针对对象疑似为不丹相关机构和个人。在此次攻击活动中,首次发现Patchwork组织使用Brute Ratel C4作为武器。整个Brute Ratel C4加载运行过程为纯内存加载,能够有效对抗终端设备检测。在加载过程中,多次进行反调试和解除挂钩操作,并在执行周期上进行了限制。这表明该组织正在积极扩充其武器库。根据网络信息,Brute Ratel C4的作者来自于印度:

image

image

目前该工具的价格为US$3000,patchwork组织在购买该工具的时候或许可以获得一定折扣。

image

此外,我们注意到本次使用的PGoShell在功能上进行了极大的扩展,与以往发现的攻击样本相比更加先进。而PGoShell作为该组织自研的后门工具实施了大规模的功能更新,可见该武器对于patchwork组织的重要程度。我们有理由相信,PGoShell在以往的攻击活动中帮助Patchwork取得了显著成果,未来,该组织可能会更多地使用这一武器发起攻击。

6 IOC

C2:

Beijingtv[.]org

Cartmizer[.]info

longwang.b-cdn[.]net

7 参考链接

https://unit42.paloaltonetworks.com/brute-ratel-c4-tool/


作者:K&XWS@知道创宇404高级威胁情报团队
原文链接:https://paper.seebug.org/3199/

# 网络安全技术 # 威胁情报
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录