Cyril FrançoisDaniel StepanicSeth Goodwin

弹力吊饰 SPECTRALVIPER

Elastic Security Labs 发现了针对越南一家农业综合企业的 SPECTRALVIPER 恶意软件。

阅读时间:35 分钟恶意软件分析活动
Elastic 对 SPECTRALVIPER 施展“魔力”

关键要点

  • REF2754 入侵套件利用了多个 PE 加载程序、后门和 PowerShell 运行器
  • SPECTRALVIPER 是一个经过高度混淆的、之前从未公开过的 x64 后门,具有 PE 加载和注入、文件上传和下载、文件和目录操作以及令牌模拟功能
  • 我们认为 REF2754 是越南入侵事件的诱因,与 Canvas Cyclone/APT32/OceanLotus 威胁行为者保持一致

前言

几个月来,Elastic Security Labs 一直在追踪针对越南大型上市公司的入侵事件集 REF2754。 在此期间,我们的团队发现一个与国家有关的参与者正在协调使用新的恶意软件。

本研究讨论:

  • SPECTRALVIPER 恶意软件
  • P8LOADER恶意软件加载器
  • POWERSEAL恶意软件
  • REF2754 的活动和入侵分析

执行流程

记录的第一个事件是系统服务通过 SMB 从先前受到感染的端点创建了一个文件( C:\Users\Public\Libraries\dbg.config) 。 攻击者将用于从正在运行的进程中收集内存元数据的 SysInternals ProcDump 实用程序重命名为 Windows 调试器实用程序 ( windbg.exe )。 攻击者使用带有-md标志的重命名的 ProcDump 应用程序加载了dbg.config ,这是一个包含恶意代码的未签名的 DLL。

需要注意的是,ProcDump LOLBAS技术需要参数中有一个有效的进程;因此,虽然winlogon.exe包含在参数中,但之所以使用它是因为它是一个有效的进程,而不是因为它是 ProcDump 的收集目标。

未签名的 DLL( dbg.config) 包含 DONUTLOADER shellcode,它试图将其注入sessionmsg.exe (Microsoft 远程会话消息服务器)。 DONUTLOADER 被配置为加载 SPECTRALVIPER 后门,并最终加载依赖于情境的 P8LOADER 或 POWERSEAL 恶意软件系列。 以下是 REF2754 入侵集的执行流程。

我们的团队还观察到了上述类似的工作流程,但使用不同的技术来代理其恶意执行。 一个例子是利用 Internet Explorer 程序( ExtExport.exe )来加载 DLL,而另一个技术涉及使用合法应用程序( nslookup.exe )侧载恶意 DLL( dnsapi.dll )。

这些技术和恶意软件家族构成了 REF2754 入侵集。

SPECTRALVIPER 代码分析

Overview

在调查过程中,我们发现了一个之前未被发现的后门恶意软件家族,我们将其命名为 SPECTRALVIPER。 SPECTRALVIPER 是一个用 C++ 编码且经过严格混淆的 64 位 Windows 后门。 它采用两种不同的通信模式,允许它通过 HTTP 或 Windows 命名管道接收消息。

通过分析,我们确定了以下能力:

  • PE 加载/注入:SPECTRALVIPER 可以加载和注入可执行文件,支持 x86 和 x64 架构。 此功能使其能够在合法进程内执行恶意代码。
  • 令牌模仿:该恶意软件具有模仿安全令牌的能力,授予其提升的权限并绕过某些安全措施。 这使得未经授权的访问和操纵敏感资源成为可能。
  • 文件下载/上传:SPECTRALVIPER 可以从受感染的系统下载和上传文件。 这使得攻击者可以窃取数据或向受感染的机器传送额外的恶意负载。
  • 文件/目录操作:后门能够操作受感染系统上的文件和目录。 这包括创建、删除、修改和移动文件或目录,使攻击者能够对受害者的文件系统进行广泛的控制。

