ICEDID 是一个恶意软件家族,最早由 IBM X-force 研究人员于 2017 年 描述,它与窃取登录凭据、银行信息和其他个人信息有关。ICEDID 一直是一个普遍存在的家族,但自从 2021 年初 EMOTET 暂时 中断 以来,它获得了更大的发展。ICEDID 与其他不同的恶意软件家族的传播有关,包括 DarkVNC 和 COBALT STRIKE。包括这篇研究报告在内的定期行业报告有助于减轻这种威胁。
Elastic 安全实验室分析了最近的一个 ICEDID 变体,它包含一个加载器和一个僵尸程序有效负载。通过向社区提供端到端的这项研究,我们希望提高对 ICEDID 执行链的认识,突出其功能,并提供有关其设计方式的见解。
执行链
ICEDID 在通过计划任务建立持久性之前会经过多个阶段,并可能动态地从 C2 检索组件。下图说明了 ICEDID 执行链的主要阶段。
研究论文概述
Elastic 安全实验室在一篇详细的研究 论文(托管在 Elastic 安全实验室)中描述了最近一个 ICEDID 样本的完整执行链。此外,我们还提供了对该恶意软件样本及其功能的全面分析,包括:- 虚拟化检测和反分析 - C2 轮询操作 - shellcode 执行方法 - 凭据访问机制 - Websocket 连接 - 安装 Web 浏览器代理以捕获所有用户流量 - 反向 shell 和 VNC 服务器安装 - 证书固定 - 数据验证 - ICEDID 可观察的 TTP - Elastic 提供的有用资源链接
检测和预防
检测逻辑
- 管理员帐户枚举
- 通过 RunDLL32 启动的命令 shell 活动
- 使用 WMIC 进行安全软件发现
- 来自已挂载设备的可疑执行
- Windows 网络枚举
- Rundll32 或 Regsvr32 加载的可疑 DLL 扩展名
- 可疑的 Windows 脚本解释器子进程
- 带有异常参数的 RunDLL32
预防措施(来源:https://github.com/elastic/protections-artifacts/)
- 恶意行为检测警报:命令 shell 活动
- 内存威胁检测警报:shellcode 注入
- 恶意行为检测警报:Rundll32 或 Regsvr32 加载的可疑 DLL 扩展名
- 恶意行为检测警报:可疑的 Windows 脚本解释器子进程
- 恶意行为检测警报:带有异常参数的 RunDLL32
- 恶意行为检测警报:来自归档文件的 Windows 脚本执行
YARA
Elastic Security 创建了多个与 ICEDID 感染中不同阶段/组件相关的 YARA 规则,这些规则可以在下面链接的签名中找到:- Windows.Trojan.ICEDID
Elastic 安全实验室是一个由敬业的研究人员和安全工程师组成的团队,致力于通过发布详细的检测逻辑、保护措施和应用威胁研究来破坏对手。
关注我们的 @elasticseclabs 或访问我们的研究门户网站,了解更多资源和研究。