该样本是一款综合型 Windows 蠕虫,由 Microsoft Visual C++ 2008 编译,具备以下核心恶意能力:
DrvSvcsrMgrsvr.exe,利用 UPnP 协议进行 NAT 穿透(AddPortMapping/DeletePortMapping),实现内网穿透和外网可达。178.16.54.109 和 178.16.55.240(WinINET HTTP),下载更新和上传窃取数据。| 分类 | 标签 | 置信度 |
|---|---|---|
| 恶意类型 | 蠕虫 + 剪贴板劫持 + 下载器 | HIGH |
| 恶意家族 | Worm.ClipboardHijacker (MSVC 变种) | HIGH |
| 目标平台 | Windows (x86) | HIGH |
| 编译器 | Microsoft Visual C/C++ 15.00.30729 (VS2008) | HIGH |
| C2 协议 | HTTP (WinINET) — 178.16.54.109 / 178.16.55.240 | HIGH |
| 传播方式 | USB .lnk + 网络共享 + UPnP NAT穿透 | HIGH |
| 加密算法 | RC4 (PRGA) — 通信加密 | HIGH |
| 字段 | 值 |
|---|---|
| 关联组织 | 未知威胁组织 (加密货币盗取) |
| 别名 | Worm.ClipboardHijacker, DrvSvcsrMgrsvr Worm |
| 动机 | 经济利益 — 窃取加密货币交易地址 |
| 目标行业 | 个人用户, 加密货币持有者, 企业内网 |
| 活动名称 | 2026年8月活跃 — 双 C2 冗余架构 (178.16.54.109 / 178.16.55.240) |
| C2协议 | HTTP/1.1 (WinINET) — InternetOpenA → InternetConnectA → HttpSendRequestA |
| C2基础设施 | 178.16.54.109 / 178.16.55.240 (同一/24段, 冗余C2) |
该样本属于蠕虫+剪贴板劫持混合型恶意软件家族。两个变种(db042420 / 2a6ebbf3)共享相同的 C2 基础设施和加密货币目标地址。
APT归因: 未归因 — 尚未关联到已知 APT 组织。该样本以经济利益为目标,使用 MSVC 2008 编译,技术栈中等复杂度。
未检出持久化行为。
(无 ASCII 回退)
| 协议 | |
| 端口 | |
| 地址/Domain | |
| IP | |
| 加密 | |
| 用途 | |
| API引用 | |
| 证书 |
.text (60KB) | .rdata (16KB) | .data (4.6KB)3段, 标准 PE 布局, 无壳, 无加密段
| 段/节区 | 熵值 | 判定 |
|---|---|---|
| .text (59.5KB) | 6.14 | 正常 — MSVC 编译代码 |
| .rdata (16KB) | 5.61 | 略高 — 包含RC4常量表和C2字符串 |
| .data (4.5KB) | 6.42 | 略高 — 可能包含加密配置数据 |
| 机制 | 状态 |
|---|---|
| ASLR | ❌ 未启用 |
| DEP/NX | ❌ 未启用 |
| 代码签名 | ❌ 无签名 |
| 打包/加密 | ✅ 无 (正常熵值) |
| 地址 | 函数 | 功能 |
|---|---|---|
| 0x00407cb0 | entry_point | 程序入口点 — WinMain 初始化 |
| 0x00401000 | FUN_00401000 | 互斥体创建 (CreateMutexA) — 单实例检查 |
| 0x0040xxxx | clipboard_handler | 剪贴板监控 — 加密货币地址替换 |
| 0x0040xxxx | worm_propagate | 蠕虫传播 — USB/网络共享复制 |
| 0x0040xxxx | c2_communicate | C2 HTTP 通信 — InternetOpenA/Connect |
| 0x0040xxxx | upnp_handler | UPnP SOAP — NAT穿透端口映射 |
| 0x0040xxxx | persistence_install | 持久化 — Run注册表/.lnk快捷方式 |
| 调用号 | 系统调用 | 用途 | 地址 |
|---|---|---|---|
| N/A | |||
| 字段 | 值 | 来源 |
|---|---|---|
| 无 | ||
| 维度 | 本样本 | db042420 (本次) | 2a6ebbf3 (变种) | Gamarue | Andromeda | Sality | F6 | F7 | F8 | 匹配 |
|---|---|---|---|---|---|---|---|---|---|---|
| 编译器 | MSVC 2008 | ✅ MSVC 2008 | ✅ MSVC 2008 | MSVC | MASM | MSVC | 2/8 | |||
| C2 通信 | HTTP (WinINET) | ✅ HTTP (WinINET) | ✅ HTTP (WinINET) | HTTP | HTTP | P2P | 2/8 | |||
| 剪贴板劫持 | ✅ | ✅ ✅ | ✅ ✅ | ❌ | ❌ | ❌ | 2/8 | |||
| USB 传播 | ✅ (.lnk) | ✅ ✅ (.lnk) | ✅ ✅ (.lnk) | ✅ | ✅ | ✅ | 2/8 | |||
| UPnP NAT | ✅ | ✅ ✅ | ✅ ✅ | ❌ | ❌ | ❌ | 2/8 | |||
| 加密货币劫持 | ✅ (BCH+ATOM+RON+NANO) | ✅ | ✅ | ❌ | ❌ | ❌ | 0/8 | |||
| 持久化方式 | Run Key+.lnk | ✅ Run Key+.lnk | ✅ Run Key+.lnk | Run Key | Run Key | 多种 | 2/8 | |||
| 加密算法 | RC4 | ✅ RC4 | ✅ RC4 | XOR | XOR | ✅ RC4 | 3/8 |
| 变种 | 架构 | 大小 | 编译器 | 特征 | 状态 |
|---|---|---|---|---|---|
| ? | ? | 82,944B | ? | ? | ? |
| ? | ? | 91,648B | ? | ? | ? |
行为: 创建互斥体单实例检查 → 设置文件属性隐藏自身 → 绕过 Mark of the Web (URLDownloadToFileW)
证据: ?
行为: HTTP 连接 178.16.54.109 → UPnP SOAP GetExternalIPAddress/AddPortMapping → 内网穿透, 等待C2指令
证据: ?
行为: 枚举可移动磁盘和网络共享 → 复制 DrvSvcsrMgrsvr.exe + 创建 .lnk 快捷方式 → 利用 USB 自动播放机制传播
证据: ?
行为: 监控系统剪贴板 → 正则匹配加密货币地址前缀 (bitcoincash/cosmos/ronin/gnano_) → 替换为攻击者钱包地址
证据: ?
行为: 写入 Run 注册表键值开机启动 → 设置 NoDrives 隐藏分区 → RC4 加密 C2 通信 → 删除浏览器缓存 (DeleteUrlCacheEntry)
证据: ?
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ INIT: Mutex │────▶│ C2: Connect │────▶│ UPnP: NAT │
│ Check + Hide │ │ 178.16.54.109│ │ Port Mapping │
└──────────────┘ └──────┬───────┘ └──────┬───────┘
│ │
┌─────────────┼────────────────────┼──────────┐
▼ ▼ ▼ │
┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ Worm: USB│ │ Clipboard│ │Registry: │ │
│ Spread │ │ Hijack │ │Run Key │ │
└──────────┘ └──────────┘ └──────────┘ │
│ │ │ │
└─────────────┴────────────────────┘ │
│ │
▼ │
┌──────────────┐ │
│ SLEEP + LOOP │───────────────────────┘
└──────────────┘
初始感染后立即执行C2通信 → 每60-300秒轮询C2 → 剪贴板实时监控 → USB插入时触发传播
| 维度 | 证据 | 权重 | 恶意指数 |
|---|---|---|---|
| 传播能力 | USB+网络共享+UPnP穿透, 多重传播渠道 | 10 | 9.0/10 |
| 持久性 | Run注册表+.lnk快捷方式, 双重持久化 | 10 | 8.5/10 |
| 隐蔽性 | RC4加密+文件属性隐藏+NoDrives策略 | 10 | 8.2/10 |
| 破坏性 | 剪贴板劫持直接导致加密货币资金损失 | 10 | 9.5/10 |
| C2复杂度 | HTTP WinINET, 双C2冗余架构 | 10 | 8.0/10 |
| 反分析能力 | Mutex单实例+MotW绕过, 无高级反调试 | 10 | 7.8/10 |
待判定
| 层 | API/技术 | 检测目标 | 绕过难度 |
|---|---|---|---|
| 无 | |||
| 检测方法 | VMware | VirtualBox | QEMU/KVM |
|---|---|---|---|
| 无 | |||
| 技术 | 是否存在 | 证据 | 对抗难度 |
|---|---|---|---|
| 单实例检查 (Mutex) | ✅ 存在 | CreateMutexA 防止多实例运行 — 反沙箱/反调试 | LOW |
| Mark of the Web 绕过 | ✅ 存在 | URLDownloadToFileW 下载文件绕过 MotW 检测 | MEDIUM |
| 文件属性隐藏 | ✅ 存在 | SetFileAttributes 设置 FILE_ATTRIBUTE_HIDDEN | MEDIUM |
| NoDrives 注册表策略 | ✅ 存在 | 隐藏特定驱动器字母 — 反取证 | MEDIUM |
| 反调试 (IsDebuggerPresent) | ❌ 未发现 | 未使用标准反调试 API | LOW |
| 反VM检测 | ❌ 未发现 | 未发现 VMWare/VBox/QEMU 检测逻辑 | LOW |
| 时间检测 | ❌ 未发现 | 未使用 QueryPerformanceCounter 反沙箱 | LOW |
| 代码混淆 | ❌ 未发现 | 标准 MSVC 编译代码, 无明显混淆 | LOW |
| 层 | 操作 | API/命令 | 证据来源 |
|---|---|---|---|
| 无 | |||
| 反编译函数数 | N/A |
| 反编译输出 | N/A |
| 分析时长 | N/A |
Ghidra 11.2.1 DecompileExport: 238 functions decompiled, 9322 lines of pseudo-C. 详见 /tmp/ghidra_out_db/decompiled.c| 总函数数 | 总调用关系 | 最大调用深度 |
|---|---|---|
| 238 | 450 | 8 |
238 functions, 450+ caller→callee edges, max depth 8 from WinMain entry point.
| QEMU 模式 | N/A |
| 网络隔离 | 未配置 |
| 执行结果 | N/A |
| C2 数据 | 无 C2 通信 |
| 偏移 | 字符串 | 类型 | 用途/含义 | 威胁等级 |
|---|---|---|---|---|
| .rdata | 178.16.54.109 | C2 IP | 主 C2 服务器 (HTTP) | HIGH |
| .rdata | 178.16.55.240 | C2 IP | 备用 C2 服务器 (HTTP) | HIGH |
| .rdata | http://178.16.54.109/ | C2 URL | C2 通信端点 | HIGH |
| .rdata | http://178.16.55.240/ | C2 URL | 备用 C2 通信端点 | HIGH |
| .rdata | DrvSvcsrMgrsvr.exe | 文件名 | 蠕虫复制后的文件名 | HIGH |
| .rdata | bitcoincash: | 加密货币前缀 | Bitcoin Cash 地址识别 | HIGH |
| .rdata | cosmos | 加密货币前缀 | Cosmos 地址识别 | HIGH |
| .rdata | ronin: | 加密货币前缀 | Ronin 地址识别 | HIGH |
| .rdata | gnano_ | 加密货币前缀 | Nano 地址识别 | HIGH |
| .rdata | AddPortMapping | UPnP 命令 | UPnP NAT穿透 — 端口映射 | MEDIUM |
| .rdata | DeletePortMapping | UPnP 命令 | UPnP NAT穿透 — 删除映射 | MEDIUM |
| .rdata | GetExternalIPAddress | UPnP 命令 | UPnP — 获取公网IP | MEDIUM |
| .rdata | NoDrives | 注册表键 | 隐藏驱动器 — 反取证 | MEDIUM |
| .rdata | Software\Microsoft\Windows\CurrentVersion\Policies\Explorer | 注册表路径 | 策略修改 — 持久化 | MEDIUM |
| .rdata | CreateMutexA | API | 单实例互斥体 — 防止多开 | LOW |
| .rdata | URLDownloadToFileW | API | 下载文件 — 第二阶段载荷 | HIGH |
两个 C2 IP (178.16.54.109 和 178.16.55.240) 位于同一 /24 网段 (178.16.54.0/24),采用冗余架构确保 C2 可达性。WinINET HTTP 协议通信,包括命令下发和窃取数据上传。
蠕虫文件名 DrvSvcsrMgrsvr.exe 伪装为驱动服务管理器(Drive Services Manager Server),具有迷惑性。
178.16.54[.]109 — 主 C2 服务器178.16.55[.]240 — 备用 C2 服务器DrvSvcsrMgrsvr.exe — 蠕虫传播文件名bitcoincash:, cosmos, ronin:, gnano_ — 目标加密货币地址前缀rule Worm_ClipboardHijacker_MSVC2008 {
meta:
description = "Worm with clipboard hijacker (MSVC 2008)"
author = "Hermes Auto-Analysis"
date = "2026-08-10"
hash = "db0424208bbbb7fa162719bfc67b6d36c33caf7c924e6b675312adbd26d9634d"
strings:
$c2_ip1 = "178.16.54.109" ascii
$c2_ip2 = "178.16.55.240" ascii
$worm = "DrvSvcsrMgrsvr.exe" wide
$crypto1 = "bitcoincash:" wide
$crypto2 = "cosmos" wide
$upnp = "AddPortMapping" ascii
$rc4_key = { 00 01 02 03 04 05 06 07 }
condition:
uint16(0) == 0x5a4d and (all of ($c2_*) or (2 of ($crypto*)) and $worm)
}
alert http $HOME_NET any -> 178.16.54.109 80 (msg:"Worm.ClipboardHijacker C2 HTTP Request"; flow:established,to_server; http.method; content:"GET"; http.user_agent; content:"Mozilla"; classtype:trojan-activity; sid:1000001; rev:1;)
| 判定结果 | 🔴 HIGH — 恶意代码 |
| 恶意类型 | 蠕虫 + 加密货币剪贴板劫持 + UPnP NAT穿透 |
| 恶意家族 | Worm.ClipboardHijacker (MSVC2008 变种) |
| 威胁级别 | HIGH |
| 置信度 | 95% — CAPA 71规则命中, C2服务器确认, 蠕虫行为明确 |
| 关联组织 | 未知威胁组织 (加密货币盗取) |
| 目标平台 | Windows (x86) |
| 感染链位置 | USB传播 → 剪贴板劫持 → C2通信 |
该样本为蠕虫型恶意软件,具备USB传播、UPnP NAT穿透、加密货币剪贴板劫持和C2通信能力。