执行流程

启用

SPECTRALVIPER 可以编译为 PE 可执行文件或 DLL 文件。 通过执行 . \spectralviper.exe 可以直接将恶意软件作为 PE 启动。

然而,当恶意软件是 DLL 时,它会尝试将自己伪装成具有已知导出功能的合法库,例如我们观察到的样本中的 sqlite3。

SPECTRALVIPER 入口点隐藏在这些导出中。 为了找到正确的那个,我们可以使用 PowerShell 和rundll-ng强制调用它们。 下面所示的 PowerShell 命令在for循环中调用每个 SPECTRALVIPER 导出,直到我们找到启动恶意软件功能的导出。

for($i=0; $i -lt 20; $i++){.\rundll-ng\rundll64-ng.exe ".\7e35ba39c2c77775b0394712f89679308d1a4577b6e5d0387835ac6c06e556cb.dll" "#$i"}

执行时,二进制文件以 HTTP 模式或管道模式运行,由其硬编码配置决定。

管道模式

在管道模式下,SPECTRALVIPER 打开一个具有硬编码名称的命名管道并等待传入的命令,在此示例中为\.\pipe\raSeCIR4gg

这个命名管道没有任何安全属性,这意味着每个人都可以访问它。 这很有趣,因为不安全的命名管道可以被共同驻留的威胁行为者(SPECTRALVIPER 操作员已知或未知)或防御团队接管,以此来中断这种执行模式。

然而,需要特定的协议来与该管道通信。 SPECTRALVIPER 实现了Diffie-Helman 密钥交换协议来交换通过命名管道传输的加密和解密命令所需的密钥,该密钥是 AES 加密的。

HTTP mode

在HTTP模式下,恶意软件会每n秒向其C2发出一次信标,间隔时间在 10 到 99 秒范围内随机生成。

使用调试器,如果二进制文件包含硬编码域,我们可以强制二进制文件使用 HTTP 通道而不是命名管道。

下面是一个 HTTP 请求示例。

该请求包含一个 cookie 标头“ euconsent-v2 ”,其中包含主机收集的信息。 该信息采用RSA1024非对称加密方式加密,并使用Base64进行base64编码。 下面是加密前的cookie内容示例。

我们认为第一个值,在这个例子中是“ H9mktfe2k0ukk64nZjw1ow== ”,是与服务器共享的用于加密通信数据的随机生成的 AES 密钥。

命令

在分析 SPECTRALVIPER 样本时,我们发现其命令处理程序表包含 33 到 36 处理程序。

下面是已识别的命令的列表表。

ID名称
2下载文件
3上传文件
5设置信标间隔
8CreateRundll32ProcessAndHollow
11InjectShellcodeInProcess
12CreateProcessAndInjectShellcode
13注入PEInProcess
14CreateProcessAndHollow
20CreateRundll32ProcessWithArgumentAndInjectPE
81StealProcessToken
82冒充用户
83恢复自我
84AdjustPrivileges
85获取当前用户名
103列出文件
106列出正在运行的进程
108复制文件
109删除文件
110创建目录
111移动文件
200在自己的进程中运行DLL

为了加快与 SPECTRALVIPER 交互的过程,我们绕过了通信协议并将我们自己的后门注入二进制文件中。 该后门在收到我们的消息后将打开一个套接字并调用处理程序。

当执行AdjustPrivileges命令时,根据进程的当前权限级别,恶意软件将尝试设置以下权限列表。

防御规避

代码混淆

通过将每个函数拆分为封装初始逻辑的多层级虚拟函数,二进制代码被严重混淆。 除此之外,这些函数的控制流也通过控制流平坦化进行混淆。 控制流平坦化是一种混淆技术,它删除干净的程序结构并将块彼此相邻地放置在循环内,并使用 switch 语句来控制程序的流程。

下面是二级恒等函数的示例,其中,无论函数多么复杂,都会返回突出显示的参数p_a1

