导言
不断演变的威胁正在增加复杂性,以隐藏其恶意性质并逃避安全解决方案。如今,威胁行为者提供多层次的恶意软件,这些恶意软件可以隐藏在雷达之下,直到部署的最后阶段才显示出任何恶意行为。
多层次恶意软件涉及多个阶段,采用混淆和加密技术,甚至是自适应策略,即恶意软件的行为和功能根据受害者的系统不断演变。要有效检测和应对这些威胁,就必须全面了解恶意软件的行为,而这需要大量的时间和资源。
为应对多层攻击OPSWAT MetaDefender 采用整体化方案,融合了独特的基于仿真技术的自适应威胁分析技术,以及先进的检测与威胁情报能力。
结合静态和动态分析打败复杂的恶意软件
MetaDefender 处于威胁检测的前沿,无缝融合静态与动态分析技术,足以抵御最复杂的攻击。
- 深度结构分析:初步静态文件评估,可为 50 多种受支持的文件类型提供早期检测功能,并提取嵌入式活动内容以作进一步分析。
- 动态内容分析:检查和分析电子邮件、网页和文档中的内容和上下文,以揭露隐藏的恶意活动,包括可疑的 URL。这是防范网络钓鱼攻击的一项特别有用的保护措施。
- 适应性威胁分析:基于仿真的动态分析,可保持对恶意软件执行流程的控制,即使恶意软件是针对特定环境设计的。它支持 Office 文件、便携式可执行文件和大多数常见脚本。

请注意,所有模块都是相互流动的,确保了分析和信息的无缝交流。
所有这些技术都发挥着至关重要的作用,可提供对不同层次攻击的无与伦比的洞察力,实时适应目标环境以准确评估现代恶意软件,并根据MetaDefender Cloud 、最新威胁情报 以及相关战术、技术和程序 (TTP) 生成一套可信的出错指标 (IOC)。
释放MetaDefender的力量Advanced Threat Detection
下面的用例说明了威胁检测引擎的多个模块如何协同工作,以高级恶意软件模拟器 Cobalt Strike (CS) 为目标,并提取极具价值的见解。
CS 是一种商用远程访问工具,设计用于执行有针对性的攻击,并模拟高级威胁行为者的后剥削行动。CS 的破解版本被威胁行为者广泛使用,使他们能够在不接触磁盘的情况下在受害者主机上部署内存代理(信标)。CS beacon 支持通过多个协议和丰富的功能进行通用和控制 (C2) 通信,包括权限升级、凭证转储、横向移动和数据外渗。
计算机安全威胁以多种形式传播,每种形式都给检测和分析带来独特的挑战。MetaDefender 能够适应这些新型传播方式,检测高度混淆和加密的恶意软件,从而深入理解其功能机制,并提取出高价值的指标(IOC)和技术、战术及程序(TTP)。
样本概览
分析的样本是一个使用 Pyinstaller 编译的便携式可执行文件(PE),它从恶意主机秘密下载 Cobalt Strike stager PE。然后,Stager PE 解密嵌入式 CS 信标并将其注入内存,启动与 C2 的通信。
第 1 层:Pyinstaller 编译的 PE
PyInstaller 将 Python 应用程序及其所有依赖项捆绑到一个软件包中,允许用户在不安装 Python 解释器或任何模块的情况下运行应用程序,这对恶意软件制作者来说很有吸引力。
对该文件进行静态分析只会产生大量无用噪声,而无法聚焦其恶意行为。MetaDefender 会解压并提取原始Python代码使用的编译字节码(pyc)文件及嵌入式组件,随后反编译pyc文件以获取原始Python代码,从而实现威胁指标检测与高价值IOC提取。
Pyinstaller需要特定的解包流程,即使是最常见的文件归档工具也无法支持。MetaDefender 现已内置Python解包功能,同时兼容其他主流Python编译器,例如Nuitka和Py2exe。
这项新功能可以帮助我们绕过第一层包装,继续对解压后的文件进行分析。

第 2 层:反编译 Python 代码并下载恶意人工制品进行分析
对 python 文件进行反编译后,我们发现该恶意软件会从恶意 URL 下载一个 PE 文件(CS stager)。然后,它运行 CS stager 并将其从磁盘中删除,以消除潜在的 IOC。此外,它还会弹出一条虚假的 Windows 消息,让用户误以为发生了错误。
MetaDefender Aether提取恶意URL并下载加载程序以进行进一步分析。


第 3 层:Cobalt Strike 配置解码
下载的PE文件(cs.exe)是一个分阶段执行器,它会解密第二个PE文件,该文件负责解密CS信标并将其注入内存。CS采用多种技术隐藏信标并增加其检测难度。MetaDefender 能够静态追踪其执行流程,直至定位CS信标并提取其配置信息。
CS stager 在其 .data 部分隐藏了一个 XOR 加密的 PE 文件。第二个 PE 文件对应的是一个 DLL 文件,可通过众所周知的 DLL 标头(MZARUH)识别,它是 CS beacon 的默认反射加载器存根的起点。这意味着初始 PE 将负责在内存中分配和复制反射式加载器 DLL,解析和解析导入函数地址,并执行 DLL 的入口点。最后,反射加载器将在内存中解密并运行 CS beacon。


CS 信标配置以单字节 XOR 加密方式存储在反射加载器 DLL 中。请注意,CS 配置总是以字节模式 "00 01 00 01 00 02 "开头,这有助于我们轻松识别它,即使是通过暴力 XOR 加密。

结论
这项针对CS的技术分析凸显了当前网络威胁的复杂性和深度,同时MetaDefender 强大的高级威胁引擎如何以惊人速度高效分析多层攻击。
Python 解包和反编译功能可以进行更深入的分析,这对揭示恶意程序的真实本质至关重要。我们已经看到解包是如何触发额外操作,从而检测和提取 CS 配置的。
提取恶意软件配置总能揭示有价值的 IOC,并实现准确的恶意软件识别。我们专门的恶意软件分析师团队不断扩大支持的恶意软件系列范围,确保全面覆盖,并能迅速检测到新出现的威胁。
妥协指标(IOCs)
Pyinstaller 编译的 PE
Sha256:d5a5a87cbc499d39797bcba85232fd1eede2fd81f4d5a1147454324968185926
钴击剑台
Sha256:d8674a668cb51fe0d8dc89740c03e95d1f659fb6cb66ec8c896e3b1af748662f
恶意 URL
hxxp[://]43[.]143[.]130[.]124:8000/cs[.]exe
Cobalt Strike C2 IP 地址
43[.]143[.]130[.]124
