alisterrodrigues/zeus-banking-trojan-analysis

GitHub: alisterrodrigues/zeus-banking-trojan-analysis

一份针对 2013 年 Zeus 银行木马变种的详尽逆向分析报告,涵盖了从静态反汇编、动态行为监控到网络通信追踪的完整技术解析及检测规则。

Stars: 0 | Forks: 0

# Zeus 银行木马 (2013) — 静态、动态及网络分析

## 概述 本仓库记录了对 2013 年 Zeus 银行木马变体的完整技术分析——这是历史上最具影响力的金融恶意软件之一,也是 TrickBot、Dridex 和 QakBot 的直接祖先。 分析分为三个阶段:使用 PE 分析工具和反汇编器对二进制文件进行静态检查,在受控的 Windows 10 环境中进行动态执行监控,以及通过数据包捕获和 DNS 模拟进行网络流量分析。目标是基于每一步的证据,描述该样本的行为、其逃避检测的方式以及留下的指标。 **样本:** `invoice_2318362983713_823931342io.pdf.exe` **来源:** [theZoo 恶意软件仓库](https://github.com/ytisf/theZoo/tree/master/malware/Binaries/ZeusBankingVersion_26Nov2013) (密码: `infected`) **编译时间戳:** 2013-11-25 10:32:03 UTC **分析日期:** 2025 年 12 月 ## 样本标识 | 属性 | 值 | |---|---| | **文件名** | `invoice_2318362983713_823931342io.pdf.exe` | | **文件类型** | PE32 executable (GUI), Intel 80386, Windows | | **大小** | 252,928 字节 (~247 KB) | | **MD5** | `ea039a854d20d7734c5add48f1a51c34` | | **SHA1** | `9615dca4c0e46b8a39de5428af7db060399230b2` | | **SHA256** | `69e966e730557fde8fd84317cdef1ece00a8bb3470c0b58f3231e170168af169` | | **编译器** | MSVC 16.0 (Visual Studio 2010) | | **熵值** | 6.982 (未加壳 — 确认无壳程序) | | **签名状态** | 未签名 — 无有效的代码签名证书 | | **PE 节区** | 6 (.text, .data, .rsrc + 其他) | **初始攻击向量:** 双扩展名伪装——文件名在 `.exe` 之前嵌入了 `.pdf`。在启用了“隐藏已知文件扩展名”(默认设置)的 Windows 系统上,此文件会显示为 PDF 文档。 ## 方法论 分析分为四个阶段构建: **阶段 1 — 标识:** 文件属性、MAC 时间戳、加密哈希、加壳/编译器检测、PE 签名状态、跨威胁情报平台的 OSINT 关联。 **阶段 2 — 能力评估:** 使用 MAEC 框架进行能力表征,并与 MITRE ATT&CK 技术交叉参考。基于静态导入分析和 OSINT 行为沙箱数据得出结论。 **阶段 3 — 静态分析:** 双层方法——自动化工具(FLOSS 字符串提取、CAPA 行为检测、PE 结构分析),随后在 IDA Pro 中进行手动反汇编,并在 IDA 遇到识别限制时使用 Cutter 进行交叉验证。 **阶段 4 — 动态分析:** 在隔离的 Windows 10 虚拟机中进行受控执行。使用 Procmon 和 Procdot 进行文件/注册表/进程监控,使用 Wireshark 和 FakeNet-NG 进行网络流量捕获,使用 Regshot 进行注册表差异对比。无实时网络连接。 ## 核心发现 ### 社会工程学与初始执行 该恶意软件会伪造一个 UAC 提权提示,显示为带有伪造的已验证发布者字段(“Adobe Systems Incorporated”)的“Adobe Flash Player”。提权后,它会显示一个虚假的安装程序错误对话框——这是一个掩护,同时有效载荷在后台静默执行。当使用显式管理员权限运行时,Windows 会显示实际的文件名和“未知”发布者,从而确认这种欺骗仅适用于标准的 UAC 行为。 ### 文件系统操作 执行后,原始二进制文件立即自我删除,且不会在回收站中留下记录。一个 87.1 KB 的副本被释放到 `%LOCALAPPDATA%\Temp\InstallFlashPlayer.exe`,启用了隐藏属性并伪造了 Adobe 版本信息。创建时间戳和修改时间戳之间存在 18 分钟的间隔,表明在初始释放后进行了额外的写入——可能是配置或状态数据。 ### 注册表行为 该恶意软件修改了四个 Internet Explorer ZoneMap 注册表键(`ProxyBypass`、`IntranetName`、`UNCAsIntranet`、`AutoDetect`),位于 `HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap` 下,降低了浏览器安全态势以促进未来的凭证拦截。观察到了大量的系统侦察活动——数千次针对加密存储、Winsock 参数、会话管理器配置和调试器设置的 `RegQueryValue` 和 `RegOpenKey` 操作。 ### 网络活动 - 通过 Google 公共解析器 (8.8.8.8:53) 向 `j.maxmind.com` 发起 DNS 查询——确认对受感染主机的地理定位指纹识别 - HTTP GET 请求至 `j.maxmind.com/app/geoip.js`——主动获取地理定位数据 - HTTP GET 请求至 `fpdownload.macromedia.com`,带有 `User-Agent: Flash Player Seed/3.0`——释放的二进制文件借以维持 Adobe 安装程序的掩护故事 - 发往 `85.114.128.127:53` 的畸形 DNS 流量——可能是混淆的 C2 探测或沙箱检测行为 - 无向 `corect.com`(静态分析中硬编码的 C2 域名)的 DNS 查询——原始 C2 基础设施已失效 ### 静态分析 FLOSS 从二进制文件中提取了 826 个字符串。识别出一种一致的模式,即在合法的 Windows API 名称之前紧随随机字符序列——这是一种代码级混淆技术,其中每个导入的函数都被别名为一个无意义的存根名称(`RamilmiaputtHastJobs` → `KERNEL32.FindNextFileW`,`Vavsrubepodsjadebrooli` → `USER32.GetMonitorInfoW`)。这使手动分析和签名生成变得复杂。 IDA Pro 在 `.text` 节区中识别出 57 个函数。一项关键发现:函数边界通过不规则的序言、与功能代码交织的大量算术块以及通过全局函数指针进行的间接 API 调用被故意破坏。Cutter 识别出了 IDA 折叠为 `loc_` 块的额外函数边界——这种差异证实了这是蓄意的反分析混淆,而非异常的编译。 CAPA 确认了虚拟机检测能力(反 VMware 字符串引用,T1497.001)以及在两个偏移量(0x4094B1 和 0x40A3B6)处用于动态 API 解析的 PE 导出解析。 嵌入的域名 `corect.com` 通过 Wayback Machine 进行了调查——大约在 2013 年,它托管着一个罗马尼亚新闻网站,这与被入侵的合法网站或故意选择的看似无害的基础设施相一致。目前重定向到一个不相关的赌场域名。 ### 为什么高级行为未激活 未观察到持久化安装、浏览器注入和凭证窃取。这在预料之中:Zeus 变体旨在将这些行为限制在成功进行 C2 通信之后。如果没有活动的 C2 服务器来传递配置,样本会在完成侦察和环境分析后停止,永远无法接收激活其主载荷的触发指令。这与该恶意软件已知的架构一致——这些行为的缺失反映了基础设施的年代久远,而非能力的缺失。 ## 能力评估 (MITRE ATT&CK) | 能力 | MITRE 技术 | 证据 | |---|---|---| | 键盘记录与输入捕获 | T1056 | `GetAsyncKeyState`, `VkKeyScanA` 导入;OSINT | | 剪贴板监控 | T1115 | `EnumClipboardFormats`, `GetClipboardData` 导入 | | 文件操作与凭证记录 | T1005, T1074 | `WriteFile`, `FindNextFileA`, 文件系统 API | | 进程注入 (共享内存) | T1055 | `CreateFileMappingA`, `VirtualQueryEx` 导入 | | 虚拟机/沙箱逃逸 | T1497, T1497.001 | CAPA 检测;反 VMware 字符串 | | 代码混淆 | T1027 | 存根名称混淆;不透明算术块 | | 注册表持久化 | T1547.001 | OSINT: HKCU Run 键修改 | | 网络 C2 通信 | T1071 | OSINT HTTP/DNS 数据;动态 API 解析 | | 系统侦察 | T1082, T1083 | 环境变量查询;驱动器枚举 | | 地理定位指纹识别 | T1016 | 观察到 `j.maxmind.com` DNS/HTTP 请求 | | 社会工程学 / UAC 绕过 | T1548.002 | 伪造的 Adobe Flash 安装程序;虚假 UAC 提示 | ## 失陷指标 ### 文件指标 **主样本:** ``` Filename : invoice_2318362983713_823931342io.pdf.exe MD5 : ea039a854d20d7734c5add48f1a51c34 SHA1 : 9615dca4c0e46b8a39de5428af7db060399230b2 SHA256 : 69e966e730557fde8fd84317cdef1ece00a8bb3470c0b58f3231e170168af169 Size : 252,928 bytes Type : PE32 executable (GUI), Intel 80386 Compiled : 2013-11-25 10:32:03 UTC ``` **释放文件:** ``` Filename : InstallFlashPlayer.exe Path : C:\Users\\AppData\Local\Temp\InstallFlashPlayer.exe Size : 89,248 bytes (87.1 KB) Attributes: Hidden Version : Adobe® Flash® Player Installer/Uninstaller 11.0 r1 OrigName : FlashUtil.exe ``` ### 网络指标 ``` Domains: corect.com — embedded C2 domain (static); no DNS observed during analysis j.maxmind.com — geolocation fingerprinting (observed) fpdownload.macromedia.com — Flash update host contacted by dropped binary (observed) HTTP Requests (observed): GET /app/geoip.js HTTP/1.0 Host: j.maxmind.com GET /get/flashplayer/update/current/install/install_all_win_cab_64_ax_sgn.z Host: fpdownload.macromedia.com User-Agent: Flash Player Seed/3.0 ``` ### 注册表指标 (已观察到) ``` HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\ProxyBypass HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\IntranetName HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\UNCAsIntranet HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\AutoDetect ``` ### 进程指标 ``` Process name : InstallFlashPlayer.exe Working set : ~3.5 MB Children : cmd.exe + conhost.exe Thread behavior: Includes a dedicated "KILL OWN PROCESS" worker thread UAC display : "Adobe® Flash® Player Installer..." (standard privileges) "invoice_2318362983713_823931342io.pdf.exe" (admin privileges) ``` ## YARA 检测规则 ``` rule Zeus_BankingTrojan_26Nov2013_Sample { meta: description = "Detects Zeus Banking Trojan sample from November 2013" author = "Alister A. Rodrigues" date = "2025-12-08" reference = "MD5: ea039a854d20d7734c5add48f1a51c34" severity = "high" malware_family = "Zeus" strings: $domain = "corect.com" ascii wide $geo = "j.maxmind.com" ascii wide $fake_desc = "Adobe Flash Player Installer" ascii wide $fake_copyright = "1996-2011 Adobe, Inc." ascii wide $original_name = "FlashUtil.exe" ascii wide $api1 = "GetAsyncKeyState" ascii $api2 = "CreateFileMappingA" ascii $api3 = "GetClipboardData" ascii $api4 = "VirtualQueryEx" ascii condition: uint16(0) == 0x5A4D and filesize < 500KB and ( ($domain and $geo) or ($fake_desc and $fake_copyright and $original_name) or (3 of ($api*)) ) } ``` ## 工具链 | 工具 | 用途 | |---|---| | **PEiD** | 加壳/编译器签名检测 | | **Detect It Easy (DIE)** | 编译器识别,熵值分析 | | **PE-bear** | PE 头检查,导入表,字符串分析 | | **Pestudio** | 导入分析,每节熵值,可疑指标标记 | | **FLOSS** | 字符串提取(明文 + 混淆) | | **CAPA** | 自动化行为能力检测 | | **IDA Pro** | 主要反汇编和反编译 | | **Cutter** | 交叉验证反汇编(辅助) | | **Sysinternals sigcheck** | 代码签名证书验证 | | **Windows certutil** | SHA-256 / SHA-1 / MD5 哈希计算 | | **Process Monitor (Procmon)** | 文件、注册表和进程事件监控 | | **Procdot** | 进程活动可视化和图形分析 | | **Wireshark** | 数据包捕获和流量分析 | | **FakeNet-NG** | 网络仿真和 DNS/HTTP 拦截 | | **Regshot** | 注册表快照差异比较 | | **VirusTotal** | OSINT 哈希关联,沙箱行为数据 | | **Wayback Machine** | 历史域名调查 (corect.com) | ## 为什么这个样本依然重要 Zeus 本身已经失效。它的 C2 基础设施已经停止运行多年,此处分析的特定 2013 变体无法向任何活动的服务器窃取凭证。但它所开创的技术并没有失效——它们是整个现代银行木马生态系统的蓝图。 本分析中记录的每一个行为在当前的威胁中都有直接的后继者: - **双扩展名社会工程学** (`invoice.pdf.exe`) 仍然是 2025 年大众恶意软件的主要投递载体 - **共享内存进程注入**技术 (`CreateFileMappingA` + `VirtualQueryEx`) 出现在 TrickBot 的浏览器挂钩模块中 - 通过 MaxMind 进行的**地理定位指纹识别**被 QakBot 原封不动地用于受害者分析 - 用于降低浏览器安全态势的 **IE ZoneMap 修改**在 Dridex 中得到了重现 - **存根名称混淆**模式——将 API 导入别名为随机字符串——是当今几乎所有主要恶意软件家族所使用的现代字符串加密技术的直接先驱 理解 Zeus 是理解其后继者的前提。此处的分析旨在为该谱系提供一份完整的参考。 ## 完整报告 涵盖了完整的静态分析发现(PE 结构、反汇编、混淆模式)、动态执行监控、网络流量分析、完整 IOC 表、YARA 规则和防御建议。 *分析由 Alister A. Rodrigues 完成。所有分析均在隔离的虚拟机环境中进行,无生产网络连接。本仓库中不存储恶意软件样本。*
标签:ATT&CK框架, DAST, DNS信息、DNS暴力破解, DNS 反向解析, DNS 解析, HTTP工具, IDA Pro, IP 地址批量处理, PE文件分析, Wayback Machine, Windows恶意软件, YARA规则, Zeus木马, 云安全监控, 云资产清单, 入侵指标, 反汇编, 威胁情报, 开发者工具, 恶意软件分析, 搜索语句(dork), 样本分析, 网络安全, 网络安全审计, 网络流量分析, 逆向工程, 金融安全, 银行木马, 隐私保护, 静态分析