字符串混淆

SPECTRALVIPER 的字符串使用自定义结构和 AES 解密进行混淆。 密钥是硬编码的( “\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f” ),并且 IV 包含在加密字符串结构中。

我们可以通过检测恶意软件并调用其 AES 解密函数来解密字符串。

总结

SPECTRALVIPER 是 Elastic Security Labs 在入侵分析过程中发现的一个 x64 后门。 它可以被编译为可执行文件或 DLL,通常会模仿已知的二进制导出。

它支持进程加载/注入、令牌模拟和文件操作。 它利用带有 AES 加密和 Diffie-Hellman 或 RSA1024 密钥交换的加密通信通道(HTTP 和命名管道)。

所有样本都使用相同的混淆器进行严格混淆,但强化程度各不相同。

利用我们通过静态和动态分析收集的信息,我们能够识别 VirusTotal 中的其他几个样本。 使用上面概述的调试过程,我们还能够收集这些样本的 C2 基础设施。

P8LOADER

Overview

下面描述的可移植可执行文件 (PE) 是一个用 C++ 编写的 Windows x64 PE 加载器,我们根据它的一个导出文件P8exit将其命名为 P8LOADER。

发现

P8LOADER 最初是在执行有效的 Windows 进程RuntimeBroker.exe时生成未备份的 shellcode 警报时发现的。 不受支持的可执行部分或浮动代码是将代码部分类型设置为“私有”而不是“图像”的结果,就像将代码映射到磁盘上的文件时所看到的那样。 从这些类型的内存区域启动的线程是异常的,并且是恶意活动的良好指标。

如果您想了解有关不受支持的可执行事件的更多信息,请查看 Joe Desimone 的《Hunting in Memory》研究出版物。

执行流程

加载器导出两个函数,它们能够将 PE 二进制文件从文件或内存加载到其自己的进程内存中。

使用VirtualAlloc方法和经典的 PE 加载算法(加载部分、解析导入和应用重定位)将要执行的 PE 加载到内存中。

接下来,以PE的入口点作为起始地址来分配一个新线程。

最后,用管道替换已加载的 PE 的 STDOUT 句柄,并创建读取管道线程,以将二进制文件的输出重定向到加载器日志系统。

除了重定向已加载的 PE 输出之外,加载器还使用 API 拦截机制来挂钩已加载进程的某些 API、记录对它的任何调用,并通过命名管道(以随机生成的 UUID 字符串作为名称)发送数据。

PE 导入表的挂钩是在导入解析时通过用其自己的存根替换最初导入的函数地址来完成的。

防御规避

字符串混淆

P8LOADER 使用基于 C++ 模板的混淆技术,通过在编译时随机选择的一组不同算法来掩盖错误和调试字符串。

这些字符串被混淆以阻碍分析,因为它们提供了有关加载器功能和能力的宝贵信息。

总结

P8LOADER 是一个新发现的 x64 Windows 加载器,用于从文件或内存执行 PE。 该恶意软件能够将加载的 PE 输出重定向到其日志系统,并将 PE 导入挂钩到日志导入调用。

POWERSEAL代码分析

Overview

在这次入侵过程中,我们观察到一个轻量级的.NET PowerShell 运行器,我们根据嵌入的字符串将其称为 POWERSEAL。 SPECTRALVIPER 成功部署后,POWERSEAL 实用程序将用于启动提供的 PowerShell 脚本或命令。 该恶意软件利用系统调用( NtWriteVirtualMemory )来逃避防御解决方案(AMSI/ETW)。

防御规避

Windows 事件跟踪 (ETW) 提供了一种跟踪和记录由用户模式应用程序和内核模式驱动程序引发的事件的机制。 反恶意软件扫描接口 (AMSI) 为数据、应用程序和工作负载提供增强的恶意软件保护。 POWERSEAL 采用众所周知且公开可用的绕过方法来修补内存中的这些技术。 这增加了他们成功的机会,同时减少了可检测到的足迹。

