Ofendor/malware-analysis-lab
GitHub: Ofendor/malware-analysis-lab
一个系统化的恶意软件分析学习实验室,在隔离的 VirtualBox 环境中按步骤记录从环境搭建到样本静态与动态分析的完整工作流。
Stars: 0 | Forks: 0
# 恶意软件分析实验室




**作者:** Emilio Mardones ([@Ofendor](https://github.com/Ofendor)) — 网络工程专业毕业生及网络安全从业者,新西兰奥克兰。
在这个系列实验室中,我的目标是通过记录真实、可重复的恶意软件分析工作流的每一个步骤——从构建隔离环境到获取、指纹识别以及分析活体样本——来培养在**威胁情报、事件响应和逆向工程**方面的实践能力。
## 实验室索引
| # | 实验室 | 类别 | 工具 | 状态 |
| --- | ------------------------------------------------------------------------------------------------------- | --------------- | ---------------------------------------------- | ------ |
| 01a | [实验室设置与安全分析环境](lab-01-setup/lab-01-setup-notes.md) | 设置 | VirtualBox, Windows LTSC, REMnux | ✅ |
| 01b | [FLARE-VM 故障排除日志](lab-01-setup/lab-02-troubleshooting-log.md) | 故障排除 | Chocolatey, Python, DISM | ✅ |
| 02a | [样本获取](lab-02-basic-static-analysis/01-lab-02-sample-acquisition.md) | 获取 | 7-Zip, unrar, Linux | ✅ |
| 02b | [哈希验证与威胁情报](lab-02-basic-static-analysis/02-lab-02-hash-verification.md) | 静态 | PEview, strings, VirusTotal | ✅ |
| 02c | [SIEM 集成与 NAT 模拟](lab-02-basic-static-analysis/03-lab-02-siem-integration-and-NAT-simulation.md) | 基础设施 | Wazuh SIEM, INetSim, DNSChef | ✅ |
| 03 | 静态分析 — 字符串提取 | 静态 | strings, FLOSS | 🔄 |
| 04 | 行为分析 | 动态 | Process Monitor, Wireshark, x64dbg | 🔄 |
## 环境
该实验室在单个 Windows 主机上的四个隔离虚拟机中运行。静态和动态分析被刻意分开,以防止干净的检查工作与实时恶意软件执行之间发生交叉污染。
| 虚拟机 | 操作系统 | 角色 |
| -------------------- | ------------------------------- | ----------------------------------- |
| Static-Wind10-FLARE | Windows 10 Enterprise LTSC 2021 | 静态分析工作站 |
| Dynamic-Wind10-FLARE | Windows 10 Enterprise LTSC 2021 | 恶意软件引爆目标 |
| Analyst-REMnux | REMnux Linux | 网络网关 + Linux 工具 |
| Support-Kali | Kali Linux | 可选辅助工具 |
Windows 虚拟机通过仅限内部网络(`malware-lab`)连接到 REMnux,没有指向主机或互联网的路由。REMnux 运行 **INetSim** 和 **DNSChef** 来模拟互联网服务,因此样本会认为自己处于在线状态,同时又被完全隔离。**Wazuh** SIEM 在所有分析主机中提供集中式的检测和遥测。
## 仓库结构
```
malware-analysis-lab/
├── README.md
├── lab-01-setup/
│ ├── images/ # screenshots referenced by the notes
│ ├── lab-01-setup-notes.md # 01a — environment design & hardening
│ └── lab-02-troubleshooting-log.md # 01b — FLARE-VM install troubleshooting
└── lab-02-basic-static-analysis/
├── images/
├── linux/ # Wazuh agent install (Linux)
│ └── 1-install-agent.sh
├── windows-scripts/ # Wazuh agent install/config (Windows)
│ ├── 1-install-agent.ps1
│ ├── 2-configure-agent.ps1
│ ├── 3-verify-agent.ps1
│ ├── 4-install-ssh-temporary.ps1
│ └── 5-remove-ssh-temporary.ps1
├── start-lab.sh # REMnux INetSim + DNSChef startup helper
├── 01-lab-02-sample-acquisition.md # 02a
├── 02-lab-02-hash-verification.md # 02b
└── 03-lab-02-siem-integration-and-NAT-simulation.md # 02c
```
## 安全操作与范围
这些实验室出于教育目的,并在严格的隔离状态下进行。核心操作规则如下:
- 在任何情况下,恶意软件都不会接触主机。
- 样本仅从公认的研究仓库获取(Sikorski PMA 实验室文件、MalwareBazaar、VirusShare)。
- 动态虚拟机在每次引爆会话后都会恢复到干净的快照。
- 分析网络是内部专用的——在分析期间没有 NAT,没有主机桥接,也没有外部路由。
- 工作遵循符合 NIST 和 ISO 安全实践以及新西兰法律/合规框架的指导原则。
## 参考文献
- Sikorski, M. & Honig, A. — *Practical Malware Analysis*, No Starch Press
- Cucci, K. — *Evasive Malware: A Field Guide to Detecting, Analyzing, and Defeating Advanced Threats*, 2024
- Kleymenov, A. & Thabet, A. — *Mastering Malware Analysis*, Packt Publishing
- Mandiant FLARE-VM — https://github.com/mandiant/flare-vm
- REMnux — https://docs.remnux.org
- abuse.ch MalwareBazaar — https://bazaar.abuse.ch · VirusTotal — https://www.virustotal.com
⚠️ 本仓库记录了在隔离实验室中对恶意软件的防御性分析。此处不托管任何恶意二进制文件。所有样本均通过哈希引用,不进行分发。
标签:AI合规, DAST, FLARE-VM, 云安全监控, 云资产清单, 威胁情报, 安全实验环境, 库, 应急响应, 开发者工具, 恶意软件分析, 逆向工具, 逆向工程, 静态分析