⬇ Download sample (1320ba4c.zip)

🔴 恶意 — 无壳(MSVC原生) | 签名: 无 | Ad-Fraud Dropper 家族 (DLL投放器+广告欺诈服务)

1320ba4c289d844b5d724fa5af97d129bc8d103c48011952df911ec0d089acee
MD5 22912c42a6594d196de2280e7112aad9  |  大小 N/A  |  来源 N/A  |  分析日期 2026-08-08 07:14
Dropper/DLL投放器 嵌入式PE载荷 Windows服务持久化 广告欺诈(Ad Fraud) AdBlock白名单注入 MSVC 2010编译 x64包装器+x86载荷 网络C2通信
0%
置信度评分
未归因

§1 📋 样本概要信息

SHA256
1320ba4c289d844b5d724fa5af97d129bc8d103c48011952df911ec0d089acee
MD5
22912c42a6594d196de2280e7112aad9
文件大小
N/A
文件类型
PE32+ executable (DLL) (console) x86-64, for MS Windows
目标架构
N/A
位宽
N/A
字节序
N/A
编译器
Microsoft Visual C/C++ 2010 (MSVC 16.00.40219)
链接方式
N/A
加壳/保护
无壳 (MSVC原生)
入口点
0x000011A4 (导出 PlayGame)
编译时间戳
N/A
子系统
Windows Console
数字签名
N/A
📌 概要

该样本是一个两阶段投放器(Dropper),使用 MSVC 2010 编译为 64位 DLL。其核心功能是通过资源段(Resource Section)携带一个5MB的嵌入式PE32可执行载荷,通过导出函数 PlayGame 提取并执行该载荷。

阶段1 - DLL投放器:外层x64 DLL仅导入 kernel32.dll,通过 FindResourceA/LoadResource/LockResource/SizeofResource API提取资源段(ID 101,类型"W")中的PE32载荷。资源数据前4字节为长度头(0x0038D000 = 3,727,872),随后紧跟MZ头。提取后写入临时文件并通过 CreateProcessA 执行。

阶段2 - PE32服务载荷:内嵌PE32可执行文件为 Windows 服务程序(导入ADVAPI32.dll的StartServiceCtrlDispatcher/RegisterServiceCtrlHandler/CreateService等)。具备完整的网络通信能力(WS2_32.dll的socket/connect/send/recv + WININET.dll HTTP操作)和网络侦查能力(iphlpapi.dll的GetAdaptersInfo)。通过GetProcAddress+GetModuleHandle实现动态API解析。

广告欺诈机制:载荷的资源段包含超过5MB的AdBlock Plus白名单规则(@@||允许规则),针对Tribune Publishing旗下40+新闻站点(latimes.com、chicagotribune.com、baltimoresun.com等)允许特定广告网络(rfihub.net、amazon-adsystem.com、criteo.com、betrad.com、doubleverify.com、adsafeprotected.com等)的广告脚本执行。这疑似用于广告欺诈/广告注入操作。

§2 🏷️ 分类标签与威胁情报

分类标签

分类标签置信度
编译器Microsoft Visual C/C++ 2010 (MSVC 16.00.40219)HIGH
壳/保护无壳 (MSVC原生编译)HIGH
数字签名无签名 (timestamp=0)HIGH
恶意类型DLL投放器 (Dropper) + 广告欺诈服务HIGH
外层架构PE64 DLL (x86-64)HIGH
内嵌载荷PE32 EXE (x86) Windows服务HIGH
提取方式FindResourceA → LoadResource → LockResourceHIGH
载荷大小5,242,880 字节 (5MB, 资源ID 101)HIGH
持久化方式Windows Service (CreateService)HIGH
C2协议TCP Socket (WS2_32) + HTTP (WININET)MEDIUM
网络侦查GetAdaptersInfo (iphlpapi)LOW
广告数据5MB AdBlock白名单规则 (40+ Tribune站点)MEDIUM
动态APIGetProcAddress + GetModuleHandleMEDIUM
📌 证据→推理→结论
PlayGame导出→FindResourceA/LoadResource→资源段MZ(偏移+4)→PE32载荷→ADVAPI32服务安装→WS2_32+WININET C2→5MB AdBlock规则→广告欺诈

