moise-dev/malware_playbook
GitHub: moise-dev/malware_playbook
一款集成 floss、capa、VirusTotal 等多种工具的 Python 脚本,可对恶意软件样本进行自动化静态分析并汇总保存结果。
Stars: 0 | Forks: 0
# 恶意软件样本分析脚本
一个使用多种工具快速启动恶意软件样本静态分析的 Python 脚本。
## 目录
- [概述](#overview)
- [要求](#requirements)
- [安装](#installation)
- [用法](#usage)
- [输出](#output)
## 概述
该脚本在不执行文件的情况下,对文件运行不同的工具和步骤。每个工具和过程会在终端中输出一些信息,但所有内容都会保存在本地机器上的一个以所检查样本命名的目录中。
针对样本执行的工具如下:
- `floss`,最小字符串长度分别为 4、8、10 和 12。每次执行的结果保存在单独的文件中。
- `capa`,除非您已下载规则,否则规则位于仓库/Docker 容器中。脚本预期它们位于项目根目录下的 `capa_rules` 文件夹中。
- 直接从 PE 头提取编译时间、哈希值和导入/导出表等信息。它使用 https://malapi.io/ 来丰富信息。内容保存在数据库中,并在每次构建 Docker 文件时更新。
- 如果未找到报告,则对样本执行 VirusTotal 扫描。将扫描报告的部分信息保存在输出目录中。
它使用 `argparse` 处理命令行参数,以指定恶意软件样本的路径和输出目录。
## 要求
请参阅 `build/docker/Dockerfile` 以查看系统所需的组件。要求非常低,只需要版本大于 11 的 C++ 编译器用于 `floss`,以及一个 VirusTotal API token(免费版)。
## 本地安装
运行以下命令或等效的 `pip` 命令。
```
git clone https://github.com/pygaiwan/malware_playbook.git
uv sync
```
## 用法
以下是运行脚本的几种方式。`-s/--sample` 标志指向您的恶意软件文件,`-o/--output` 指定分析结果的保存位置。
```
uv run python src/playbook.py -s /path/to/malware_sample
```
指定自定义输出目录:
```
uv run python src/playbook.py -s /path/to/malware_sample -o /path/to/output_directory
```
### 参数
- **-s, --sample**: (必选) 恶意软件样本的绝对路径。
- **-o, --output**: (可选) 分析结果的输出目录。默认为仓库中的 `outputs` 目录。
- **-x, --extract**: (可选) 如果样本是使用密码 `infected` 压缩的,它将解压、扫描然后将其移除。
## Docker 用法
从仓库根目录构建镜像,以便 Docker 可以看到 `pyproject.toml`、`uv.lock` 和源代码树:
```
docker build --no-cache -f build/docker/Dockerfile .
```
从 Github 拉取镜像:
```
docker pull ghcr.io/moise-dev/malware-playbook:latest
```
然后运行它:
```
docker run --rm -it \
--user $(id -u):$(id -g) \
-e USER=$(id -un) \
-e LOGNAME=$(id -un) \
-e HOME=/app \
-e XDG_CACHE_HOME=/tmp/.cache \
-e VIRUSTOTAL_API_KEY=${VIRUSTOTAL_API_KEY} \
-v "$(pwd)/samples":/app/samples:Z \
-v "$(pwd)/outputs":/app/outputs:Z \
ghcr.io/moise-dev/malware-playbook:latest -s samples/Ransomware.wannacry.exe -o outputs
```
您可能不需要上述的某些参数,请根据需要更改运行命令。
标签:Ask搜索, capa, DAST, Docker, floss, PE文件分析, Python, SOC工具, URL发现, VirusTotal, 云安全监控, 云资产清单, 威胁情报, 安全检测, 安全脚本, 安全运营, 安全防御评估, 开发者工具, 恶意样本, 恶意软件分析, 扫描框架, 无后门, 样本分析, 漏洞发现, 网络安全, 请求拦截, 逆向工具, 逆向工程, 隐私保护, 静态分析