例如,POWERSEAL 采用常见的方法来解除挂钩并绕过 AMSI ,以绕过 Microsoft Defender 的签名

启动 PowerShell

POWERSEAL 的主要功能是执行 PowerShell。 在下面对 POWERSEAL 源代码的描述中,我们可以看到 POWERSEAL 使用 PowerShell 执行脚本和参数(命令)。 脚本和参数由威胁行为者提供,在环境中未被观察到。

总结

POWERSEAL 是一种全新专用的 PowerShell 运行器,它借鉴了各种开源攻击性安全工具的经验,以精简的软件包提供攻击功能,并具有内置的防御规避功能。

战役和对手建模

Overview

REF2754 是针对越南境内大型全国性重要上市公司的一项持续活动。 此次活动中的恶意软件执行链由 DONUTLOADER 发起,但接着利用了之前未报告的工具。

  1. SPECTRALVIPER 是一款经过混淆的 x64 后门,具有 PE 加载和注入、文件上传和下载、文件和目录操作、令牌模拟以及命名管道和 HTTP 命令与控制功能
  2. P8LOADER,一种经过混淆的 Windows PE 加载程序,允许攻击者最小化和混淆受害者终端上的某些日志记录,以及
  3. POWERSEAL 是一款内置 ETW 和 AMSI 绕过功能的 PowerShell 运行器,可在使用 PowerShell 工具时增强防御规避能力

Elastic Security Labs 有信心地得出结论:此次活动是由越南政府附属威胁发起的。

受害者学

利用我们的 SPECTRALVIPER YARA 签名,我们在被 SPECTRALVIPER 植入物感染的第二个环境中识别出两个端点。 Elastic Security Labs 在 2022 研究中讨论了该环境,该研究描述了REF4322

REF4322 的受害者是一家越南金融服务公司。 Elastic 安全实验室于 2022 年首次讨论了该受害者和活动组织。

REF2754 的受害者已被确定为一家位于越南的大型农业企业。

根据本研究结束时对 YARA 规则的追溯,VirusTotal 提供的进一步第三方情报显示,还有更多受害者位于越南。 Retrohunt 总共找到了 8 条结果:

  • 所有这些都被手动确认为 SPECTRALVIPER
  • 所有样本的大小都在 1.59MB 到 1.77MB 之间
  • 所有 VirusTotal 样本最初都是从越南提交的

一些样本是我们之前在第一次收集时发现的,还有一些对我们来说是新的。

请注意过度依赖“VT 提交者”的分析局限性。 该第三方报告机制可能会受到循环报告问题或 VPN 使用的影响,从而修改所使用的 GEO,并无意中强化假设。 在这种情况下,它被用来尝试寻找明显非 VN 来源的样本,但没有成功。

截至本文发表时,所有已知的受害者都是位于越南境内且主要在越南境内开展业务的大型上市公司。

活动分析

与 REF4322 环境的重叠发生得相当晚,即 2023 年 4 月 20 日。 其中一个端点先前已感染了 PHOREAL 植入物,而另一个端点则受到了 PIPEDANCE 的攻击。

这些 SPECTRALVIPER 感染是在管道模式下配置的,而不是设置为等待通过命名管道( \.\pipe\ydZb0bIrT )传入连接的硬编码域。

此活动似乎是访问权的交接或将一种工具交换为另一种工具。

如果您对 PIPEDANCE 恶意软件的详细分析感兴趣,请查看我们之前的研究并继续关注,我们将发布更多内容。

然而,尽管攻击后对预期效果的收集是推测性的,但基于恶意软件、植入物和技术能力的动机评估表明,可以实现初始访问、保持持久性并作为后门运行以用于情报收集目的。

REF4322、REF2754 以及从 VirusTotal 收集的用于 C2 的样本中的域名均在去年注册,最近的一次注册是在 2023 年 4 月下旬。