威胁情报

字段
关联组织未归因 (疑似广告欺诈/广告注入运营团伙)
别名Ad-Fraud Dropper
动机经济利益 (广告欺诈/ad-injection monetization)
目标行业媒体/新闻出版 (Tribune Publishing网络)
活动名称未知
C2协议TCP Socket + HTTP
C2基础设施双层C2 (TCP+HTTP冗余)
🎯 威胁组织判定
未归因。样本针对Tribune Publishing旗下媒体网络进行广告欺诈操作,疑似广告欺诈黑产团伙所为。MSVC 2010编译,使用经典的两阶段投放器架构。

★ §3 🔬 持久化机制

未检出持久化行为。

★ §3b 🌐 C2 架构分析

通联关系图

graph LR subgraph Dropper["阶段1: x64 DLL投放器"] DLL[x64 DLL
PlayGame导出] end subgraph Payload["阶段2: PE32 服务载荷"] SVC[Windows Service
CreateService安装] TCP[TCP Socket C2
WS2_32] HTTP[HTTP C2
WININET] AD[广告欺诈引擎
5MB白名单规则] end subgraph Target["目标"] NEWS[新闻站点
40+ Tribune旗下] end DLL -->|FindResourceA
提取PE32| SVC SVC --> TCP SVC --> HTTP TCP -->|C2通信| C2[远程C2服务器] HTTP -->|C2通信| C2 AD -->|广告注入/欺诈| NEWS
📋 ASCII 文本视图 (点击展开)
(无 ASCII 回退)

🌐 C2 通信深度分析

C2地址未硬编码字符串扫描无IP/域名/URL命中动态获取(可能从C2服务端下发)
🔬 C2 地址分析技术细节:

未在二进制中硬编码C2地址。内嵌5MB白名单规则数据。C2地址可能从外部配置获取或在服务安装时从注册表读取。

通道 1: TCP Socket C2

协议TCP
端口运行时确定
地址/Domain运行时确定(未硬编码)
IP运行时解析
加密未知(可能有应用层加密)
用途C2指令接收与数据回传
API引用WS2_32: socket, connect, send, recv, WSAStartup, inet_addr, htons
证书无TLS(原生TCP)

C2 通信时序

Windows服务自动启动

⚠ C2 基础设施评估

双层C2 (TCP+HTTP)提供通信冗余。5MB的AdBlock白名单数据量大,表明该恶意软件已有完整的广告欺诈基础设施。

📌 ATT&CK 映射: T1071.001(HTTP C2) + T1095(TCP C2) + T1543.003(Windows Service)

§4 🏗️ 结构分析

段/节区布局

<table>
<tr><th>段名</th><th>虚拟地址</th><th>大小</th><th>熵值</th><th>内容</th></tr>
<tr><td>.text</td><td>0x00001000</td><td>31KB</td><td>6.32</td><td>x64 DLL代码</td></tr>
<tr><td>.rdata</td><td>0x00009000</td><td>11KB</td><td>4.70</td><td>导入表</td></tr>
<tr><td>.data</td><td>0x0000C000</td><td>5KB</td><td>1.82</td><td>数据段</td></tr>
<tr><td>.rsrc</td><td>0x00011000</td><td>5MB</td><td>4.19</td><td>★ 嵌入式PE32载荷 + Manifest</td></tr>
<tr><td>.reloc</td><td>0x00512000</td><td>3.5KB</td><td>0.00</td><td>重定位表</td></tr>
</table>

熵值分析

段/节区熵值判定
.text6.32正常 (MSVC代码)
.rsrc4.19嵌入式PE (MZ在偏移+4,低熵白名单文本)
.data1.82正常 (少量数据)
📊 熵值解读
无数据

§5 ⚙️ 反汇编与行为流程

关键函数映射

地址函数功能
N/A

系统调用分析

调用号系统调用用途地址
N/A

行为执行流

§6 🔬 家族溯源

编译元数据

字段来源

家族特征比对

维度本样本MiraiGafgytMoziHajimeLightAidraKekSecTsunamiKaiji匹配
📌 家族归因结论
?

已知变种

变种架构大小编译器特征状态
N/A

