Jpouncil23/Malware-Analysis-Lab-
GitHub: Jpouncil23/Malware-Analysis-Lab-
一份针对 Zeus 银行木马的恶意软件分析实战项目,演示了从静态逆向、动态引爆到编写 Yara 检测规则的完整流程。
Stars: 0 | Forks: 0
# 恶意软件分析实验室 — Zeus Banking Trojan
[](https://github.com)
[](https://github.com)
[](https://github.com)
## 目标
本次实验室的目标是通过剖析一个真实样本 —— Zeus Banking Trojan,来提升我在恶意软件分析方面的技能。我完成了从指纹识别到引爆的完整分析过程,涵盖了静态分析、动态分析以及编写检测规则。
## 完整报告
**[Zeus Banking Trojan 分析报告](docs/Zeus_Banking_Trojan_Analysis.md)**
## 使用的工具
| 工具 | 用途 |
|------|---------|
| **Oracle VirtualBox** | 虚拟化平台 |
| **FlareVM** | 基于 Windows 的恶意软件分析虚拟机 |
| **REMnux** | 基于 Linux 的恶意软件分析虚拟机 |
| **VirusTotal** | 在线恶意软件扫描和威胁情报 |
| **PEStudio** | 静态分析 — PE 文件检查和哈希收集 |
| **FLOSS** | 字符串去混淆和提取 |
| **Capa** | 能力检测 — 识别恶意软件的功能 |
| **Cutter** | 逆向工程和反汇编 |
| **INetSim** | 用于安全动态分析的模拟互联网服务 |
| **Wireshark** | 网络流量捕获和分析 |
| **Process Monitor (Procmon)** | 实时进程和文件系统监控 |
| **Yara** | 编写自定义检测规则 |
## 掌握的技能
- 恶意软件样本指纹识别
- 基础和高级静态分析
- 在沙盒环境中进行基础动态分析
- 使用反汇编工具进行逆向工程技术
- 编写 Yara 检测规则
- 安全的恶意软件引爆和行为观察
## 分析演练
### 步骤 1 — 下载样本
我在 FlareVM 中通过下载 Zeus Banking Trojan 样本开始我的分析。

### 步骤 2 — 隔离环境
我将网络适配器从桥接模式切换到仅主机模式,以切断机器的互联网访问。这可以在分析过程中将恶意软件隔离。

### 步骤 3 — 提取恶意软件
我通过 7zip 解压文件,打开压缩包,并将可执行文件移动到桌面,以便准备分析。

### 步骤 4 — VirusTotal 扫描
我暂时切换回桥接适配器,并将文件上传到 VirusTotal 进行全面扫描。确保之后切换回仅主机模式。

### 步骤 5 — 使用 PEStudio 进行静态分析
在 PEStudio 中,我收集恶意软件的哈希信息。

在 PEStudio 中向下滚动,我发现了一些有趣的指标,可以添加到我的报告中。

### 步骤 6 — 使用 FLOSS 进行字符串分析
在命令行中使用 FLOSS,我对可执行文件进行去混淆以提取隐藏的字符串。

我还运行了一个命令来输出 6 个字符以上的字符串,以过滤掉噪音。

### 步骤 7 — 使用 Capa 进行能力分析
我对恶意软件运行 Capa 以识别其具备哪些能力。

运行 `capa -v` 以获取恶意软件能力的更详细分解。

### 步骤 8 — 使用 Cutter 进行逆向工程
使用 Cutter,我在更深层面上对可执行文件进行反汇编和分析。

### 步骤 9 — 动态分析设置
完成静态分析后,我在 FlareVM 上打开 Procmon,并在 REMnux VM 上启动 INetSim 以模拟互联网服务。这让我能够安全地观察恶意软件的网络行为,而不会让它连接到真实的互联网。


在引爆样本之前,我确认 INetSim 工作正常。

### 步骤 10 — 引爆
现在我准备好引爆可执行文件了。你可以看到运行后,可执行文件将自己从桌面上删除了 —— 这是一种常见的规避技术。

### 步骤 11 — 进程监控
我通过 Procmon 进行筛选,以追踪恶意软件在系统上的行为 —— 文件更改、注册表修改和进程活动。

### 步骤 12 — 网络分析
完成 Procmon 后,我打开 Wireshark 并在以太网适配器上捕获网络数据包,以查看恶意软件试图与何处通信。

### 步骤 13 — 编写 Yara 规则
为了结束我的分析,我根据整个分析过程中发现的指标编写了一条自定义 Yara 规则来检测此恶意软件。

我在命令行中运行我的 Yara 规则,以确认它成功检测到该样本。

## 作者
**Justin**
IT 从业者
*最后更新:2024 年 5 月*
标签:DAST, DNS信息、DNS暴力破解, DNS 反向解析, DNS 解析, EDR, FlareVM, HTTP工具, IP 地址批量处理, PE文件分析, REMnux, YARA规则, Zeus木马, 云安全监控, 云资产清单, 威胁情报, 开发者工具, 恶意软件分析, 情报收集, 数据包嗅探, 无线安全, 样本检测, 沙箱技术, 漏洞研究, 网络信息收集, 网络安全实验, 网络安全审计, 脆弱性评估, 逆向工程, 金融安全, 银行木马, 静态分析