2023 年和 2024 年,医疗保健都是最受关注的关键基础设施领域。虽然其中许多攻击涉及勒索软件,影响数据可用性并可能扰乱患者护理,但对医疗保健组织的其他威胁则直接利用医疗应用程序。
在对新型恶意软件的威胁搜寻中,我们发现了一组伪装成飞利浦 DICOM 查看器的 29 个恶意软件样本。这些样本部署了ValleyRAT,这是一种后门远程访问工具 (RAT),中国威胁行为者 Silver Fox 使用它来控制受害者的计算机。除了后门之外,受害者还感染了键盘记录器和加密挖掘器,这种行为此前从未与该威胁行为者有关。
下面,我们将对这一新的 Silver Fox 活动进行详细分析,并概述降低风险的缓解策略。
已识别的恶意软件集群
我们发现的恶意软件集群包含 的木马版本,这是飞利浦 DICOM 查看器MediaViewerLauncher.exe的主要可执行文件。所有已识别的样本均于 2024 年 12 月至 2025 年 1 月期间从美国或加拿大提交给 VirusTotal。
从最初的 29 个样本中,我们发现了大量伪装成其他类型软件的实例。这些样本(收集于 2024 年 7 月至 2025 年 1 月之间)表现出共同的特征,例如 PowerShell 防御规避技术、独特的进程执行模式和共享文件系统工件。
值得注意的是,这些样本表现出了进化行为,表明恶意软件正在不断发展:
-
2024 年 7 月:12 个样本展示了基本的防御规避,使用了单个 PowerShell 排除命令、简单的进程链和最少的系统实用程序使用。
-
2024 年 8 月:13 个样本引入了多个 PowerShell 排除命令、更复杂的进程链以及系统实用程序的扩展使用。
-
2024 年 10 月 - 2024 年 12 月:3 个样本显示出进一步的进步,包括额外的排除路径和新的文件系统操作。
-
2025 年 1 月:2 个样本展示了多层 PowerShell 命令,反映了先进的规避技术。
最新的恶意软件样本伪装成合法软件,包括MediaViewerLauncher.exeDICOM Viewer 和emedhtml.exeEmEditor。此外,一些样本还伪装成系统驱动程序和实用程序,例如x64DrvFx.exe。
银狐 ATP 历史
Silver Fox,又名Void Arachne和The Great Thief of Valley,是一个 APT 组织,历史上主要针对讲中文的受害者,自 2024 年以来一直非常活跃。在过去的一年里,该组织展示了不断发展的战术、技术和程序 (TTP),将重点转移到更广泛的目标上:
-
2024 年6 月: Silver Fox 首次被发现针对中国受害者,其恶意软件下载了木马 Winos 4.0(也称为 ValleyRAT)。该活动利用 SEO 中毒、社交媒体和消息平台来传播伪装成 AI 应用程序或 VPN 软件的恶意软件。
-
2024 年6 月:当月晚些时候,据观察该组织部署了ValleyRAT 的修改版本,其中包含 DLL 侧加载、进程注入以及用于下载和命令与控制 (C2) 的 HTTP 文件服务器 (HFS)。
-
2024 年 7 月:一项新分析表明,Silver Fox 可能是一个伪装成网络犯罪分子的 APT,因为其目标转移到政府机构和网络安全公司。
-
2024 年 8 月:进一步的行动针对电子商务、金融、销售和管理企业。
-
2024 年 9 月:发现该组织使用 TrueSight 驱动程序禁用防病毒软件。
-
2024 年 11 月: Silver Fox改变了其 Winos/ValleyRAT 分发方法,利用游戏应用程序作为新的交付机制。
-
2025 年 1 月:PNGPlug 加载器首次被确定为该组织的 TTP 的一部分。
-
2025 年 2 月:发现一项针对金融、会计和销售专业人士的新活动,旨在窃取敏感数据。
我们发现的新恶意软件集群包括模仿医疗保健应用程序的文件名、英语可执行文件以及来自美国和加拿大的文件提交,这表明该组织可能正在将其目标扩大到新的地区和行业。此外,该组织使用加密挖矿机(详见下文)表明其在活动中引入了新的 TTP。
恶意软件行为概述:从 DICOM Viewer 到 ValleyRAT
此群集中的样本(包括MediaViewerLauncher.exe)充当第一阶段有效负载,可通过多种媒介进行传播。虽然我们无法确认确切的传播方法,但 Silver Fox 曾使用 SEO 投毒和网络钓鱼来传播其恶意软件。
下图说明了该恶意软件的执行流程,从初始感染阶段到最终有效载荷的部署。下一节将详细分析其行为。
第一阶段恶意软件在执行其他有效载荷之前执行两个关键的准备功能:
-
信标和侦察:它运行本机 Windows 实用程序,例如ping.exe、find.exe和cmd.exe,ipconfig.exe以检查系统是否可以到达 C2 服务器。
通过 PowerShell 排除来逃避安全检查:
-
2024 年 8 月:引入 PowerShell 命令以从 Windows Defender 扫描中排除某些路径,为系统进一步的恶意软件阶段做好准备。
Add-MpPreference -ExclusionPath 'C:ProgramData','C:UsersPublic' -Force
-
2024 年 12 月 - 2025 年 1 月:将排除范围扩大到其他系统目录,提高隐身性:
Add-MpPreference -ExclusionPath 'C:','C:ProgramData','C:Users','C:Program Files (x86)' -Force
执行完这些准备步骤后,第一阶段会联系阿里云存储桶,下载几个伪装成图像文件的加密有效载荷。这些有效载荷在本报告末尾详细介绍,包括:
-
TrueSightKiller
-
Cyren AV DLL 和可执行文件
-
其他辅助文件和shellcode
下载后,恶意软件会解密有效负载并生成恶意可执行文件(第二阶段恶意软件),该可执行文件注册为 Windows 计划任务。此任务会立即执行,并配置为每次用户登录时运行,确保在受感染系统上持久存在。
第二阶段恶意软件会加载 Cyren AV DLL,其中包含旨在逃避调试的注入代码。然后它会枚举系统进程以识别各种安全软件(详见本报告末尾),并使用 TrueSightKiller 终止它们。
一旦安全防御被禁用,第二阶段就会下载一个加密文件,将其解密为第三阶段的有效载荷,即 ValleyRAT 后门和加载器模块,该模块与托管在阿里云上的 C2 服务器进行通信。然后,ValleyRAT 会检索其他加密的有效载荷,这些载荷一旦解密,就会充当键盘记录器和加密矿工。所有三个最终有效载荷(后门、键盘记录器和加密矿工)都通过计划任务在受害者身上实现持久性。
在进行分析时,阿里云存储桶仍然可以访问,但 C2 服务器已经处于离线状态。
该恶意软件的每个阶段都采用了加密、混淆和规避技术来抵抗检测和分析。这些包括:
混淆方法:
-
API 散列来隐藏函数调用。
-
间接 API 检索以避免静态分析。
-
间接控制流操纵以阻碍调试和逆向工程。
逃避技巧:
-
较长的睡眠间隔可延迟执行并逃避沙盒检测。
-
系统指纹识别可根据目标环境定制执行。
-
屏蔽 DLL 加载以避免安全监控。
-
基于RPC的任务调度和驱动程序加载以绕过标准进程监控。
此外,该恶意软件还会向删除和加载的文件中添加随机字节,这使得检测和基于文件哈希的搜索变得更具挑战性。
详细的恶意软件分析
以下分析针对单个恶意软件样本进行,因此此处提供的文件名和哈希值特定于该样本。虽然集群中的其他样本使用不同的文件名,但它们的整体行为保持一致。
第一阶段恶意软件从位于 的阿里云存储桶下载名为 的初始加密文件。该文件包含托管在同一云存储桶中的另外六个文件的 URL,在分析的样本中,这些文件的名称分别为 、 、 、i.dat和vien3h[.]oss-cn-beijing[.]aliyuncs[.]com。i.dat这些a.gif文件b.gif被c.gif下载、解密并以新文件名保存在文件系统中。在分析的样本中,解密后的文件名为、、和。该 文件未解密为单独的文件,而是直接在内存中作为 shellcode 进行处理。d.gifs.dats.jpeginstall.exevselog.dllWordPadFilter.dbMsMpList.dat189atohci.syss.jpeg
Shellcode 首先扫描进程内存以查找kernel32.dll:GetProcAddress(hash: 0x1ab9b854)。然后它使用检索以下关键GetProcAddress函数的地址:LoadLibraryA、VirtualAlloc和。接下来,恶意软件加载并从中检索和的地址。这些函数随后用于内存操作和有效载荷解包。然后,Shellcode 调用分配内存并解包恶意 DLL,该 DLL 稍后将用于基于 RPC 的恶意二进制文件任务调度。VirtualFreelstrcmpiAntdllRtlZeroMemoryRtlMoveMemoryVirtualAlloc
然后,shellcode 加载RPCRT4.dll并检索与 RPC 相关的函数RpcBindingFromStringBindingW、RpcStringFreeW、和 的引用。此外,它还加载并检索和 的引用。恶意软件利用持久性 DLL 中的函数,该函数利用命名管道创建 形式的字符串绑定。然后,它创建 RPC 绑定并执行以下 XML 任务描述:RpcBindingComposeWNdrClientCall3RpcBindingSetAuthInfoExAKERNEL32.dllHeapAllocHeapFree\pipeatsvcncacn_np:[\pipe\\atsvc]NdrClinetCall3
<?xml version="10" encoding="UTF-16"?><Taskversion="12"xmlns="http://schemasmicrosoft.com/windows/2004/02/mit/task"><RegistrationInfo><Description></Description></RegistrationInfo><Triggers><LogonTrigger><Enabled>true</Enabled></LogonTrigger><RegistrationTrigger><Enabled>true</Enabled></RegistrationTrigger><TimeTrigger><Repetition><Interval>PT1M</Interval><StopAtDurationEnd>false</StopAtDurationEnd></Repetition><StartBoundary>2011-04-23T00:00:00</StartBoundary><Enabled>true</Enabled></TimeTrigger></Triggers><Principals><Principalid="Author"><GroupId>S-1-5-32-545</GroupId><RunLevel>HighestAvailable</RunLevel></Principal></Principals><Settings><MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy><DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries><StopIfGoingOnBatteries>true</StopIfGoingOnBatteries><AllowHardTerminate>false</AllowHardTerminate><StartWhenAvailable>true</StartWhenAvailable><RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable><IdleSettings><StopOnIdleEnd>true</StopOnIdleEnd><RestartOnIdle>false</RestartOnIdle></IdleSettings><AllowStartOnDemand>true</AllowStartOnDemand><Enabled>true</Enabled><Hidden>true</Hidden><RunOnlyIfIdle>false</RunOnlyIfIdle><WakeToRun>false</WakeToRun><ExecutionTimeLimit>PT0S</ExecutionTimeLimit><Priority>4</Priority></Settings><ActionsContext="Author"><Exec><Command>C:UsersREDACTEDDocumentsTO7RUF.exe</Command><WorkingDirectory>C:UsersREDACTEDDocuments</WorkingDirectory><Arguments></Arguments></Exec></Actions>undefined</Task>
这会安排一个 Windows 任务来执行TO7RUF.exe,该任务对应于 Cyren AV 可执行文件(vseamps.exe或install.exe)。此任务配置为在安排后立即运行,然后每次当前用户登录时运行,以确保持久性。安排任务后,第一阶段恶意软件会清理所有动态分配的内存并退出,从而有效地将执行过渡到第二阶段。
第二阶段恶意软件首先加载vselog.dll并跳转到其DLLMain函数,以检查是否存在调试器并逃避分析。它还会检查是否存在MsMpList.dat,这是用于进一步执行逻辑的关键指标。
分析第二阶段有效载荷需要设置断点RtlUserThreadStart并监视传递RCX给该函数的参数。一旦执行,恶意软件就会加载并解密WordPadFilter.db和,并使用和调用MsMpList.dat将两个文件写入自己的进程内存,以防止调试器拦截 DLL 加载。WriteProcessMemoryDisableThreadLibraryCalls
然后,执行从 转到解密的 shellcode ,WordPadFilter.db并MsMpList.dat扫描已安装的安全软件。如果检测到安全软件,恶意软件将使用 RPC 调用TrueSightKiller从 加载驱动程序189atohci.sys,执行DeviceIoControl以请求0x22e044带有参数的IOCTL 编号MsMpEng,从而NisSrv.exe有效终止 Windows Defender 并禁用 Windows 本机网络监控,从而使恶意软件能够不被发现地运行。
禁用安全防御后,恶意软件重新连接到同一个阿里云存储桶并下载另外四个加密负载,分别名为、FOM-50.jpg和。这些文件被解密为(由Internet Explorer 的良性组件在内存中生成) 、和。执行流程如下:加载,然后从和解压并执行恶意软件,部署加密矿工和键盘记录器,后者将日志存储在中。FOM-51.jpgFOM-52.jpgFOM-53.jpgOKSave.exeuninstall.exetbcore3U.dlllog.srcutils.vcxprojOKSave.exetbcore3U.dlllog.srcutils.vcxprojC:xxxx.in
在此阶段,系统中驻留着三个持久的恶意可执行文件:ValleyRAT后门、键盘记录器和加密矿工。这些恶意软件组件计划在系统启动时或计划任务创建时运行。该恶意软件与其托管在阿里云上的 C2 服务器进行通信8.217.60[.]40:8917。
结论和缓解建议
我们的调查发现了一项新的活动,涉及由中国威胁行为者部署的复杂且快速发展的恶意软件。该活动利用木马化的 DICOM 查看器作为诱饵,使用后门 (ValleyRAT) 感染受害者系统以进行远程访问和控制,使用键盘记录器捕获用户活动和凭据,并使用加密挖掘器利用系统资源获取经济利益。
虽然这些 DICOM 查看器可能直接针对患者而非医院,因为患者经常使用这些应用程序查看自己的医疗图像,但对 HDO 的风险仍然很大。在患者将受感染的设备带入医院进行诊断的场景中,或者在新出现的场景中,例如依赖患者自有技术的居家医院计划,这些感染可能会蔓延到单个患者设备之外,从而使威胁行为者有可能在医疗保健网络中获得初步立足点。
为了最大限度地降低风险并防止未经授权的访问,HDO 应实施以下风险缓解措施:
-
避免从不受信任的来源下载软件或文件。
-
禁止将文件从患者设备加载到医疗工作站或其他联网设备上。
-
实施强大的网络分段,将不受信任的设备和网络(例如访客 Wi-Fi)与医院内部基础设施隔离。
-
确保所有端点都受到最新的防病毒或 EDR 解决方案的保护。
-
持续监控所有网络流量和端点遥测以发现可疑活动。
-
主动搜寻与已知威胁行为者行为相符的恶意活动,确保尽早发现并做出响应。
IoC 和更多细节
IoC | Description |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
第二阶段可执行文件明确检查的安全软件列表:
["HipsMain.exe", "HipsTray.exe", "HipsDaemon.exe", "360Safe.exe", "360tray.exe", "360sd.exe", "MsMpEng.exe", "NisSrv.exe", "ZhuDongFangYu.exe", "SecurityHealthSystray.exe", "kscan.exe", "kwsprotect64.exe", "kxescore.exe", "kxetray.exe", "kxemain.exe", "ksetupwiz.exe", "QMDL.exe", "QMPersonalCenter.exe", "QQPCPatch.exe", "QQPCRealTimeSpeedup.exe", "QQPCRTP.exe", "QQPCTray.exe", "QQRepair.exe", "QQPCMgrUpdate.exe", "KSafeTray.exe", "mpcopyaccelerator.exe", "UnThreat.exe", "K7TSecurity.exe", "ad-watch.exe", "PSafeSysTray.exe", "vsserv.exe", "remupd.exe", "rtvscan.exe", "ashDisp.exe", "avcenter.exe", "TMBMSRV.exe", "knsdtray.exe", "avp.exe", "avpui.exe", "avgwdsvc.exe", "AYAgent.aye", "V3Svc.exe", "mssecess.exe", "QUHLPSVC.EXE", "RavMonD.exe", "KvMonXP.exe", "baiduSafeTray.exe", "BaiduSd.exe", "LAVService.exe", "LenovoTray.exe", "LenovoPcManagerService.exe", "LISFService.exe", "LnvSvcFdn.exe", "wsctrl10.exe", "wsctrl11.exe", "wsctrlsvc.exe", "wsctrl.exe", "Bka.exe", "BkavService.exe", "BkavSystemServer.exe", "BkavSystemService.exe", "BkavSystemService64.exe", "BkavUtil.exe", "BLuPro.exe", "BluProService.exe", "cefutil.exe", "PopWndLog.exe", "PromoUtil.exe", "QHActiveDefense.exe", "QHSafeMain.exe", "QHSafeScanner.exe", "QHSafeTray.exe", "QHWatchdog.exe"]
下表总结了第一阶段和第二阶段恶意软件在解密之前和之后下载的文件。在分析时,防病毒解决方案在解密之前均未将这些文件检测为恶意文件。但是,截至撰写本文时,解密后已将三个文件(vselog.dll、189atohci.sys和FOM-51.jpg)标记为恶意文件。需要注意的是,并非列出的每个文件都应被视为恶意文件,只有上面 IoC 表中明确标识的文件才应被视为恶意文件。
姓名 | SHA256 | 解密为 |
---|---|---|
i.dat | 31adb4043339320c360d43686ace3736bac87df27dc309c7c544820acdb34a93 |
|
a.gif | 2d3c7fbb4fba459808f20fdc293cdc09951110302111526bc467f84a6f82f8f6 | vseamps.exe/install.exe/random.exe。Cyren AV 的一部分,用于 DLL 注入的良性文件。SHA256:
|
b.gif | 5536f773a5f358f174026758ffae165d3a94c9c6a29471385a46c1598cfb2ad4 | vselog.dll。SHA256:
A6BB2CE9688620E6335F39124A08718A623E3A71A0E9953104FCFC54BA05856B |
c.gif | 7545ac54f4bdfe8a9a271d30a233f8717ca692a6797ca775de1b7d3eaab1e066 | 写字板过滤器.db。 SHA256:92f765df46c598c0f25ad69e862711565c6c23845ce2e4967ddde39ee1dd6c1d |
d.gif | 6166ef3871e1952b05bce5a08a1db685e27bd83af83b0f92af20139dc81a4850 | MsMpList.dat.SHA256:
B419964F0F219394BF9C6D5A9AA904796B14FDB2FE62B7079BBD0A48F4E902F1 |
s.dat | 6ebe9d4cffadf2566a960067fc226739dd74f361dca0b0809df66f1c7bb8049d | 189atohci.sys,用于禁用防病毒软件的 TrueSightKiller 驱动程序。SHA256:
25b6f65c07b83293958c6f1e36d053b1d39c5dde864fde5cfc1834ecca591139 |
s.jpeg | 5207b0111dc5cc23da549559a8968ee36e39b5d8776e6f5b1e6bdc367937e7df | 在设置为 PAGE_EXECUTE_READWRITE 的动态分配内存区域中执行的 Shellcode。
|
f.dat | 81FF16AEDF9C5225CE8A03C0608CC3EA417795D98345699F2C240A0D67C6C33D | 有效载荷一旦处理将产生
OkSave.exe 从 Internet Explorer 中的无害 uninstall.exe 文件启动。它将使用 SHA256 加载 tbcore3U.dll: cbf556ebc3ed7d3d3ddcd399f1a1f4212251b151f52cdafc60c4676dc4df60ab utils.vcxproj 的 SHA256 为:15e272118e984d2bdeaec7e1f72a6568eb0a82e1d0431c5d824ced33120c706e 以及使用SHA256的log.src: 4556D5D106ADBD9E1C5627940BD2314CA59B2CC8C01359680CA70928B6BAFC50 OkSave.exe 将使用 utils.vcxproj 和 log.src 来释放带有 SHA256 的 Crypto-miner: E26D5E23BEE9695B05323928F66CEC4D969178EBFC00E9930B71C356C5D37167 带有SHA256的键盘记录器和特洛伊木马: 2da901c7e1441286d7e90d6a9f114ebb020e56d6f2200ea68111a691f29ff71b |
FOM-50.jpg | 48F258037BE0FFE663DA3BCD47DBA22094CC31940083D9E18A71882BDC1ECDB8 | |
FOM-51.jpg | a2065ea035c4e391c0fd897a932dcff34d2ccd34579844c732f3577bc443b196 | |
FOM-52.jpg | 901330243EF0F7F0AAE4F610693DA751873E5B632E5F39B98E3DB64859D78CBC | |
FOM-53.jpg | F919634AC7E0877663FFF06EA9E430B530073D6E79EEE543D02331F4DFF64375 |
原文始发于微信公众号(Ots安全):第一部分:Silver Fox APT (银狐)滥用 Philips DICOM Viewer 来传播用于后门访问的 RAT
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论