§7 🔬 深度行为分析

行为阶段拆解

1. DLL加载

行为: DLL通过rundll32.exe或侧加载方式被加载,操作系统调用其DllMain入口点。

证据: PE64 DLL,入口点0xBB80,导入kernel32.dll基础API

2. 载荷提取

行为: DLL的PlayGame导出函数通过FindResourceA/LoadResource/LockResource从资源段提取5MB嵌入式PE32文件。

证据: 导入: FindResourceA, LoadResource, LockResource, SizeofResource。资源ID 101,类型W,数据前4字节为长度头(0x0038D000),偏移4处为MZ头。

3. 载荷写入

行为: 将提取的PE32载荷写入临时文件(CreateFileA + WriteFile)。

证据: 导入: CreateFileA, WriteFile, MoveFileExA (可能的原子化写入)

4. 载荷执行

行为: 通过CreateProcessA启动提取的PE32服务程序。

证据: 导入: CreateProcessA, GetCommandLineA

5. 服务安装

行为: PE32载荷作为Windows服务安装自身(OpenSCManagerA + CreateServiceA),支持自动启动。通过RegisterServiceCtrlHandlerA处理服务控制信号,SetServiceStatus报告运行状态。

证据: ADVAPI32: StartServiceCtrlDispatcherA, RegisterServiceCtrlHandlerA, CreateServiceA, SetServiceStatus, OpenSCManagerA

6. 网络C2通信

行为: 通过TCP Socket(WinSock)和HTTP(WININET)建立C2通信。

证据: WS2_32: socket, connect, send, recv。WININET: InternetOpenA, InternetOpenUrlA

7. 广告欺诈操作

行为: 加载内嵌的5MB AdBlock白名单规则,针对新闻站点进行广告欺诈(绕过广告拦截器或注入广告)。

证据: 5MB资源段包含@@||白名单规则,目标40+ Tribune站点(latimes.com, chicagotribune.com等),允许rfihub/criteo/doubleverify等广告网络

协议/行为状态机

<div class="mermaid">
stateDiagram-v2
    [*] --> DLL_Load: DLL被加载
    DLL_Load --> PlayGame: 调用PlayGame导出
    PlayGame --> FindResource: FindResourceA(ID=101)
    FindResource --> LoadResource: LoadResource
    LoadResource --> StripHeader: 去除4字节前缀
    StripHeader --> WriteFile: 写入临时文件
    WriteFile --> CreateProcess: CreateProcessA启动
    CreateProcess --> ServiceInstall: PE32安装为Windows服务
    ServiceInstall --> C2Connect: TCP/HTTP C2连接
    C2Connect --> AdFraud: 广告欺诈操作
    AdFraud --> C2Connect: 持续运行
</div>

📌 行为时序总结

DLL加载→载荷提取(秒级)→CreateProcess(秒级)→服务安装(秒级)→立即联网

§8 🔬 恶意性综合判定

多维度证据评估

维度证据权重恶意指数
恶意性综合判定

误报排除论证

?

⚠ 判定结论

高危 — 两阶段Dropper+Windows服务持久化+双层C2通信+广告欺诈操作

§9 🎯 ATT&CK 映射

Execution
Native API
GetProcAddress + GetModuleHandle动态解析API
Persistence
Create or Modify System Process: Windows Service
ADVAPI32: CreateServiceA/StartServiceCtrlDispatcherA安装为Windows服务
Defense Evasion
Obfuscated Files or Information: Embedded Payloads
5MB PE32载荷嵌入x64 DLL资源段
Command and Control
Application Layer Protocol: Web Protocols
WININET: InternetOpenUrlA HTTP C2
Command and Control
Non-Application Layer Protocol
WS2_32: socket/connect/send/recv TCP原生C2
Discovery
System Network Configuration Discovery
iphlpapi: GetAdaptersInfo + GetPerAdapterInfo网络接口枚举

§10 🛡️ 反分析技术评估

反调试

API/技术检测目标绕过难度

反虚拟机

检测方法VMwareVirtualBoxQEMU/KVM

综合评估

