揭秘APT团体常用的秘密武器——AsyncRAT

AsyncRAT 是 2019 年 1 月在 [GitHub](https://github.com/NYAN-x-CAT/AsyncRAT-C-
Sharp)上开源的远控木马,旨在通过远程加密链接控制失陷主机,提供如下典型功能:

截取屏幕

键盘记录

上传/下载/执行文件

持久化

禁用 Windows Defender

关机/重启

DOS 攻击

GitHub 上提供了免责声明,但 AsyncRAT 仍然被许多攻击者,甚至是 APT 组织所广泛使用。Netskope
的研究人员最近发现了一个零检出的恶意脚本,该脚本通过 Amazon S3 存储桶下载 AsyncRAT 恶意软件。在分析时,VirusTotal
上的所有检测引擎都没有检出。

image.png-93.4kB攻击链

阶段 01 - 零检出 Downloader

起始的批处理脚本,就是 VirusTotal 零检出的文件。

image.png-65.5kB零检出
Downloader

尽管没有检测引擎检出,但该样本仍然能够被沙盒动态分析中的 Sigma 和 IDS 规则进行检出。

image.png-276.1kBSigma
规则检测恶意行为

检测引擎未能静态检出可能是由于攻击者在文件中增加了超过一百个长字符串进行干扰。

image.png-427.2kB注释字符串

字符串都是相同的日文文本,翻译过来都是无用的废话。

image.png-125.7kB文本翻译

恶意的命令反而非常简单,夹杂在无意义的长字符串间。经过了混淆也可能是导致没有检出的原因之一。

image.png-220.1kB恶意命令

恶意命令通过 PowerShell 从 Amazon S3 存储桶下载并执行后续阶段攻击。

阶段 02 - PowerShell

从 Amazon S3 存储桶下载的文件是一个 PowerShell 脚本。它首先在 C:\ProgramData中创建一个名为 Not的文件夹。

image.png-18.2kB创建目录

随后在目录中创建五个文件,链式执行另一个 PowerShell 脚本。

image.png-114.9kB链式执行

最后一个 PowerShell 脚本中包含两个 PE 文件:

image.png-115.3kBPowerShell
脚本

第一个文件名为 RunPE,第二个文件用于将 AsyncRAT 注入到的合法进程中。

image.png-78.6kB运行命令

PowerShell 脚本将 RunPE 直接加载到内存中,因此所有 PE 文件都不会落地。

阶段 03 - RunPE

该文件负责使用 Process Hollowing 技术将 AsyncRAT 注入另一个进程,攻击者使用 .NET 开发该恶意软件并使用 Confuser
进行加壳。

image.png-74.9kBRunPE
文件信息

后续由 PowerShell 脚本将 RunPE 加载到内存中,调用 Execute方法。该方法接收可执行文件路径
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler.exe与参数中的
AsyncRAT 数据。

image.png-134.8kB执行函数

去除混淆后,可以明确看出 AsyncRAT 是通过 Process Hollowing 注入的。

image.png-85.3kB函数调用

阶段 04 - AsyncRAT

AsyncRAT 样本在 2022 年 7 月 22 日编译。

image.png-81.5kBAsyncRAT
样本

样本没有经过混淆,可以直接进行反编译。

image.png-39.2kB反编译
AsyncRAT 样本

AsyncRAT 样本的主要执行流程如下所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Na9wvjd3-1690462041362)(https://image.3001.net/images/20220911/1662825819_631cb55bc207361da612b.png!small)]多个方法

AsyncRAT 的配置在 InitializeSettings函数中被解密。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4FKJhWaj-1690462041363)(https://image.3001.net/images/20220911/1662825820_631cb55cb113821d3ebc0.png!small)]解密的配置参数

AsyncRAT 在 CBC 模式下使用 AES-256 算法来解密字符串:

image.png-181.6kB使用
AES 解密

该函数读取 base64 编码的字符串,前 32 个字节代表 HMAC,后面 16 个字节是解密向量 IV,其余字节是加密数据。

image.png-94kB加密数据

研究人员提供了解密 AsyncRAT 的 Python
脚本

image.png-396.3kB配置解密

该样本并未启用反分析功能,但也使用了反虚拟化的技术,检查了硬盘大小、操作系统制造商和型号等。

image.png-50.6kBAsyncRAT
反分析

样本还通过注册表与计划任务来实现持久化。

image.png-96.3kB持久化机制

AsyncRAT 将 C&C 地址和端口存储在其配置中,还提供了从 Pastebin 下载获取配置的选项。

image.png-88.3kB
Pastebin 下载获取配置

AsyncRAT 与 C&C 服务器进行加密通信,通过界面控制设备。

image.png-165.1kBAsyncRAT
控制面板

结论

本文介绍了 AsyncRAT 完整攻击流程的一个示例,攻击者甚至动用了完全未检测的脚本。由于 AsyncRAT
开源,攻击者都可以根据自己的需要进行功能修改。

IOC

6d49c55e6231ae7af3b09287df08f440> 96e6e83b2a8e85153bcf6756403ae3e0> 228c44b9cc0e8c86c51fddaf3294bcf8> 370a1f36b649d6a041afca88c6ac0e55> 9c7994acb861283eab4675bb06ba4159> bed7fd2f5fc7183c0a509fc8f9d48ec9> 192a7c188e6ede340bdb4d518a4ed036> 2cb-586884e131b1c0ba96396ea4e70f6> fbf876a3676d0b6959639bc5c603d8e4> hxxps://buckotx.s3.amazonaws[.]com/x.png> bashamed[.]org:6666

参考来源

[Netskope](https://www.netskope.com/blog/asyncrat-using-fully-undetected-
downloader)

这时候你当然需要一份系统性的学习路线

如图片过大被平台压缩导致看不清的话,可以在文末下载(无偿的),大家也可以一起学习交流一下。

一些我收集的网络安全自学入门书籍

一些我白嫖到的不错的视频教程:

上述资料【扫下方二维码】就可以领取了,无偿分享

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值