新型信息窃取恶意软件:吉娃娃窃密者的技术剖析

本文详细分析了基于.NET开发的吉娃娃窃密者恶意软件,涵盖其多阶段攻击链、持久化机制、数据窃取技术。该恶意软件通过混淆PowerShell脚本传播,使用计划任务维持驻留,窃取浏览器数据和加密货币钱包信息,并采用AES-GCM加密和CNG API进行数据外传,具有较高的隐蔽性和反检测能力。

吉娃娃窃密者:新型信息窃取恶意软件分析

感染链条分析

Reddit样本发现

我们的同事在4月9日发现了一个有趣的Reddit帖子,用户分享了一个通过Google Drive文档诱骗他们执行的PowerShell脚本。

PowerShell脚本行为

基于PowerShell的加载器启动了一个多阶段执行链,使用Base64编码、十六进制字符串混淆和计划任务来建立持久性。它会从备用C2域检索额外载荷,显示出模块化和注重隐蔽的设计。

初始阶段是一个简短的启动器,通过PowerShell的iex执行Base64编码的字符串,绕过执行策略检查并静默运行。

计划任务设置和基于标记的载荷执行

反混淆后的脚本创建一个名为"f90g30g82"的计划任务,每分钟运行一次,持续调用逻辑块。它检查用户的Recent文件夹中是否存在".normaldaki"扩展名的文件,作为感染标记。

备用载荷检索和内存执行

最终阶段设置计划任务的触发器,并从多个域名检索.NET程序集,随后通过反射将解码后的吉娃娃窃密者载荷直接加载到内存中执行。

吉娃娃窃密者技术细节

初始执行

窃密者以DedMaxim()函数开始执行,向控制台打印音译的俄语说唱歌词,这些字符串可能具有文化或个人签名意义。

浏览器和钱包目标定位

PopilLina()函数设置内部操作,通过WMI查询计算机名和磁盘序列号,生成唯一标识符。Sosalnya.Metodichka()函数检查系统中存在的浏览器数据目录,Armyanec01()函数窃取登录数据、cookies、自动填充信息等敏感数据。

数据暂存和压缩

PawPawers()函数将窃取的数据写入明文文件Brutan.txt,然后将整个文件夹压缩为".chihuahua"扩展名的zip存档。

加密技术

恶意软件使用Windows密码学API:下一代(CNG)函数通过AES-GCM算法对存档进行加密。虽然提供了认证加密,但对称密钥嵌入在二进制文件中,可通过分析恢复。

数据外传

VseLegalno()函数创建WebClient实例,模拟二进制文件上传,将加密的".VZ"文件外传到C2服务器。

清理操作

完成任务后,窃密者使用标准文件和目录删除命令清除所有活动痕迹。

检测建议

  • 监控频繁执行的计划PowerShell任务
  • 检测Recent或Temp目录中的异常文件扩展名
  • 在PowerShell日志中检测Base64解码与.NET反射结合使用
  • 标记通过Windows CNG API使用AES-GCM的情况

MITRE ATT&CK映射

  • T1059.001 PowerShell
  • T1047 WMI
  • T1555.003 浏览器凭据窃取
  • T1041 C2通道外传

威胁指标(IOC)

  • C2域名:flowers[.]hold-me-finger[.]xyz、cat-watches-site[.]xyz等
  • PowerShell脚本SHA256:afa819c9427731d716d4516f2943555f24ef13207f75134986ae0b67a0471b84
  • 载荷SHA256:c9bc4fdc899e4d82da9dd1f7a08b57ac62fc104f93f2597615b626725e12cae8
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计