领域:创建时间:
stablewindowsapp[.]com2022-02-10
webmanufacturers[.]com2022-06-10
toppaperservices[.]com2022-12-15
hosting-wordpress-services[.]com2023-03-15
appointmentmedia[.]com2023-04-26

这些域名关联 IP 的 GEO 遍布全球,并且使用 Sectigo、Rapid SSL 和 Let's Encrypt 证书。 进一步的基础设施分析没有发现除注册日期之外的任何值得注意的事情,这确实给了我们一个活动时间框。 根据最近对appointmentmedia[.]com的注册,该活动可能仍在进行中,并且会注册新的域名以用于未来的入侵。

竞选协会

Elastic Security Labs 有信心地得出结论:REF4322 和 REF2754 活动组都代表由越南政府附属威胁策划和执行的活动。 根据我们的分析,该活动组织与之前报道的 Canvas Cyclone、APT32 和 OCEANLOTUS 威胁组织有重叠。

如上所述和之前的报道中,REF4322 的受害者是一家管理企业收购和前国有企业资本的金融机构。

REF2754 的受害者是一家大型农业企业,在越南的食品生产和分销供应链中具有系统重要性。 持续的城市化、污染、新冠肺炎疫情和气候变化对越南的粮食安全构成了挑战。 作为一个数据点,2023 年 3 月,越南总理批准了《2030 年越南食品体系向透明度、责任感和可持续性转变的国家行动计划》。 其总体目标是根据本地优势,将食品生产、加工、分配和消费等系统向透明、负责和可持续的方向转变,确保国家粮食和营养安全,提高人民收入和生活水平,预防和控制自然灾害和流行病,保护环境和应对气候变化,最终为到2030年实现越南和全球可持续发展目标作出贡献。 所有这些都凸显了粮食安全一直是国家政策的重点,这也使得 REF2754 的受害者因与越南的战略目标相交而成为威胁行为者青睐的目标。

除了 REF4322 和 REF2754 的受害者具有与国家一致的战略利益之外,两次入侵都感染了 DONUTLOADER、P8LOADER、POWERSEAL 和 SPECTRALVIPER 恶意软件系列,并在两次入侵中使用了类似的部署技术、植入物管理和命名约定。

能够访问 REF4322 中的金融交易记录的威胁组织,结合 REF2754 的国家战略食品安全政策,可以洞悉管理能力、腐败、外国影响或价格操纵等问题,而这些是监管报告无法提供的。

钻石模型

Elastic Security 利用钻石模型来描述对手、能力、基础设施和入侵受害者之间的高级关系。 虽然钻石模型最常用于单一入侵,并利用活动线程(第 8 节)作为在事件之间建立关系的方式,但以对手为中心(第 7.1.4 节) 方法允许形成(混乱的)单个钻石。

观察到的对手战术和技术

Elastic 使用 MITRE ATT&CK 框架来记录高级持续性威胁针对企业网络使用的常见策略、技术和程序。

战术

策略代表了技术或子技术的原因。 这是对手的战术目标:采取行动的原因。

技术/子技术

技术和子技术代表对手如何通过执行某个动作来实现战术目标。

检测逻辑

预防措施

本研究出版物中讨论的所有恶意软件都受到 Elastic Defend 的保护。

雅拉

Elastic Security 已创建 YARA 规则来识别此活动。 以下是 YARA 规则,用于识别 SPECTRALVIPER、POWERSEAL 和 P8LOADER

