Palo Alto Networks 披露复杂网络钓鱼攻击链 Cascading Shadows,企业数据安全岌岌可危

阅读量21078

发布时间 : 2025-04-18 11:24:46

x
译文声明

本文是翻译文章,文章原作者 Tushar Subhra Dutta,文章来源:cybersecuritynews

原文地址:https://cybersecuritynews.com/threat-actors-using-cascading-shadows-attack-chain/

译文仅供参考,具体内容表达以及含义原文为准。

2024 年 12 月,Palo Alto Networks 的 Unit 42研究人员发现了一场复杂的网络钓鱼活动,该活动利用了一条被称为 “Cascading Shadows” 的多层攻击链。

这场活动通过一系列精心设计的碎片化阶段,来传播诸如 Agent Tesla、RemcosRAT 和 XLoader  等恶意软件家族,其目的是绕过传统的安全工具,并使取证分析变得复杂。

攻击者使用了伪装成订单发布请求的欺骗性电子邮件,诱骗受害者打开恶意的.7z 压缩存档附件。一旦被激活,感染链会通过 JavaScript 编码(.jse)文件、PowerShell 脚本逐步推进,最终以.NET 或 AutoIt 编译的可执行文件将最终的有效载荷注入到合法的系统进程中。

此次攻击的模块化设计确保了任何一个阶段都不会暴露其完整的恶意意图。最初的网络钓鱼电子邮件通常用克罗地亚语撰写,冒充合法的商业通信,如付款确认或订单审核。

所附的.7z 存档中包含一个伪装成文档的.jse 文件(例如,doc00290320092.jse)。当该脚本被执行时,它会从诸如 files.catbox [.] moe 等域名下载一个 PowerShell 有效载荷,随后该有效载荷会检索一个.NET 或 AutoIt 释放器。

这种执行路径上的分叉是 Cascading Shadows 攻击链的一个显著特征 —— 通过允许攻击者动态切换有效载荷,提高了其抵御检测的能力。

Palo Alto Networks 的分析师指出,这场活动对进程空洞化技术的依赖使其有别于传统的恶意软件传播方法。

通过将解密后的 shellcode 注入到像 RegAsm.exe 或 RegSvcs.exe 这样受信任的进程中,恶意软件得以伪装成合法的 Microsoft 实用程序来运行。

这种技术,再加上早期阶段极少的混淆处理,使得攻击链能够在保持操作灵活性的同时,逃避沙箱分析。

尽管其十分复杂,但 Advanced WildFire 的内存扫描功能成功识别出了所有阶段,这凸显了行为检测在对抗分层威胁方面的重要性。

AutoIt 执行路径:一种逃避检测的手段

这场活动最具创新性的方面之一是其对 AutoIt 编译的可执行文件的使用,这在现代恶意软件传播中是一种不太常见的方法。

AutoIt 是一种用于自动化 Windows 图形用户界面(GUI)交互的脚本语言,在这里被重新利用来解密和执行 shellcode。

AutoIt 二进制文件中的脚本(例如,c93e37e35c4c7f767a5bdab8341d8c2351edb769a41b0c9c229c592dbfe14ff2)包含一个加密的有效载荷,它会动态解析 API(应用程序编程接口)调用来逃避静态分析。

该脚本会在将解密后的 shellcode 注入到 RegSvcs.exe 之前,先将其写入内存。

Func DecryptPayload()

Local $encrypted = “9A3F…DAC1”  ; Truncated AES-encrypted shellcode

Local $key = “B2E8…F7A9”

Local $decrypted = _AES_Decrypt($encrypted, $key)

Local $process = Run(“RegSvcs.exe”, “”, @SW_HIDE)

_InjectShellcode($process, $decrypted)

EndFunc

shellcode 采用了反射式加载技术,以便在内存中执行一个.NET 可执行文件,从而绕过基于磁盘的防病毒扫描。

在使用 IDA Pro 进行调试期间,研究人员追踪到了执行流程到 DLLCALLADDRESS 函数,该函数会解析诸如 VirtualAlloc 和 CreateRemoteThread 等关键的 API 地址。

这使得 shellcode 能够在目标进程中分配内存、写入解密后的.NET 有效载荷,并启动执行 —— 所有这些操作都不会在文件系统上留下任何痕迹。

void ShellcodeMain() {

HMODULE kernel32 = LoadLibraryA(“kernel32.dll”);

FARPROC virtAlloc = GetProcAddress(kernel32, “VirtualAlloc”);

LPVOID mem = virtAlloc(NULL, 0x1000, MEM_COMMIT, PAGE_EXECUTE_READWRITE);

// 解密并将Agent Tesla变种复制到内存中

memcpy(mem, decryptedPayload, payloadSize);

CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)mem, NULL, 0, NULL);

}

最终的有效载荷是 Agent Tesla 的一个变种,它会通过 FTP(文件传输协议),使用硬编码的凭据(例如,用户名:kel-bin@jeepcommerce [.] rs,密码:Jhrn) GcpiYQ7)将凭据泄露到像 ftp.jeepcommerce [.] rs 这样的服务器上。

通过将每个阶段分隔开来,并利用合法的工具,Cascading Shadows 攻击链体现了网络间谍活动中 “利用现有工具(living-off-the-land)” 策略日益增长的趋势。

Unit 42强调,尽管攻击链错综复杂,但诸如 Cortex XDR 的行为威胁防护等防御措施能够检测到进程注入异常。再结合 Advanced WildFire 的多阶段分析,各组织即便面对不断演变的复杂威胁,也能够对其进行缓解。

 

本文翻译自cybersecuritynews 原文链接。如若转载请注明出处。
分享到:微信
+10赞
收藏
安全客
分享到:微信

发表评论

Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全KER All Rights Reserved 京ICP备08010314号-66