技术是否存在证据对抗难度
时间戳清零PE TimeDateStamp=0(Epoch)Easy
出口函数伪装导出名 PlayGame 伪装为游戏功能Easy
嵌入式载荷5MB资源段携带完整PE载荷(MZ头偏移+4)Medium
样本采用基础反分析技术:PE时间戳清零、导出函数伪装命名(PlayGame)、以及将真实载荷嵌入资源段以逃避静态扫描。

★ §10b 🧹 痕迹清理

操作API/命令证据来源

§11 🔧 逆向分析

Ghidra 反编译

反编译函数数小 (~20个函数, 简单投放器)
反编译输出N/A (DLL简单,核心逻辑在嵌入式PE32)
分析时长N/A

调用链分析 (GitNexus)

总函数数总调用关系最大调用深度
~20 (外层DLL) + ~200+ (内嵌PE32)N/AN/A
📂 调用链拓扑 (点击展开)
N/A (简单投放器DLL)

★ §12 🔬 QEMU 动态分析

QEMU 模式跳过 (投放器DLL+服务载荷,sandbox环境意义有限)
网络隔离N/A
执行结果N/A
C2 数据N/A

§13 📦 IOC 汇总

IOC 字符串

偏移字符串类型用途/含义威胁等级
.rsrc段(资源ID 101)5,242,880字节PE32载荷(MZ头在偏移+4)嵌入式载荷第二阶段PE32恶意服务程序HIGH
导出表PlayGame导出函数名载荷提取入口点(伪装名)HIGH
资源段@@||c1.rfihub.net/adChoicesJs/rfacNew.js (5MB白名单规则)AdBlock规则广告欺诈/注入操作数据MEDIUM
导入表CreateServiceA (ADVAPI32)Windows APIWindows服务持久化安装HIGH
导入表FindResourceA / LoadResourceWindows API资源段载荷提取HIGH
导入表socket / connect / send / recv (WS2_32)Windows APITCP网络C2通信HIGH

📌 关键 IOC 解读

主要IOC包括:资源段中嵌入PE文件(MZ头偏移+4)、AdBlock白名单规则中的目标域名列表(latimes.com等)、Windows服务创建行为(CreateServiceA)。

⚠ 高威胁 IOC 汇总

嵌入式载荷: 资源段ID 101 — 5MB PE32 MZ文件(偏移+4) — x64 DLL内嵌PE32恶意服务载荷
Windows API: CreateServiceA + StartServiceCtrlDispatcherA — 安装为Windows服务实现持久化
网络API: WS2_32.dll完整Socket + WININET.dll HTTP — 双层C2通信能力
AdBlock规则: 40+ Tribune新闻站点白名单 — 广告欺诈目标基础设施

网络 IOC

  • 目标域名latimes[.]com
  • 目标域名chicagotribune[.]com
  • 目标域名baltimoresun[.]com
C2地址未硬编码,运行时动态获取。主要检测特征:导出函数名PlayGame、资源段含MZ头(偏移+4)、内嵌AdBlock规则(40+Tribune域名)。

主机 IOC

  • Windows服务CreateServiceA (通过ADVAPI32.dll)
  • DLL导出PlayGame (载荷提取入口)
  • 资源段PE32 MZ载荷 (资源ID 101, 偏移+4)

YARA 检测规则

rule DLL_Dropper_AdFraud_1320ba4c {
    meta:
        description = "x64 DLL Dropper with embedded PE32 Ad-Fraud Service"
        sha256 = "1320ba4c289d844b5d724fa5af97d129bc8d103c48011952df911ec0d089acee"
    strings:
        $s1 = "PlayGame" ascii
        $s2 = "FindResourceA" ascii
        $s3 = "CreateServiceA" ascii
        $s4 = "socket" ascii
        $s5 = "@@||c1.rfihub.net" ascii
        $s6 = "baltimoresun.com" ascii
    condition:
        uint16(0) == 0x5A4D and filesize > 4MB and (3 of them)
}

§14 📋 最终判定

判定结果待判定
恶意类型待分类
恶意家族未归因
威胁级别MEDIUM
置信度0% — 分析不完整
关联组织未归因 (广告欺诈/广告注入恶意软件)
目标平台N/A
感染链位置待确定

⚡ 综合判定

?