rule Windows_Trojan_SpectralViper_1 {
    meta:
        author = "Elastic Security"
        creation_date = "2023-04-13"
        last_modified = "2023-05-26"
        os = "Windows"
        arch = "x86"
        category_type = "Trojan"
        family = "SpectralViper"
        threat_name = "Windows.Trojan.SpectralViper"
        reference_sample = "7e35ba39c2c77775b0394712f89679308d1a4577b6e5d0387835ac6c06e556cb"
       license = "Elastic License v2"

    strings:
        $a1 = { 13 00 8D 58 FF 0F AF D8 F6 C3 01 0F 94 44 24 26 83 FD 0A 0F 9C 44 24 27 4D 89 CE 4C 89 C7 48 89 D3 48 89 CE B8 }
        $a2 = { 15 00 8D 58 FF 0F AF D8 F6 C3 01 0F 94 44 24 2E 83 FD 0A 0F 9C 44 24 2F 4D 89 CE 4C 89 C7 48 89 D3 48 89 CE B8 }
        $a3 = { 00 8D 68 FF 0F AF E8 40 F6 C5 01 0F 94 44 24 2E 83 FA 0A 0F 9C 44 24 2F 4C 89 CE 4C 89 C7 48 89 CB B8 }
        $a4 = { 00 48 89 C6 0F 29 30 0F 29 70 10 0F 29 70 20 0F 29 70 30 0F 29 70 40 0F 29 70 50 48 C7 40 60 00 00 00 00 48 89 C1 E8 }
        $a5 = { 41 0F 45 C0 45 84 C9 41 0F 45 C0 EB BA 48 89 4C 24 08 89 D0 EB B1 48 8B 44 24 08 48 83 C4 10 C3 56 57 53 48 83 EC 30 8B 05 }
        $a6 = { 00 8D 70 FF 0F AF F0 40 F6 C6 01 0F 94 44 24 25 83 FF 0A 0F 9C 44 24 26 89 D3 48 89 CF 48 }
        $a7 = { 48 89 CE 48 89 11 4C 89 41 08 41 0F 10 01 41 0F 10 49 10 41 0F 10 51 20 0F 11 41 10 0F 11 49 20 0F 11 51 30 }
        $a8 = { 00 8D 58 FF 0F AF D8 F6 C3 01 0F 94 44 24 22 83 FD 0A 0F 9C 44 24 23 48 89 D6 48 89 CF 4C 8D }
    condition:
        5 of them
}
rule Windows_Trojan_SpectralViper_2 {
    meta:
        author = "Elastic Security"
        creation_date = "2023-05-10"
        last_modified = "2023-05-10"
        os = "Windows"
        arch = "x86"
        category_type = "Trojan"
        family = "SpectralViper"
        threat_name = "Windows.Trojan.SpectralViper"
        reference_sample = "d1c32176b46ce171dbce46493eb3c5312db134b0a3cfa266071555c704e6cff8"
       license = "Elastic License v2"

    strings:
        $a1 = { 18 48 89 4F D8 0F 10 40 20 0F 11 47 E0 0F 10 40 30 0F 11 47 F0 48 8D }
        $a2 = { 24 27 48 83 C4 28 5B 5D 5F 5E C3 56 57 53 48 83 EC 20 48 89 CE 48 }
        $a3 = { C7 84 C9 0F 45 C7 EB 86 48 8B 44 24 28 48 83 C4 30 5B 5F 5E C3 48 83 }
        $s1 = { 40 53 48 83 EC 20 48 8B 01 48 8B D9 48 8B 51 10 48 8B 49 08 FF D0 48 89 43 18 B8 04 00 00 }
        $s2 = { 40 53 48 83 EC 20 48 8B 01 48 8B D9 48 8B 49 08 FF D0 48 89 43 10 B8 04 00 00 00 48 83 C4 20 5B }
        $s3 = { 48 83 EC 28 4C 8B 41 18 4C 8B C9 48 B8 AB AA AA AA AA AA AA AA 48 F7 61 10 48 8B 49 08 48 C1 EA }
    condition:
        2 of ($a*) or any of ($s*)
}
rule Windows_Trojan_PowerSeal_1 {
    meta:
        author = "Elastic Security"
        creation_date = "2023-03-16"
        last_modified = "2023-05-26"
        os = "Windows"
        arch = "x86"
        category_type = "Trojan"
        family = "PowerSeal"
        threat_name = "Windows.Trojan.PowerSeal"
        license = "Elastic License v2"

    strings:
        $a1 = "PowerSeal.dll" wide fullword
        $a2 = "InvokePs" ascii fullword
        $a3 = "amsiInitFailed" wide fullword
        $a4 = "is64BitOperatingSystem" ascii fullword
    condition:
        all of them
}
rule Windows_Trojan_PowerSeal_2 {
    meta:
        author = "Elastic Security"
        creation_date = "2023-05-10"
        last_modified = "2023-05-10"
        os = "Windows"
        arch = "x86"
        category_type = "Trojan"
        family = "PowerSeal"
        threat_name = "Windows.Trojan.PowerSeal"
        license = "Elastic License v2"

    strings:
        $a1 = "[+] Loading PowerSeal"
        $a2 = "[!] Failed to exec PowerSeal"
        $a3 = "AppDomain: unable to get the name!"
    condition:
        2 of them
}
rule Windows_Trojan_P8Loader {
    meta:
        author = "Elastic Security"
        creation_date = "2023-04-13"
        last_modified = "2023-05-26"
        os = "Windows"
        arch = "x86"
        category_type = "Trojan"
        family = "P8Loader"
        threat_name = "Windows.Trojan.P8Loader"
        license = "Elastic License v2"

    strings:
        $a1 = "\t[+] Create pipe direct std success\n" fullword
        $a2 = "\tPEAddress: %p\n" fullword
        $a3 = "\tPESize: %ld\n" fullword
        $a4 = "DynamicLoad(%s, %s) %d\n" fullword
        $a5 = "LoadLibraryA(%s) FAILED in %s function, line %d" fullword
        $a6 = "\t[+] No PE loaded on memory\n" wide fullword
        $a7 = "\t[+] PE argument: %ws\n" wide fullword
        $a8 = "LoadLibraryA(%s) FAILED in %s function, line %d" fullword
    condition:
        5 of them
}

参考资料

上述研究参考了以下内容:

观察结果

所有可观察数据均可通过组合 zip 包以 ECS 和 STIX 格式下载

本研究讨论了以下可观察的结果。

Observable类型名称参考
56d2d05988b6c23232b013b38c49b7a9143c6649d81321e542d19ae46f4a4204SHA-256-SPECTRALVIPER 与下面的 1.dll 相关
d1c32176b46ce171dbce46493eb3c5312db134b0a3cfa266071555c704e6cff8SHA-2561.dllSPECTRALVIPER
7e35ba39c2c77775b0394712f89679308d1a4577b6e5d0387835ac6c06e556cbSHA-256执行程序SPECTRALVIPER
4e3a88cf00e0b4718e7317a37297a185ff35003192e5832f5cf3020c4fc45966SHA-256设置.dbSPECTRALVIPER
7b5e56443812eed76a94077763c46949d1e49cd7de79cde029f1984e0d970644SHA-256Microsoft.MicrosoftEdge_8wekyb3d8bbwe.pkgSPECTRALVIPER
5191fe222010ba7eb589e2ff8771c3a75ea7c7ffc00f0ba3f7d716f12010dd96SHA-256UpdateConfig.jsonSPECTRALVIPER
4775fc861bc2685ff5ca43535ec346495549a69891f2bf45b1fcd85a0c1f57f7SHA-256Microsoft.OneDriveUpdatePackage.mcaSPECTRALVIPER
2482c7ececb23225e090af08feabc8dec8d23fe993306cb1a1f84142b051b621SHA-256ms-证书.sstSPECTRALVIPER
stablewindowsapp[.]com不适用C2
webmanufacturers[.]com不适用C2
toppaperservices[.]com不适用C2
hosting-wordpress-services[.]com不适用C2
appointmentmedia[.]com不适用C2